Merge pull request #25186 from obsidiansystems/ccwrapper-cse

top-level: common subexpression elimination for cc-wrapper usage
This commit is contained in:
John Ericson 2017-04-24 14:59:01 -04:00 committed by GitHub
commit ee2d787cc3

View File

@ -1636,7 +1636,7 @@ with pkgs;
emscripten = callPackage ../development/compilers/emscripten { }; emscripten = callPackage ../development/compilers/emscripten { };
emscriptenfastcomp-unwrapped = callPackage ../development/compilers/emscripten-fastcomp { }; emscriptenfastcomp-unwrapped = callPackage ../development/compilers/emscripten-fastcomp { };
emscriptenfastcomp-wrapped = wrapCCWith ccWrapperFun stdenv.cc.libc '' emscriptenfastcomp-wrapped = wrapCCWith stdenv.cc.libc ''
# hardening flags break WASM support # hardening flags break WASM support
cat > $out/nix-support/add-hardening.sh cat > $out/nix-support/add-hardening.sh
'' emscriptenfastcomp-unwrapped; '' emscriptenfastcomp-unwrapped;
@ -4889,7 +4889,7 @@ with pkgs;
clangSelf = clangWrapSelf llvmPackagesSelf.clang; clangSelf = clangWrapSelf llvmPackagesSelf.clang;
clangWrapSelf = build: callPackage ../build-support/cc-wrapper { clangWrapSelf = build: ccWrapperFun {
cc = build; cc = build;
isClang = true; isClang = true;
stdenv = clangStdenv; stdenv = clangStdenv;
@ -4958,8 +4958,8 @@ with pkgs;
extraBuildCommands = '' extraBuildCommands = ''
echo "dontMoveLib64=1" >> $out/nix-support/setup-hook echo "dontMoveLib64=1" >> $out/nix-support/setup-hook
''; '';
in wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi extraBuildCommands (cc.cc.override { in wrapCCWith glibc_multi extraBuildCommands (cc.cc.override {
stdenv = overrideCC stdenv (wrapCCWith (callPackage ../build-support/cc-wrapper) glibc_multi "" cc.cc); stdenv = overrideCC stdenv (wrapCCWith glibc_multi "" cc.cc);
profiledCompiler = false; profiledCompiler = false;
enableMultilib = true; enableMultilib = true;
})) }))
@ -5717,7 +5717,7 @@ with pkgs;
wla-dx = callPackage ../development/compilers/wla-dx { }; wla-dx = callPackage ../development/compilers/wla-dx { };
wrapCCWith = ccWrapper: libc: extraBuildCommands: baseCC: ccWrapper { wrapCCWith = libc: extraBuildCommands: baseCC: ccWrapperFun {
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 "";
@ -5730,7 +5730,7 @@ with pkgs;
ccWrapperFun = callPackage ../build-support/cc-wrapper; ccWrapperFun = callPackage ../build-support/cc-wrapper;
wrapCC = wrapCCWith ccWrapperFun stdenv.cc.libc ""; wrapCC = wrapCCWith stdenv.cc.libc "";
# legacy version, used for gnat bootstrapping # legacy version, used for gnat bootstrapping
wrapGCC-old = baseGCC: callPackage ../build-support/gcc-wrapper-old { wrapGCC-old = baseGCC: callPackage ../build-support/gcc-wrapper-old {
nativeTools = stdenv.cc.nativeTools or false; nativeTools = stdenv.cc.nativeTools or false;