summary refs log tree commit diff
path: root/pkgs/build-support/cc-wrapper/setup-hook.sh
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2017-06-26 01:17:09 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2017-07-15 16:01:03 -0400
commit093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98 (patch)
treeec0f2531223e3b14b55cbe04bf2a0fb666048d9b /pkgs/build-support/cc-wrapper/setup-hook.sh
parentaaaa470ff821fc3dd32b4bb240047694ed26ac83 (diff)
downloadnixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar.gz
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar.bz2
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar.lz
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar.xz
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.tar.zst
nixlib-093cc00cdd9d8cf31ecce5bc1dd3645c460a1b98.zip
cc-wrapper: Always export environment variables for binutils
Before, this only happened when cross compiling.
Diffstat (limited to 'pkgs/build-support/cc-wrapper/setup-hook.sh')
-rw-r--r--pkgs/build-support/cc-wrapper/setup-hook.sh27
1 files changed, 21 insertions, 6 deletions
diff --git a/pkgs/build-support/cc-wrapper/setup-hook.sh b/pkgs/build-support/cc-wrapper/setup-hook.sh
index f4f7ab181d3e..2900dc71a417 100644
--- a/pkgs/build-support/cc-wrapper/setup-hook.sh
+++ b/pkgs/build-support/cc-wrapper/setup-hook.sh
@@ -1,5 +1,3 @@
-export NIX_CC=@out@
-
 addCVars () {
     if [ -d $1/include ]; then
         export NIX_CFLAGS_COMPILE+=" ${ccIncludeFlag:--isystem} $1/include"
@@ -39,9 +37,26 @@ if [ -n "@coreutils_bin@" ]; then
 fi
 
 if [ -z "$crossConfig" ]; then
-    export CC=@real_cc@
-    export CXX=@real_cxx@
+  ENV_PREFIX=""
 else
-    export BUILD_CC=@real_cc@
-    export BUILD_CXX=@real_cxx@
+  ENV_PREFIX="BUILD_"
 fi
+
+export NIX_${ENV_PREFIX}CC=@out@
+
+export ${ENV_PREFIX}CC=@named_cc@
+export ${ENV_PREFIX}CXX=@named_cxx@
+
+for CMD in \
+    cpp \
+    ar as nm objcopy ranlib strip strings size ld windres
+do
+    if
+        PATH=$_PATH type -p @binPrefix@$CMD > /dev/null
+    then
+        export ${ENV_PREFIX}$(echo "$CMD" | tr "[:lower:]" "[:upper:]")=@binPrefix@${CMD};
+    fi
+done
+
+# No local scope available for sourced files
+unset ENV_PREFIX