summary refs log tree commit diff
path: root/pkgs/test
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-06-18 15:05:23 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-06-18 15:05:57 -0400
commite3b1937baf008bea6bb60ff3f384a012e7c58531 (patch)
treee702db4e4d73e679f79554e331168108a16b18c3 /pkgs/test
parent42a88a43c969b12a9b2577a0eb8737b71eedf903 (diff)
downloadnixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar.gz
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar.bz2
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar.lz
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar.xz
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.tar.zst
nixpkgs-e3b1937baf008bea6bb60ff3f384a012e7c58531.zip
tests.cc-wrapper: Fix sanitizer condition
fc9644d4c9c9d29958e9bcf1676d48d4b3026bb4 accidentally enabled the
sanitizer tests for GCC on Darwin, when fixing that case was never
attempted. Also inverted the condition from broken to working for
clarity.
Diffstat (limited to 'pkgs/test')
-rw-r--r--pkgs/test/cc-wrapper/default.nix6
1 files changed, 4 insertions, 2 deletions
diff --git a/pkgs/test/cc-wrapper/default.nix b/pkgs/test/cc-wrapper/default.nix
index dd41cd157ca..f9c6e9e7779 100644
--- a/pkgs/test/cc-wrapper/default.nix
+++ b/pkgs/test/cc-wrapper/default.nix
@@ -3,7 +3,9 @@ with stdenv.lib;
 let
   # Sanitizers are not supported on Darwin.
   # Sanitizer headers aren't available in older libc++ stdenvs due to a bug
-  sanitizersBroken = stdenv.cc.isClang && versionOlder (getVersion stdenv.cc.name) "6.0.0";
+  sanitizersWorking =
+       (stdenv.cc.isClang && versionAtLeast (getVersion stdenv.cc.name) "6.0.0")
+    || (stdenv.cc.isGNU && stdenv.isLinux);
 in stdenv.mkDerivation {
   name = "cc-wrapper-test";
 
@@ -43,7 +45,7 @@ in stdenv.mkDerivation {
     NIX_LDFLAGS="-L$NIX_BUILD_TOP/foo/lib -rpath $NIX_BUILD_TOP/foo/lib" $CC -lfoo -o ldflags-check ${./ldflags-main.c}
     ./ldflags-check
 
-    ${optionalString (!sanitizersBroken) ''
+    ${optionalString sanitizersWorking ''
       printf "checking whether sanitizers are fully functional... ">&2
       $CC -o sanitizers -fsanitize=address,undefined ${./sanitizers.c}
       ./sanitizers