Reggae v0.0.5 super alpha: A build system in D
weaselcat via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Fri Apr 3 12:01:33 PDT 2015
On Friday, 3 April 2015 at 17:55:00 UTC, Dicebot wrote:
> On Friday, 3 April 2015 at 17:25:51 UTC, Ben Boeckel wrote:
>> On Fri, Apr 03, 2015 at 17:10:31 +0000, Dicebot via
>> Digitalmars-d-announce wrote:
>>> On Friday, 3 April 2015 at 17:03:35 UTC, Atila Neves wrote:
>>> > . Separate compilation. One file changes, only one file
>>> > gets rebuilt
>>>
>>> This immediately has caught my eye as huge "no" in the
>>> description. We must ban C style separate compilation, there
>>> is simply no way to move forward otherwise. At the very least
>>> not endorse it in any way.
>>
>> Why? Other than the -fversion=... stuff, what is really
>> blocking this? I
>> personally find unity builds to not be worth it, but I don't
>> see
>> anything blocking separate compilation for D if dependencies
>> are set up
>> properly.
>>
>> --Ben
>
> There are 2 big problems with C-style separate compilation:
>
> 1)
>
> Complicates whole-program optimization possibilities. Old
> school object files are simply not good enough to preserve
> information necessary to produce optimized builds and we are
> not in position to create own metadata + linker combo to
> circumvent that. This also applies to attribute inference which
> has become a really important development direction to handle
> growing attribute hell.
Not sure about other people, but I do not care about whole
program optimization during an edit-compile-run cycle. I just
want it to compile as fast as possible, and if I change one or
two files I don't want to have to recompile an entire codebase.
More information about the Digitalmars-d-announce
mailing list