Re Build system requirements [ was Re: Prototype buildsystem "Drake" ]

Jacob Carlborg doob at me.com
Wed Jul 13 11:32:58 PDT 2011


On 2011-07-13 19:18, Russel Winder wrote:
> On Wed, 2011-07-13 at 17:33 +0200, Jacob Carlborg wrote:
>
>> target("main.d"); // builds "main.d" as an executable
>
> The SCons equivalent is:
>
> 	Program ( 'main.d' )
>
>> Or:
>>
>> target("foobar"); // builds the directory "foobar" as a library
>
> SCons (and I think Waf as well) does not support this idea (at least
> currently).  In SCons you have to say:
>
> 	SharedLibrary ( 'libraryRootName' , Glob ( 'foobar/*.d' ) )
> 	StaticLibrary ( 'libraryRootName' , Glob ( 'foobar/*.d' ) )
>
> D support in Waf is currently far more sophisticated than that of SCons,
> but is still based on being a bit more explicit that your proposal
> above.

I think that one of the problem with these language independent build 
tools is that they don't make it as easy as it could, because they 
usually don't know enough about a given language.

DSSS works just the same, you specify a D file or a directory and it 
will compile it as an executable or a library. I don't think that a new 
build tool should do any worse than, for example, DSSS.

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list