On Monday, 10 December 2018 at 22:18:28 UTC, Neia Neutuladh wrote:
On Mon, 10 Dec 2018 21:53:40 +0000, GoaLitiuM wrote:
The results for touching second file seems like an anomaly to me,

The generated ninja file had one rule per source file. If your modules tend to import each other a lot, or if they transitively import the code that's doing expensive stuff, then one rule per source file is bad. If your modules have few transitive dependencies and they're each fast to compile, one rule per source file is good.

In typical D code, it's usually faster to compile per package than either all-at-once or per module. Which is why it's the default in reggae.

My project used Pegged, and a lot of stuff referenced the grammar. That meant incremental builds went long and it would have been better to build the whole project at once.

Separating the grammar into a different build would reduce compile times significantly, and that might make incremental builds fast.

Using Pegged basically requires a dub subpackage with the grammar to retain one's sanity.

From discussions on IRC about reducing compile times, though, using Phobos is a good way to get slow compilation, and I use Phobos. That alone means incremental builds are likely to go long.

Yes. Especially with -unittest.

Reply via email to