diff options
author | Eric Seidel <gridaphobe@gmail.com> | 2015-01-09 11:22:12 -0800 |
---|---|---|
committer | Eric Seidel <gridaphobe@gmail.com> | 2015-01-14 20:26:56 -0800 |
commit | 48f63c2f2e3752df2a0b73cad9b9bba9eda8ac60 (patch) | |
tree | 6081b12a343a31bcc0dcf3f50b3a891f80d12bb1 /pkgs/build-support/cc-wrapper/utils.sh | |
parent | e38c351f2b06f866537a3d584d1f9b95bdf25a0e (diff) |
rename gcc-wrapper to cc-wrapper.
also makes cc-wrapper compatible with clang in the darwin fork.
Diffstat (limited to 'pkgs/build-support/cc-wrapper/utils.sh')
-rw-r--r-- | pkgs/build-support/cc-wrapper/utils.sh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/build-support/cc-wrapper/utils.sh b/pkgs/build-support/cc-wrapper/utils.sh new file mode 100644 index 0000000000000..3ab512d85c4ec --- /dev/null +++ b/pkgs/build-support/cc-wrapper/utils.sh @@ -0,0 +1,24 @@ +skip () { + if [ -n "$NIX_DEBUG" ]; then + echo "skipping impure path $1" >&2 + fi +} + + +# Checks whether a path is impure. E.g., `/lib/foo.so' is impure, but +# `/nix/store/.../lib/foo.so' isn't. +badPath() { + local p=$1 + + # Relative paths are okay (since they're presumably relative to + # the temporary build directory). + if [ "${p:0:1}" != / ]; then return 1; fi + + # Otherwise, the path should refer to the store or some temporary + # directory (including the build directory). + test \ + "$p" != "/dev/null" -a \ + "${p:0:${#NIX_STORE}}" != "$NIX_STORE" -a \ + "${p:0:4}" != "/tmp" -a \ + "${p:0:${#NIX_BUILD_TOP}}" != "$NIX_BUILD_TOP" +} |