Work on evolving the D tool support in SCons has been moved to the SCons core itself, i.e. using a fork of the SCons repository. Currently this is SCons_D_Tooling This SCons_D_Support repository may be kept in sync for possible future use, but currently all bets are off. If you want to use SCons to work with D code please use the above fork of the SCons system.
This package is for work on the develoment of D programming language support in SCons. Initially it was a fork of the DMD tool from the core SCons codebase so as to be able to evolve the tool without having to clone the whole SCons codebase. Now all development happens in this package and is submitted to the SCons core as a release is declared.
D Programming Language Issues
Until 2011-02-18 (1.066, 2.051) the D compiler was a 32-bit application that generated 32-bit code – so on 64-bit platforms special care was needed. As of 2011-02-18 (1.067, 2.052) the D compiler is able to generate 64-bit code on a Linux machine. As of 2011-05-14 (1.068, 2.053) there are 64-bit as well as 32-bit executables, at least for Linux.
Platform Specific Issues
This code has no evolutions for Windows at all (as at 2011-05-14, anyway) and has not been tested on 32-bit Linux, all development is on 64-bit Linux (Debian Testing), with some testing on 32-bit and 64-bit Mac OS X.
Using This Tool Set
A personal scenario… I have found the following set up works for me.
I have a clone of the mainline repository (which is a Mercurial repository) somewhere to act as a mirror and as a place to commit changes to for pushing to the mainline. I then clone this to $HOME/.scons/site_scons/d_support so that it is available for all my projects. If you only want it for a single project then perhaps <project-home>/site_scons/d_support. Remember, of course, to regularly update these clones from the mainline to capture any changes made there. I then create symbolic links to all the modules in $HOME/.scons/site_scons/d_support in $HOME/.scons/site_scons/site_tools/ (or <project-home>/site_scons/site_tools/) so that they are made available to SCons. Clearly this works on Linux, MacOSX, FreeeBSD, etc. I do not know if anything similar is available on Windows.
The Debian Unstable ldc packages are for an ancient version of LDC that only understands Dv1. This repository assumes you are using a version of ldc that is Dv2 compliant as is the case on Fedora 17.