summaryrefslogtreecommitdiff
path: root/pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh')
-rw-r--r--pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh12
1 files changed, 5 insertions, 7 deletions
diff --git a/pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh b/pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh
index 039263e9aaca..6a8c86258284 100644
--- a/pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh
+++ b/pkgs/build-support/cc-wrapper/add-clang-cc-cflags-before.sh
@@ -1,4 +1,4 @@
-needsTarget=true
+targetPassed=false
targetValue=""
declare -i n=0
@@ -14,22 +14,20 @@ while (("$n" < "$nParams")); do
echo "Error: -target requires an argument" >&2
exit 1
fi
- needsTarget=false
+ targetPassed=true
targetValue=$v
# skip parsing the value of -target
n+=1
;;
--target=*)
- needsTarget=false
+ targetPassed=true
targetValue="${p#*=}"
;;
esac
done
-if ! $needsTarget && [[ "$targetValue" != "@defaultTarget@" ]]; then
+if $targetPassed && [[ "$targetValue" != "@defaultTarget@" ]]; then
echo "Warning: supplying the --target $targetValue != @defaultTarget@ argument to a nix-wrapped compiler may not work correctly - cc-wrapper is currently not designed with multi-target compilers in mind. You may want to use an un-wrapped compiler instead." >&2
-fi
-
-if $needsTarget && [[ $0 != *cpp ]]; then
+elif [[ $0 != *cpp ]]; then
extraBefore+=(-target @defaultTarget@ @machineFlags@)
fi