D, SCons, Dub
Alex via Digitalmars-d
digitalmars-d at puremagic.com
Mon Apr 17 13:56:55 PDT 2017
On Monday, 17 April 2017 at 17:51:33 UTC, Russel Winder wrote:
> Just in case anyone gives a ####:
>
> I have submitted a pull request that adds ProgramAllAtOnce
I have been trying to do the opposite with scons - incremental
builds. In c++ the .h and .cpp files allowed the compilation from
many edits to be limited to one translation unit.
One thing people are often confused about is whether everything
needs to be in the header (or di file).
An influence is that most of the code they see written by skilled
language users is libraries like the standard library. These
typically benefit little from interfaces files because everything
is templates and must be in the header to compile. Hence why
boost is mostly headers in c++ land and the D ecosystem
encourages all at once / all everytime compilation.
In a large code base this becomes cumbersome. Changing a unit
test should not result in everything recompiling.
I think there is a difference between library style code and
application code. My application code doesn't have templates and
can make use of di files. It makes sense that the language
developers spend most of their time on library type code, and
have been focused on it.
I just need to work out how to get scons to recognise two targets
from one builder properly : the object file and the di file.
I can add DFLAGs to make a Object builder make the di files too,
and the d scanner finds di files where d files are not available,
but the build tree dependency from d to di file is missing. Dies
anyone know how to do this ?
More information about the Digitalmars-d
mailing list