about summary refs log tree commit diff
path: root/pkgs/development/libraries/gmp/6.x.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/gmp/6.x.nix')
-rw-r--r--pkgs/development/libraries/gmp/6.x.nix9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix
index b7350c19960ac..171611e124986 100644
--- a/pkgs/development/libraries/gmp/6.x.nix
+++ b/pkgs/development/libraries/gmp/6.x.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
 
-with { inherit (stdenv.lib) optional; };
+with { inherit (stdenv.lib) optional optionalString; };
 
 stdenv.mkDerivation rec {
   name = "gmp-6.0.0a";
@@ -26,6 +26,13 @@ stdenv.mkDerivation rec {
     ++ optional stdenv.is64bit "--with-pic"
     ;
 
+  # The config.guess in GMP tries to runtime-detect various
+  # ARM optimization flags via /proc/cpuinfo (and is also
+  # broken on multicore CPUs). Avoid this impurity.
+  preConfigure = optionalString stdenv.isArm ''
+      configureFlagsArray+=("--build=$(./configfsf.guess)")
+    '';
+
   doCheck = true;
 
   dontDisableStatic = withStatic;