forked from mirrors/nixpkgs
GMP 5.0.3: Really fix FreeBSD builds at hydra.nixos.org.
Patch by Eelco Dolstra, backported from `stdenv-updates'. svn path=/nixpkgs/trunk/; revision=33761
This commit is contained in:
parent
fcc5136cfc
commit
054382bbfe
|
@ -56,16 +56,8 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
(if stdenv.isFreeBSD
|
(if stdenv.isFreeBSD
|
||||||
then {
|
then {
|
||||||
# On FreeBSD, GMP's `config.guess' detects the sub-architecture (e.g.,
|
# The FreeBSD boxes at hydra.nixos.org are VMs run in QEMU. This patch
|
||||||
# "k8") and generates code specific to that sub-architecture, in spite of
|
# allows GMP to work correctly in that environment.
|
||||||
# `--enable-fat', leading to illegal instructions and similar errors on
|
patches = [ ./ignore-bad-cpuid.patch ];
|
||||||
# machines with a different sub-architecture.
|
|
||||||
# See <http://hydra.nixos.org/build/2269915/nixlog/1/raw>, for an example.
|
|
||||||
# Thus, use GNU's standard `config.guess' so that it assumes the generic
|
|
||||||
# architecture (e.g., "x86_64").
|
|
||||||
preConfigure =
|
|
||||||
'' rm config.guess && ln -s configfsf.guess config.guess
|
|
||||||
chmod +x configfsf.guess
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
else { }))
|
else { }))
|
||||||
|
|
31
pkgs/development/libraries/gmp/ignore-bad-cpuid.patch
Normal file
31
pkgs/development/libraries/gmp/ignore-bad-cpuid.patch
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
Don't abort when seeing the default CPU model/platform returned by
|
||||||
|
QEMU.
|
||||||
|
|
||||||
|
diff -ru -x '*~' gmp-5.0.4-orig/mpn/x86_64/fat/fat.c gmp-5.0.4/mpn/x86_64/fat/fat.c
|
||||||
|
--- gmp-5.0.4-orig/mpn/x86_64/fat/fat.c 2012-02-10 11:23:05.000000000 +0100
|
||||||
|
+++ gmp-5.0.4/mpn/x86_64/fat/fat.c 2012-04-01 21:38:35.843066724 +0200
|
||||||
|
@@ -194,13 +194,16 @@
|
||||||
|
{
|
||||||
|
switch (family)
|
||||||
|
{
|
||||||
|
+#if 0
|
||||||
|
case 4:
|
||||||
|
case 5:
|
||||||
|
abort (); /* 32-bit processors */
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
case 6:
|
||||||
|
switch (model)
|
||||||
|
{
|
||||||
|
+#if 0
|
||||||
|
case 0x00:
|
||||||
|
case 0x01:
|
||||||
|
case 0x02:
|
||||||
|
@@ -217,6 +220,7 @@
|
||||||
|
case 0x0d: /* Dothan */
|
||||||
|
case 0x0e: /* Yonah */
|
||||||
|
abort (); /* 32-bit processors */
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
case 0x0f: /* Conroe Merom Kentsfield Allendale */
|
||||||
|
case 0x10:
|
Loading…
Reference in a new issue