gmp: Fix build on ARM
The config.guess script tries to detect various ARM optimization flags via /proc/cpuinfo. This is not only impure, but the detection is also broken on multicore machines; on my quad-core system the machine type is autodetected as 'neon neon neon neon-unknown-linux-gnueabihf': checking build system type... Invalid configuration `neon': machine `neon' not recognized configure: error: /nix/store/bafimhdj1yaxj6m1hvq7wvhwwizc939x-bootstrap-tools/bin/sh ./config.sub neon neon neon neon-unknown-linux-gnueabihf failed builder for ‘/nix/store/1npm2358bpvclj5w7fqjjwg72vbb0d79-gmp-6.0.0a.drv’ failed with exit code 1 Override the system type with the output of GNU config.guess to avoid the autodetection.
This commit is contained in:
parent
33e70ad68a
commit
c240556a24
@ -1,6 +1,6 @@
|
|||||||
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
|
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
|
||||||
|
|
||||||
with { inherit (stdenv.lib) optional; };
|
with { inherit (stdenv.lib) optional optionalString; };
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gmp-5.1.3";
|
name = "gmp-5.1.3";
|
||||||
@ -28,6 +28,13 @@ stdenv.mkDerivation rec {
|
|||||||
++ optional stdenv.is64bit "--with-pic"
|
++ 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;
|
doCheck = true;
|
||||||
|
|
||||||
dontDisableStatic = withStatic;
|
dontDisableStatic = withStatic;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
|
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
|
||||||
|
|
||||||
with { inherit (stdenv.lib) optional; };
|
with { inherit (stdenv.lib) optional optionalString; };
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gmp-6.0.0a";
|
name = "gmp-6.0.0a";
|
||||||
@ -26,6 +26,13 @@ stdenv.mkDerivation rec {
|
|||||||
++ optional stdenv.is64bit "--with-pic"
|
++ 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;
|
doCheck = true;
|
||||||
|
|
||||||
dontDisableStatic = withStatic;
|
dontDisableStatic = withStatic;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user