stdenv/linux: Link statically against isl & cloog

Otherwise this fails on ARM:

/nix/store/jipqp9739n7wrjz40igbk85pqk13s0ad-binutils-2.23.1/bin/ld: /nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a(mp_get_fns.o): relocation R_ARM_MOVW_ABS_NC against `__gmp_allocate_func' can not be used when making a shared object; recompile with -fPIC
/nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libisl.la] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1'
make: *** [all] Error 2
builder for ‘/nix/store/a8ghniifd8d8agqx0cqsh41daa08v11c-isl-0.11.1.drv’ failed with exit code 2
This commit is contained in:
Tuomas Tynkkynen 2015-06-11 19:52:19 +03:00 committed by Eelco Dolstra
parent 2e0373ee66
commit 99a7bc241d

View File

@ -202,7 +202,7 @@ rec {
coreutils = bootstrapTools;
name = "bootstrap-gcc-wrapper";
overrides = pkgs: {
overrides = pkgs: rec {
inherit (stage2.pkgs) binutils glibc perl patchelf linuxHeaders;
# Link GCC statically against GMP etc. This makes sense because
# these builds of the libraries are only used by GCC, so it
@ -210,9 +210,15 @@ rec {
gmp = pkgs.gmp.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
mpfr = pkgs.mpfr.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
libmpc = pkgs.libmpc.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
isl = pkgs.isl.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
cloog = pkgs.cloog.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
gccPlain = pkgs.gcc.cc;
isl_0_11 = pkgs.isl_0_11.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; };
cloog_0_18_0 = pkgs.cloog_0_18_0.override {
stdenv = pkgs.makeStaticLibraries pkgs.stdenv;
isl = isl_0_11;
};
gccPlain = pkgs.gcc.cc.override {
isl = isl_0_11;
cloog = cloog_0_18_0;
};
};
extraBuildInputs = [ stage2.pkgs.patchelf stage2.pkgs.paxctl ];
};
@ -287,7 +293,6 @@ rec {
[ gzip bzip2 xz bash binutils coreutils diffutils findutils gawk
glibc gnumake gnused gnutar gnugrep gnupatch patchelf attr acl
paxctl zlib pcre linuxHeaders ed gcc gcc.cc libsigsegv
stage3.pkgs.isl_0_11 stage3.pkgs.cloog_0_18_0
];
overrides = pkgs: {