cons-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Cons-discuss] bug report for building DLLs on WinNT (Re: cons devel


From: Steven Knight
Subject: Re: [Cons-discuss] bug report for building DLLs on WinNT (Re: cons devel 2.1.2 - Released -- Always want more...)
Date: Wed, 20 Sep 2000 12:49:51 -0500 (CDT)

On Wed, 20 Sep 2000, Trent Mick wrote:
> On Fri, Sep 15, 2000 at 06:04:52PM -0700, Zachary Deretsky wrote:
> > 1. Is there a plan to incorporate Greg Spencer work for WindowsNT?
> > 
> > He posted a patch against cons 1.8; I am not brave enough to
> > apply it to 2.1.2
> > 
> > His example does not build with the latest cons because resource methods are
> > missing.
> 
> Where can I find Greg's work? I would like to check it out.

I'll follow up separately with a tar containing Greg's work.  We've
started work on integrating his changes for 2.1.3, but could use help.
Greg created a lot of useful methods for generating things on NT, and
we need to create the right tests and documentation to go with them.
(Tony Kolarik has already volunteered to work on the doc.)

> > 2. Help on building dlls in the FAQ has been also promissed for awhile and
> > just some simple example would be quite useful.
> 
> Probably not a sufficient bug report but just to note. I am currently using 
> the Program method (with Cons 2.0.1) to build .dll's on WinNT. Trying to do
> the same with either Cons 2.0.2 or Cons 2.1.2 does not work. I keep getting
> 'mything.dll.exe' instead of just 'mything.dll'.

Whoops, that should have been culled out in a 2.1.2 RELEASE note, not
just in the CHANGES file.

Are you sure that 2.0.2 does the same thing?  It didn't have that
code added.

Rationale:  Other methods (like Library) have always tacked on the
appropriate suffix if it didn't already exist.  The Program method did
not, which forced everyone to write non-portable Conscript files by
specifying the extension:

        Program $env 'foo.exe', ...

2.1.2 will add the suffix, so you can generate an appropriate executable
on both UNIX and Win32 by specifying:

        Program $env 'foo', ...

The 2.1.2 way to use Program to build something other than an executable
program would be to clone an environment with a different SUFEXE
specified, like this:

        $dll_env = $env->clone(SUFEXE => '.dll');
        Program $dll_env 'foo', ...
        Program $dll_env 'bar.dll', ...

or:

        $null_env = $env->clone(SUFEXE => '');
        Program $null_env 'foo.dll'

Sorry you got bit by this...

        --SK



reply via email to

[Prev in Thread] Current Thread [Next in Thread]