Reproducible builds of D compilers

Thomas Mader via Digitalmars-d digitalmars-d at puremagic.com
Sat May 7 01:53:10 PDT 2016


On Friday, 6 May 2016 at 08:07:30 UTC, Pjotr Prins wrote:
> At Dconf we had a discussion on creating reproducible builds of 
> the D compilers. One thing that is required is bootstrapping 
> the build. In GNU Guix we start from a working C compiler which 
> is a reasonable starting point (it could have been LISP instead 
> ;)
>
> For D this means that even if all components of the compilers 
> are written in D we should have a (chain of) compilation steps 
> that can be initiated from a C or C++ compiler. This is still 
> the case today, but I want to highlight this point here so we 
> do not lose that facility.
>
> GNU Guix can be used as a reproducible reference build system 
> where we capture the bootstrapping process nicely and test the 
> builds on the build farm(s) whenever something changes.

I like the idea.
I thought about that too but would not use GNU Guix for it.
I would suggest to use Nix -> http://nixos.org/
AFAIK GNU Guix uses some parts of Nix and I think the community 
behind it is not as big.
There are also packages for dmd on Nix already.
I also was able to get the ddmd frontent version of dmd running 
on Nix.
Nix would be the perfect system to base all the testing on 
because it's very easy to distribute entire system configurations 
over multiple computers.
So once everything is setup correctly and the knowledge is there, 
it makes administering entire server farms pretty comfortable.


More information about the Digitalmars-d mailing list