summary refs log tree commit diff
diff options
context:
space:
mode:
authorRobert Scott <code@humanleg.org.uk>2020-04-18 23:18:41 +0100
committerAustin Seipp <aseipp@pobox.com>2020-04-25 10:04:06 -0500
commit1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae (patch)
treeb3afad97cfdb7bdaef2b3d7af04d869376841dd1
parent1ca69095145758d51cb9b0f086d5fa7dd3fe65ca (diff)
downloadnixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar.gz
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar.bz2
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar.lz
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar.xz
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.tar.zst
nixpkgs-1985c6b9d5de7c2a19e0f58afcddf6123c2e62ae.zip
afl: fix afl-clang-fast++ by making it a copy of afl-clang-fast, not a symlink
a symlink gets skipped by wrapProgram and this ends up confusing the nix
cc wrapper's cpp mode detection
-rw-r--r--pkgs/tools/security/afl/default.nix5
1 files changed, 5 insertions, 0 deletions
diff --git a/pkgs/tools/security/afl/default.nix b/pkgs/tools/security/afl/default.nix
index def5458a240..e32aa034874 100644
--- a/pkgs/tools/security/afl/default.nix
+++ b/pkgs/tools/security/afl/default.nix
@@ -47,6 +47,11 @@ let
       # has totally different semantics in that case(?) - and also set a
       # proper AFL_CC and AFL_CXX so we don't pick up the wrong one out
       # of $PATH.
+      # first though we need to replace the afl-clang-fast++ symlink with
+      # a real copy to prevent wrapProgram skipping the symlink and confusing
+      # nix's cc wrapper
+      rm $out/bin/afl-clang-fast++
+      cp $out/bin/afl-clang-fast $out/bin/afl-clang-fast++
       for x in $out/bin/afl-clang-fast $out/bin/afl-clang-fast++; do
         wrapProgram $x \
           --prefix AFL_PATH : "$out/lib/afl" \