Perhaps give Jam (http://www.freetype.org/jam/index.html) a try, it's got builds for almost every platform and works well for me. I use this Jamfile for most D projects:

# Requires the Jam (ftjam) build tool (http://www.freetype.org/jam/)
ALL_LOCATE_TARGET = build ;
SubDir TOP ;

# auxiliary rules to support building D code with perforce Jam
rule UserObject {
    switch $(>:S) {
     case .d : Dc $(<) : $(>) ;
     case * :
Exit "Unknown suffix on " $(>) " - see UserObject rule in Jambase." ;
    }
}

rule Dc {
    Depends $(<) : $(>) ;
    DCFLAGS on $(<) += $(DCFLAGS) $(SUBDIRDCFLAGS) ;
}

actions Dc {
    $(DC) -c -of$(<) $(DCFLAGS) $(DOPTIM) $(>)
}

# override the Link action to correct for the dmd compiler -o flag
actions Link bind NEEDLIBS {
    $(LINK) $(LINKFLAGS) -of$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)
}


DC = dmd ;
DCFLAGS = -fPIC -O -inline -release -w -wi -I./src/ ;
LINK = $(DC) ;
DFILES = [ GLOB src : *.d ] ;

MainFromObjects myprogam : $(DFILES:S=.o) ;
Objects $(DFILES) ;


Hope this helps,

Chris


On 09/11/11 17:28, Russel Winder wrote:
Steve,

On Sun, 2011-09-11 at 12:37 +0000, Steve Teale wrote:
Russel,

Thanks for the tips - I shall try SCons.

Steve
SCons 2.1.0 just came out, though I have to admit I use Mercurial tip.

The DMD tool that comes as standard with SCons is not really sufficient
to the task.  I have a friendly fork of this at
https://bitbucket.org/russel/scons_dmd_new.  The idea had been to create
a patch to merge into SCons core just before each release, but I failed
this time :-(

If you find any issues feel free to hassle me and or email the folk on
the SCons user list.

Reply via email to