diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2015-07-20 13:42:30 +0200 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2015-07-20 13:43:52 +0200 |
commit | 615f64dcbe6de193a9c3b0e03591fe623fecaeb1 (patch) | |
tree | 780a35dc17bd82e18e1b94343a39e33dc16d55de | |
parent | 855b3c48ab8d8129cddbcf250d6dfa586dbd16b7 (diff) | |
download | nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar.gz nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar.bz2 nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar.lz nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar.xz nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.tar.zst nixlib-615f64dcbe6de193a9c3b0e03591fe623fecaeb1.zip |
gcc_multi: disable the hook moving lib64 to lib
This was preventing wine from build, and we typically don't want it anyway in multilib builds. /cc #8706.
-rw-r--r-- | pkgs/build-support/cc-wrapper/default.nix | 5 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 14 |
2 files changed, 12 insertions, 7 deletions
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index ec024c72481d..57607ba25b95 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -7,7 +7,7 @@ { name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? "" , cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell -, zlib ? null, extraPackages ? [] +, zlib ? null, extraPackages ? [], extraBuildCommands ? "" , dyld ? null # TODO: should this be a setup-hook on dyld? , isGNU ? false, isClang ? false }: @@ -232,7 +232,8 @@ stdenv.mkDerivation { substituteAll ${./add-flags} $out/nix-support/add-flags.sh cp -p ${./utils.sh} $out/nix-support/utils.sh - ''; + '' + + extraBuildCommands; # The dynamic linker has different names on different Linux platforms. dynamicLinker = diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 32dda557f1d6..ea85bd3547b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3687,8 +3687,12 @@ let gcc_multi = if system == "x86_64-linux" then lowPrio ( - wrapCCWith (import ../build-support/cc-wrapper) glibc_multi (gcc.cc.override { - stdenv = overrideCC stdenv (wrapCCWith (import ../build-support/cc-wrapper) glibc_multi gcc.cc); + let + extraBuildCommands = '' + echo "dontMoveLib64=1" >> $out/nix-support/setup-hook + ''; + in wrapCCWith (import ../build-support/cc-wrapper) glibc_multi extraBuildCommands (gcc.cc.override { + stdenv = overrideCC stdenv (wrapCCWith (import ../build-support/cc-wrapper) glibc_multi "" gcc.cc); profiledCompiler = false; enableMultilib = true; })) @@ -4741,7 +4745,7 @@ let win32hello = callPackage ../development/compilers/visual-c++/test { }; - wrapCCWith = ccWrapper: libc: baseCC: ccWrapper { + wrapCCWith = ccWrapper: libc: extraBuildCommands: baseCC: ccWrapper { nativeTools = stdenv.cc.nativeTools or false; nativeLibc = stdenv.cc.nativeLibc or false; nativePrefix = stdenv.cc.nativePrefix or ""; @@ -4750,10 +4754,10 @@ let dyld = if stdenv.isDarwin then darwin.dyld else null; isGNU = baseCC.isGNU or false; isClang = baseCC.isClang or false; - inherit stdenv binutils coreutils zlib; + inherit stdenv binutils coreutils zlib extraBuildCommands; }; - wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) stdenv.cc.libc; + wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) stdenv.cc.libc ""; # legacy version, used for gnat bootstrapping wrapGCC-old = baseGCC: (makeOverridable (import ../build-support/gcc-wrapper-old)) { nativeTools = stdenv.cc.nativeTools or false; |