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.
This commit is contained in:
parent
855b3c48ab
commit
615f64dcbe
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
|
{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
|
||||||
, cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell
|
, 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?
|
, dyld ? null # TODO: should this be a setup-hook on dyld?
|
||||||
, isGNU ? false, isClang ? false
|
, isGNU ? false, isClang ? false
|
||||||
}:
|
}:
|
||||||
@ -232,7 +232,8 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
substituteAll ${./add-flags} $out/nix-support/add-flags.sh
|
substituteAll ${./add-flags} $out/nix-support/add-flags.sh
|
||||||
cp -p ${./utils.sh} $out/nix-support/utils.sh
|
cp -p ${./utils.sh} $out/nix-support/utils.sh
|
||||||
'';
|
''
|
||||||
|
+ extraBuildCommands;
|
||||||
|
|
||||||
# The dynamic linker has different names on different Linux platforms.
|
# The dynamic linker has different names on different Linux platforms.
|
||||||
dynamicLinker =
|
dynamicLinker =
|
||||||
|
@ -3687,8 +3687,12 @@ let
|
|||||||
|
|
||||||
gcc_multi =
|
gcc_multi =
|
||||||
if system == "x86_64-linux" then lowPrio (
|
if system == "x86_64-linux" then lowPrio (
|
||||||
wrapCCWith (import ../build-support/cc-wrapper) glibc_multi (gcc.cc.override {
|
let
|
||||||
stdenv = overrideCC stdenv (wrapCCWith (import ../build-support/cc-wrapper) glibc_multi gcc.cc);
|
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;
|
profiledCompiler = false;
|
||||||
enableMultilib = true;
|
enableMultilib = true;
|
||||||
}))
|
}))
|
||||||
@ -4741,7 +4745,7 @@ let
|
|||||||
|
|
||||||
win32hello = callPackage ../development/compilers/visual-c++/test { };
|
win32hello = callPackage ../development/compilers/visual-c++/test { };
|
||||||
|
|
||||||
wrapCCWith = ccWrapper: libc: baseCC: ccWrapper {
|
wrapCCWith = ccWrapper: libc: extraBuildCommands: baseCC: ccWrapper {
|
||||||
nativeTools = stdenv.cc.nativeTools or false;
|
nativeTools = stdenv.cc.nativeTools or false;
|
||||||
nativeLibc = stdenv.cc.nativeLibc or false;
|
nativeLibc = stdenv.cc.nativeLibc or false;
|
||||||
nativePrefix = stdenv.cc.nativePrefix or "";
|
nativePrefix = stdenv.cc.nativePrefix or "";
|
||||||
@ -4750,10 +4754,10 @@ let
|
|||||||
dyld = if stdenv.isDarwin then darwin.dyld else null;
|
dyld = if stdenv.isDarwin then darwin.dyld else null;
|
||||||
isGNU = baseCC.isGNU or false;
|
isGNU = baseCC.isGNU or false;
|
||||||
isClang = baseCC.isClang 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
|
# legacy version, used for gnat bootstrapping
|
||||||
wrapGCC-old = baseGCC: (makeOverridable (import ../build-support/gcc-wrapper-old)) {
|
wrapGCC-old = baseGCC: (makeOverridable (import ../build-support/gcc-wrapper-old)) {
|
||||||
nativeTools = stdenv.cc.nativeTools or false;
|
nativeTools = stdenv.cc.nativeTools or false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user