On Tuesday, 30 October 2012 at 09:56:08 UTC, Russel Winder wrote:
Mayhap then what you need to do is look at Parts. This is Jason
Kenny's
superstructure over SCons to deal with huge projects scattered
across
everywhere. This is the build framework Intel uses for their
stuff.
Intel have more and bigger C and C++ projects than I think
anyone else
around
For the record, my projects are not very small but also not very
big (whatever that means), mid size I suppose? I'll have a look
at Parts, but I have a hard case of Bleeding Edge Syndrome, and I
may not survive.
Now this is a whole different issue!
I have no idea. If it is a problem it needs fixing.
The general philosophy in SCons is to have scanners that find
the
dependencies. In C and C++ this is the awful #include. In D
it's import.
The code should create a graph of the dependencies that can be
walked to
create the list of inputs. There is a bit of code in the D
tooling that
is supposed to do this. If it doesn't then we need a bug report
and
preferably a small project exhibiting the problem that can be
entered
into the test suite — SCons development is obsessively TDD.
So far I've had no indication that it's working. Perhaps it is
only working if the import files are not located in subfolders?
Will it account for something like this?
import a.b;
There must be something you did with the D support to give scons
the ability to scan for imports. I know that #include can have
sub-folders, which is common to see, such as
#include <a/b.h>
So scons must be able to include dependencies located in
sub-folders.
I can only do stuff for Linux and OS X, I cannot do anything for
Windows, and Windows is the "big problem" for the SCons D
tooling at the
moment which is why it has not got merged into the SCons
mainline for
release in 2.3.0.
Currently I'm Linux only, but I have in the past built fairly
complicated projects in Windows and I expect to be doing this
again. This is another reason why I considered scons as a build
solution because it is cross-platform.
A plea for help: in order for SCons to have sane support for D,
it needs
people to step up and actively assist evolve the tools either by
providing small test projects exhibiting fails, or running the
tests on
Windows and providing patches for fails.
Once I get things working well enough on Linux, I'll give it a
try. Right now though, I'm bogged down with Linux, I need to make
some breathing space first.
BTW, I use virtualbox as well as KVM extensively to run different
OS's on same machine, so maybe you can try that route to get a
Windows VM running for tests?
--rt