SCons D support

Russel Winder russel at winder.org.uk
Thu May 10 02:13:53 PDT 2012


I have started having a go at a revamp (but may turn out to be a total
rewrite) of the SCons support for D builds. My focus is entirely on
64-bit Linux so unless other folk chip in, support for obscure platforms
like Windows will be minimal ;-)

The dmd tool now works with dmd and gdmd. I have the beginnings of a gdc
tool which works, and I have put in place the beginnings of an ldc tool
but this fails not least because it supports only a very old D version
but also because the packaging for Debian seems to have something wrong:

        ldc -I=. -c -of=helloWorld.o helloWorld.d
        object.d: Error: module object cannot read file 'object.d'

This is the first time I have ever run the ldc command so it may be user
error.

The aim is to refactor all these to create toolchain specific tools and
that to put over the top a d_lang tool which infers a toolchain to use.

Currently the overall process is to use a D compiler to create object
code and then use a linker to link things.  The dmd tool (from 2003 long
before I fiddled with it) seems to just use GCC as linker rather than
using DMD or GDMD. I am still not sure if this is a good or a bad thing,
or whether it is just that the "smart linking" code is broken.

Anyone interested feel free to join in, the focus is at
https://bitbucket.org/russel/scons_d_support

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120510/26f88acb/attachment.pgp>


More information about the Digitalmars-d mailing list