mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 10:23:29 +00:00
5f57c2e0f9
This commit adds a derivation `gcc-stageCompare` to `pkgs/test/stdenv/default.nix`. It is important to always build this derivation whenever building `stdenv`! Because we are using a Nix-driven bootstrap instead of gcc's built-in `--enable-bootstrap`, the `gcc` derivation no longer performs the post-self-compilation sanity check. You must build this derivation in order to perform that sanity check. The major benefit of this new approach is that the sanity check (which involves a third compilation of gcc) can be performed *concurrently* with all packages that depend on `stdenv`, rather than serially. Since `stdenv` has very little derivation-level parallelism it cannot take advantage of more than one or perhaps two builders. If you have three or more builders this commit will reduce the time-to-rebuild-stdenv by around 20% (one of three gcc rebuilds is removed from the critical path, and stdenv's build time is dominated by roughly 3*gcc + 1*binutils + 1*bison-test-suite). Co-authored-by: Sandro <sandro.jaeckel@gmail.com> |
||
---|---|---|
.. | ||
androidndk-pkgs | ||
beam-modules | ||
bower-modules/generic | ||
chez-modules | ||
compilers | ||
coq-modules | ||
dhall-modules | ||
dotnet-modules | ||
em-modules/generic | ||
embedded | ||
gnuradio-modules | ||
guile-modules | ||
haskell-modules | ||
idris-modules | ||
interpreters | ||
java-modules | ||
libraries | ||
lisp-modules | ||
lisp-modules-new | ||
lua-modules | ||
misc | ||
mobile | ||
nim-packages | ||
node-packages | ||
ocaml-modules | ||
octave-modules | ||
perl-modules | ||
pharo | ||
php-packages | ||
python2-modules | ||
python-modules | ||
quickemu | ||
r-modules | ||
rocm-modules/update-script | ||
ruby-modules | ||
scheme-modules/scheme-bytestructures | ||
skaware-packages | ||
tools | ||
web |