stdenv: force gmp to rebuild in stage4 of the bootstrap
As explained in the comment, this ensures that stage4-coreutils does not leak a reference to the bootstrap-files by way of libgmp. This will allow the next patch in this series to build stage4-coreutils using a dynamically-linked (rather than statically-linked) libgmp.
This commit is contained in:
parent
f529aef3dd
commit
7fd749009f
@ -336,7 +336,7 @@ in
|
||||
# because gcc (since JAR support) already depends on zlib, and
|
||||
# then if we already have a zlib we want to use that for the
|
||||
# other purposes (binutils and top-level pkgs) too.
|
||||
inherit (prevStage) gettext gnum4 bison gmp perl texinfo zlib linuxHeaders libidn2 libunistring;
|
||||
inherit (prevStage) gettext gnum4 bison perl texinfo zlib linuxHeaders libidn2 libunistring;
|
||||
${localSystem.libc} = getLibc prevStage;
|
||||
binutils = super.binutils.override {
|
||||
# Don't use stdenv's shell but our own
|
||||
@ -347,6 +347,11 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
# force gmp to rebuild so we have the option of dynamically linking
|
||||
# libgmp without creating a reference path from:
|
||||
# stage5.gcc -> stage4.coreutils -> stage3.glibc -> bootstrap
|
||||
gmp = super.gmp.override { stdenv = self.stdenv; };
|
||||
|
||||
gcc = lib.makeOverridable (import ../../build-support/cc-wrapper) {
|
||||
nativeTools = false;
|
||||
nativeLibc = false;
|
||||
@ -417,7 +422,7 @@ in
|
||||
# Simple executable tools
|
||||
concatMap (p: [ (getBin p) (getLib p) ]) [
|
||||
gzip bzip2 xz bash binutils.bintools coreutils diffutils findutils
|
||||
gawk gnumake gnused gnutar gnugrep gnupatch patchelf ed file
|
||||
gawk gmp gnumake gnused gnutar gnugrep gnupatch patchelf ed file
|
||||
]
|
||||
# Library dependencies
|
||||
++ map getLib (
|
||||
|
Loading…
Reference in New Issue
Block a user