dud: A dub replacement
Atila Neves
atila.neves at gmail.com
Thu Nov 28 13:10:44 UTC 2019
On Monday, 25 November 2019 at 15:27:10 UTC, Robert Schadek wrote:
> On Monday, 25 November 2019 at 13:14:09 UTC, Sebastiaan Koppe
> wrote:
>> The biggest thing for me would be incremental compilation. As
>> well as a dub build and test 'watch' mode to avoid scanning
>> the dependencies every time.
>
> I think there are two levels to incremental compilation (IC).
>
> 1. File level IC. Meaning, if you have one file change, you
> only recompile
> all files that depend on that directly or transitively.
> Finally, you relink.
This is the done already by reggae. Unfortunately, since every D
module is effectively a header, the number of files that need to
be recompiled is usually large, despite the fact that for most
changes the recompilation isn't actually necessary.
> For 1. my goal with dud is to do that. My first target is to
> emit ninja files.
That isn't going to work:
https://issues.dlang.org/show_bug.cgi?id=14188
reggae wraps dmd to act in a way that ninja can use. I'd also
suggest that writing more ninja emitting code when reggae already
does the job might be unnecessary.
The reason I stopped working on my own dub replacement is because
I needed to attach to "a real build system", and since I want to
rewrite reggae from scratch by building on the "Build Systems à
la carte" paper...
More information about the Digitalmars-d-announce
mailing list