summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2005-07-13 08:45:57 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2005-07-13 08:45:57 +0000
commita85877edaf9c9bc0b7721fd353d77629f9dc5867 (patch)
treef2302fffd77849d3d5aa08c4822f51dedcdbaa2c /pkgs/build-support
parentf0d6ad60712a7d671981ab562fba6f36f221fd56 (diff)
downloadnixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar.gz
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar.bz2
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar.lz
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar.xz
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.tar.zst
nixpkgs-a85877edaf9c9bc0b7721fd353d77629f9dc5867.zip
* r3317 was wrong: grep should be applied to gcc's stderr, not stdout.
svn path=/nixpkgs/trunk/; revision=3329
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/gcc-wrapper/gcc-wrapper.sh11
1 files changed, 6 insertions, 5 deletions
diff --git a/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh b/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh
index 0e5b90bb877..4db12afb5ce 100644
--- a/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh
+++ b/pkgs/build-support/gcc-wrapper/gcc-wrapper.sh
@@ -113,8 +113,9 @@ if test -n "$NIX_GCC_WRAPPER_EXEC_HOOK"; then
 fi
 
 
-# Call the real `gcc'.  Filter out warnings about unused `-B' flags,
-# since they confuse some programs.
-@gccProg@ ${extraBefore[@]} "${params[@]}" ${extraAfter[@]} \
-    | (grep -v 'file path prefix' || true)
-exit ${PIPESTATUS[0]}
+# Call the real `gcc'.  Filter out warnings from stderr about unused
+# `-B' flags, since they confuse some programs.  Deep bash magic to
+# apply grep to stderr (by swapping stdin/stderr twice).
+(@gccProg@ ${extraBefore[@]} "${params[@]}" ${extraAfter[@]} 3>&2 2>&1 1>&3- \
+    | (grep -v 'file path prefix' || true); exit ${PIPESTATUS[0]}) 3>&2 2>&1 1>&3-
+exit $?