summary refs log tree commit diff
path: root/pkgs/stdenv/generic
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2018-11-10 11:08:54 +0100
committerFrederik Rietdijk <fridh@fridh.nl>2018-11-10 11:08:54 +0100
commit53d00c335194e01f536b4a9ff024c8b841e9d334 (patch)
tree84f53af51cc1578c01422d8a552779b7d2894689 /pkgs/stdenv/generic
parent322f87137c018813a9f3d6d9fbdfb208c430f154 (diff)
parent40c567de0fb2e72cd9821b4cd84d21debdd33e95 (diff)
downloadnixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar.gz
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar.bz2
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar.lz
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar.xz
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.tar.zst
nixpkgs-53d00c335194e01f536b4a9ff024c8b841e9d334.zip
Merge master into staging-next
Diffstat (limited to 'pkgs/stdenv/generic')
-rw-r--r--pkgs/stdenv/generic/check-meta.nix12
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix4
2 files changed, 13 insertions, 3 deletions
diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix
index 26cd9f8beb9..0e93df85547 100644
--- a/pkgs/stdenv/generic/check-meta.nix
+++ b/pkgs/stdenv/generic/check-meta.nix
@@ -165,6 +165,16 @@ let
     platforms = listOf (either str lib.systems.parsedPlatform.types.system);
     hydraPlatforms = listOf str;
     broken = bool;
+    # TODO: refactor once something like Profpatsch's types-simple will land
+    tests = attrsOf (mkOptionType {
+      name = "test";
+      check = x: isDerivation x &&
+        x ? meta.timeout &&
+        x ? meta.needsVMSupport;
+      merge = lib.options.mergeOneOption;
+    });
+    needsVMSupport = bool;
+    timeout = int;
 
     # Weirder stuff that doesn't appear in the documentation?
     knownVulnerabilities = listOf str;
@@ -184,8 +194,6 @@ let
     isIbusEngine = bool;
     isGutenprint = bool;
     badPlatforms = platforms;
-    # Hydra build timeout
-    timeout = int;
   };
 
   checkMetaAttr = k: v:
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 08a914787c3..a0912366312 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -93,7 +93,9 @@ rec {
                                       ++ depsTargetTarget ++ depsTargetTargetPropagated) == 0;
       runtimeSensativeIfFixedOutput = fixedOutputDrv -> !noNonNativeDeps;
       supportedHardeningFlags = [ "fortify" "stackprotector" "pie" "pic" "strictoverflow" "format" "relro" "bindnow" ];
-      defaultHardeningFlags = lib.remove "pie" supportedHardeningFlags;
+      defaultHardeningFlags = if stdenv.targetPlatform.isMusl
+                              then supportedHardeningFlags
+                              else lib.remove "pie" supportedHardeningFlags;
       enabledHardeningOptions =
         if builtins.elem "all" hardeningDisable
         then []