summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2012-03-13 18:38:10 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2012-03-13 18:38:10 +0000
commit3d56e7cb4f380ab51a74a6d5397eadea18459a5f (patch)
tree9ade364f91709a76e74b4873e31dbfc0e00b66db /dev-libs/libffi
parentAdd files/postinstall-en.txt, thanks to slepnoga (diff)
downloadhistorical-3d56e7cb4f380ab51a74a6d5397eadea18459a5f.tar.gz
historical-3d56e7cb4f380ab51a74a6d5397eadea18459a5f.tar.bz2
historical-3d56e7cb4f380ab51a74a6d5397eadea18459a5f.zip
Fix building for PowerPC64 using patch from libffi-discuss ML.
Package-Manager: portage-2.2.0_alpha90/cvs/Linux x86_64
Diffstat (limited to 'dev-libs/libffi')
-rw-r--r--dev-libs/libffi/ChangeLog6
-rw-r--r--dev-libs/libffi/Manifest17
-rw-r--r--dev-libs/libffi/files/libffi-3.0.11_rc2-fix-ppc64-compile.patch52
-rw-r--r--dev-libs/libffi/libffi-3.0.11_rc2.ebuild6
4 files changed, 72 insertions, 9 deletions
diff --git a/dev-libs/libffi/ChangeLog b/dev-libs/libffi/ChangeLog
index a5e05e175231..a1134bdbcaa3 100644
--- a/dev-libs/libffi/ChangeLog
+++ b/dev-libs/libffi/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-libs/libffi
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libffi/ChangeLog,v 1.137 2012/02/19 15:42:11 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libffi/ChangeLog,v 1.138 2012/03/13 18:38:10 ssuominen Exp $
+
+ 13 Mar 2012; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.11_rc2.ebuild,
+ +files/libffi-3.0.11_rc2-fix-ppc64-compile.patch:
+ Fix building for PowerPC64 using patch from libffi-discuss ML.
19 Feb 2012; Raúl Porcel <armin76@gentoo.org> libffi-3.0.10.ebuild:
arm/ia64/m68k/s390/sh/sparc stable wrt #387063
diff --git a/dev-libs/libffi/Manifest b/dev-libs/libffi/Manifest
index 762640963e29..f54dceea5b28 100644
--- a/dev-libs/libffi/Manifest
+++ b/dev-libs/libffi/Manifest
@@ -1,6 +1,7 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
+AUX libffi-3.0.11_rc2-fix-ppc64-compile.patch 1554 RMD160 9c5e19fef7a7244cd859a1e66d84255aaa057584 SHA1 28da4693ea448e15b857bf90e090a1f73821909f SHA256 406423415ffa746a85388c5c6dae92ce7353d0b54288b3c2692453cce2404c59
AUX libffi-3.0.9-arm-oabi.patch 287 RMD160 047879573e5a8d577fe66530c12d8ceae1d2baf5 SHA1 673d4c1b230adf7497853634adec5b7fcf9d6fe3 SHA256 77d3a62aef0bffba8b99a07bc3b461dea6eb68506d7cd57b762fa28f3f44cef9
AUX libffi-3.0.9-define-generic-symbols-carefully.patch 1913 RMD160 5e2219a610259703986b792aa50cefe122c66a34 SHA1 d61a4f6b35eb2fa5bbe7907befd08121f96211bf SHA256 58c39a0feaf7e6beba13b42cb79fbff5d853d75f4c1014899511b3ff37012c9e
AUX libffi-3.0.9-interix.patch 2456 RMD160 c7d92621a610ace2730da00f070db8b6b240355b SHA1 85b56c85218fd42d86c3b5ddccad7fb421892589 SHA256 ecf5e44ae756929d0edf9f5c50682e4e23684ff90955ad454fd9cf087c849c8c
@@ -14,14 +15,18 @@ DIST libffi-3.0.11-rc2.tar.gz 801889 RMD160 2470c6a98ae58ee9cb7999b2526d7f2d20de
DIST libffi-3.0.9.tar.gz 731719 RMD160 11ff9aeb62f4fbe1fecf09e6f9814a72bfedb37a SHA1 56e41f87780e09d06d279690e53d4ea2c371ea88 SHA256 589d25152318bc780cd8919b14670793f4971d9838dab46ed38c32b3ee92c452
EBUILD libffi-3.0.10.ebuild 1610 RMD160 eec3a3bb4f14b0edf89373beddc8467920989aa2 SHA1 47bee64c4dbc56d155e8662c41194ecf525c0711 SHA256 ecf87c474177f4c3c2bad9c7890ecfc01e4d4f9b0c4fb75e637bb86f2ccf7839
EBUILD libffi-3.0.11_rc1.ebuild 1757 RMD160 136872e1072a10e4cdfe87382631d456c8f1821b SHA1 2395ce0e7d69c4c937da4a3c04fb5257cd53a0b0 SHA256 1c4b91a48fcb241740845ebca5c26fd567f439957a0ec7134532513332c44e70
-EBUILD libffi-3.0.11_rc2.ebuild 1757 RMD160 44a6f9f62aadfea5f1e6353983f2f8132824ff76 SHA1 eae2ccabc9a2646b9fdd388c11e7f38dae9b7f89 SHA256 5f41fbef08c374f558e2be3ebef91759b14d06624f9ebf9abecee283b6e327d5
+EBUILD libffi-3.0.11_rc2.ebuild 1811 RMD160 2226a23db7880e5b6dadefc59512053246a01855 SHA1 6a3c0f5748edadd64b7d9617cbe9a8ae04044114 SHA256 16d0699320959d9ff1dee358efeb8db09ae39dba28f0407eb815afffc6def144
EBUILD libffi-3.0.9-r2.ebuild 1393 RMD160 213b46f4ff5f74047b741a5547471468050d9cc5 SHA1 0fc05e0fdcd961d427e1c2a66baf67d8b4fe93ab SHA256 2f899ce0b30b4e246abe88243d5ed6fe81c914eff03694974012a6a5c59993a7
-MISC ChangeLog 18506 RMD160 29f91fcf644988400910b188aceda8e89a2e4fe8 SHA1 e0c6d98418f3c365aef4ccac9b6743637c3fd73d SHA256 15c9422d58f071609f547fec61336fb38adc041eb74304d7f74dafc93aed331e
+MISC ChangeLog 18706 RMD160 d29069f74cbccdd4d39da5dcc5ece0b30a57965c SHA1 f8dce5290a3543123ed95ee21562ba8918ef87eb SHA256 2e0fe21e494239c6b34a3da90a8c777fe4b81ca3b1c9e831af7b0d23a468a8cb
MISC metadata.xml 1663 RMD160 d2ead0beb5a34033489150623558bbe4e0083516 SHA1 8a54e9af62c01a17431ee8359edbe1d35099d3c3 SHA256 f03f0b55cdf4405ead462ba1c1b8ff2f1b6821c22c3f23d484490f8c875f6073
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.17 (GNU/Linux)
+Version: GnuPG v2.0.18 (GNU/Linux)
-iEYEARECAAYFAk9BGFkACgkQuQc30/atMkDZYgCfTqWWg64XFCO238djUiR+G0/d
-3zkAn2HPSuwykjGvmwhHDKL7X8gpYWWe
-=sIFB
+iQEcBAEBAgAGBQJPX5MLAAoJEEdUh39IaPFN6hMH/2NAI4d+Na29v3K5WJGhavBY
+1NEu6T6jfr8BjLlwnzDZlGU7CCb+sAKwa3FbspjdyF2evHTcglXWrRfWdACi2yy7
+fR/lOMVGCzD+ItClaItJuaZHRwFVVpotJp9IiOG8NN5nLDxi92w14zP5FwlxWW40
+v6JOGFvP5Yp0lQrp8pruIB3d5J/6/IKXkc+AiQlJXkGlU6Z1Du6kJL4vV6Da20o7
+JIPqAEqS7D+pLJB3R29kNhRG80NHpW7WFNDgE8Mz2Ct6OS9LnnXrogecjZ7rhsOG
+TpIn0iqLbgw5gzIl+6j3jW95PG+t1uZVSfF6XppseheNeRftL+PEBzrcVMCEmDk=
+=F/tX
-----END PGP SIGNATURE-----
diff --git a/dev-libs/libffi/files/libffi-3.0.11_rc2-fix-ppc64-compile.patch b/dev-libs/libffi/files/libffi-3.0.11_rc2-fix-ppc64-compile.patch
new file mode 100644
index 000000000000..6f02fec6754e
--- /dev/null
+++ b/dev-libs/libffi/files/libffi-3.0.11_rc2-fix-ppc64-compile.patch
@@ -0,0 +1,52 @@
+http://sourceware.org/ml/libffi-discuss/2012/msg00100.html
+
+--- src/powerpc/ffi.c
++++ src/powerpc/ffi.c
+@@ -146,6 +146,7 @@
+ gpr_base.u = stacktop.u - ASM_NEEDS_REGISTERS - NUM_GPR_ARG_REGISTERS;
+ intarg_count = 0;
+ #ifndef __NO_FPRS__
++ double double_tmp;
+ fpr_base.d = gpr_base.d - NUM_FPR_ARG_REGISTERS;
+ fparg_count = 0;
+ copy_space.c = ((flags & FLAG_FP_ARGUMENTS) ? fpr_base.c : gpr_base.c);
+@@ -155,9 +156,9 @@
+ next_arg.u = stack + 2;
+
+ /* Check that everything starts aligned properly. */
+- FFI_ASSERT (((unsigned) (char *) stack & 0xF) == 0);
+- FFI_ASSERT (((unsigned) copy_space.c & 0xF) == 0);
+- FFI_ASSERT (((unsigned) stacktop.c & 0xF) == 0);
++ FFI_ASSERT (((unsigned long) (char *) stack & 0xF) == 0);
++ FFI_ASSERT (((unsigned long) copy_space.c & 0xF) == 0);
++ FFI_ASSERT (((unsigned long) stacktop.c & 0xF) == 0);
+ FFI_ASSERT ((bytes & 0xF) == 0);
+ FFI_ASSERT (copy_space.c >= next_arg.c);
+
+@@ -211,8 +212,6 @@
+
+ case FFI_TYPE_DOUBLE:
+ /* With FFI_LINUX_SOFT_FLOAT doubles are handled like UINT64. */
+- if (ecif->cif->abi == FFI_LINUX_SOFT_FLOAT)
+- goto soft_double_prep;
+ double_tmp = **p_argv.d;
+
+ if (fparg_count >= NUM_FPR_ARG_REGISTERS)
+@@ -925,7 +924,7 @@
+ */
+ unsigned int smst_buffer[2];
+ extended_cif ecif;
+- unsigned int rsize;
++ unsigned int rsize = 0;
+
+ ecif.cif = cif;
+ ecif.avalue = avalue;
+@@ -1132,7 +1131,7 @@
+
+ if (nf < 8)
+ {
+- temp = pfr->d;
++ double temp = pfr->d;
+ pfr->f = (float) temp;
+ avalue[i] = pfr;
+ nf++;
diff --git a/dev-libs/libffi/libffi-3.0.11_rc2.ebuild b/dev-libs/libffi/libffi-3.0.11_rc2.ebuild
index 7f904b86b543..a8da863d00c8 100644
--- a/dev-libs/libffi/libffi-3.0.11_rc2.ebuild
+++ b/dev-libs/libffi/libffi-3.0.11_rc2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libffi/libffi-3.0.11_rc2.ebuild,v 1.2 2012/02/16 22:50:00 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libffi/libffi-3.0.11_rc2.ebuild,v 1.3 2012/03/13 18:38:10 ssuominen Exp $
EAPI=4
@@ -33,7 +33,9 @@ pkg_setup() {
}
src_prepare() {
- epatch "${FILESDIR}"/${PN}-3.0.9-x32.patch
+ epatch \
+ "${FILESDIR}"/${PN}-3.0.9-x32.patch \
+ "${FILESDIR}"/${P}-fix-ppc64-compile.patch
elibtoolize
}