summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2005-07-30 23:16:21 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-07-30 23:16:21 +0000
commit45430bc098ad2fcd875f12b950ea4e0cee93a9ce (patch)
treeeb6a6ebd1227f4c02d1ade85e90a8197094d2032 /packages
parentdb73bdddcba33027c35cf6f8910fa0b00e23eb96 (diff)
openambedded/packages/gmp_4.1.2:
-Apply patch from #118 coursety gerwinin to fix compilation of gmp on more modern compilers (e.g. gcc4)
Diffstat (limited to 'packages')
-rw-r--r--packages/gmp/gmp-4.1.2/gcc-compile.patch72
-rw-r--r--packages/gmp/gmp_4.1.2.bb3
2 files changed, 74 insertions, 1 deletions
diff --git a/packages/gmp/gmp-4.1.2/gcc-compile.patch b/packages/gmp/gmp-4.1.2/gcc-compile.patch
new file mode 100644
index 0000000000..4d880123e9
--- /dev/null
+++ b/packages/gmp/gmp-4.1.2/gcc-compile.patch
@@ -0,0 +1,72 @@
+ diff -Naur gmp-4.1.2.orig/mpf/ceilfloor.c gmp-4.1.2/mpf/ceilfloor.c
+ --- gmp-4.1.2.orig/mpf/ceilfloor.c 2001-05-10 22:31:13.000000000 +0000
+ +++ gmp-4.1.2/mpf/ceilfloor.c 2004-04-25 03:48:20.823016075 +0000
+ @@ -31,7 +31,7 @@
+ static void __gmpf_ceil_or_floor _PROTO ((REGPARM_2_1 (mpf_ptr r, mpf_srcptr u, int dir))) REGPARM_ATTR (1);
+ #define mpf_ceil_or_floor(r,u,dir) __gmpf_ceil_or_floor (REGPARM_2_1 (r, u, dir))
+
+ -static void
+ +REGPARM_ATTR (1) static void
+ mpf_ceil_or_floor (mpf_ptr r, mpf_srcptr u, int dir)
+ {
+ mp_ptr rp, up, p;
+ diff -Naur gmp-4.1.2.orig/mpq/aors.c gmp-4.1.2/mpq/aors.c
+ --- gmp-4.1.2.orig/mpq/aors.c 2001-09-01 22:41:02.000000000 +0000
+ +++ gmp-4.1.2/mpq/aors.c 2004-04-25 03:48:20.826015531 +0000
+ @@ -27,7 +27,7 @@
+ static void __gmpq_aors _PROTO ((REGPARM_3_1 (mpq_ptr w, mpq_srcptr x, mpq_srcptr y, void (*fun) _PROTO ((mpz_ptr, mpz_srcptr, mpz_srcptr))))) REGPARM_ATTR (1);
+ #define mpq_aors(w,x,y,fun) __gmpq_aors (REGPARM_3_1 (w, x, y, fun))
+
+ -static void
+ +REGPARM_ATTR (1) static void
+ mpq_aors (mpq_ptr rop, mpq_srcptr op1, mpq_srcptr op2,
+ void (*fun) _PROTO ((mpz_ptr, mpz_srcptr, mpz_srcptr)))
+ {
+ diff -Naur gmp-4.1.2.orig/mpz/aorsmul.c gmp-4.1.2/mpz/aorsmul.c
+ --- gmp-4.1.2.orig/mpz/aorsmul.c 2001-05-02 22:30:07.000000000 +0000
+ +++ gmp-4.1.2/mpz/aorsmul.c 2004-04-25 03:48:20.828015169 +0000
+ @@ -39,7 +39,7 @@
+ static void __gmpz_aorsmul _PROTO ((REGPARM_3_1 (mpz_ptr w, mpz_srcptr x, mpz_srcptr y, mp_size_t sub))) REGPARM_ATTR (1);
+ #define mpz_aorsmul(w,x,y,sub) __gmpz_aorsmul (REGPARM_3_1 (w, x, y, sub))
+
+ -static void
+ +REGPARM_ATTR (1) static void
+ mpz_aorsmul (mpz_ptr w, mpz_srcptr x, mpz_srcptr y, mp_size_t sub)
+ {
+ mp_size_t xsize, ysize, tsize, wsize, wsize_signed;
+ diff -Naur gmp-4.1.2.orig/mpz/aorsmul_i.c gmp-4.1.2/mpz/aorsmul_i.c
+ --- gmp-4.1.2.orig/mpz/aorsmul_i.c 2002-05-14 16:59:49.000000000 +0000
+ +++ gmp-4.1.2/mpz/aorsmul_i.c 2004-04-25 03:49:07.962471904 +0000
+ @@ -57,7 +57,7 @@
+ twos-complement negative y doesn't work, because it effectively adds an
+ extra x * 2^BITS_PER_MP_LIMB. */
+
+ -void
+ +REGPARM_ATTR (1) void
+ mpz_aorsmul_1 (mpz_ptr w, mpz_srcptr x, mp_limb_t y, mp_size_t sub)
+ {
+ mp_size_t xsize, wsize, wsize_signed, new_wsize, min_size, dsize;
+ diff -Naur gmp-4.1.2.orig/mpz/cfdiv_q_2exp.c gmp-4.1.2/mpz/cfdiv_q_2exp.c
+ --- gmp-4.1.2.orig/mpz/cfdiv_q_2exp.c 2002-02-08 21:55:17.000000000 +0000
+ +++ gmp-4.1.2/mpz/cfdiv_q_2exp.c 2004-04-25 03:48:20.830014806 +0000
+ @@ -29,7 +29,7 @@
+ static void __gmpz_cfdiv_q_2exp _PROTO ((REGPARM_3_1 (mpz_ptr w, mpz_srcptr u, unsigned long cnt, int dir))) REGPARM_ATTR (1);
+ #define cfdiv_q_2exp(w,u,cnt,dir) __gmpz_cfdiv_q_2exp (REGPARM_3_1 (w,u,cnt,dir))
+
+ -static void
+ +REGPARM_ATTR (1) static void
+ cfdiv_q_2exp (mpz_ptr w, mpz_srcptr u, unsigned long cnt, int dir)
+ {
+ mp_size_t wsize, usize, abs_usize, limb_cnt, i;
+ diff -Naur gmp-4.1.2.orig/mpz/cfdiv_r_2exp.c gmp-4.1.2/mpz/cfdiv_r_2exp.c
+ --- gmp-4.1.2.orig/mpz/cfdiv_r_2exp.c 2002-04-18 16:48:25.000000000 +0000
+ +++ gmp-4.1.2/mpz/cfdiv_r_2exp.c 2004-04-25 03:48:20.832014444 +0000
+ @@ -32,7 +32,7 @@
+ static void __gmpz_cfdiv_r_2exp _PROTO ((REGPARM_3_1 (mpz_ptr w, mpz_srcptr u, unsigned long cnt, int dir))) REGPARM_ATTR (1);
+ #define cfdiv_r_2exp(w,u,cnt,dir) __gmpz_cfdiv_r_2exp (REGPARM_3_1 (w, u, cnt, dir))
+
+ -static void
+ +REGPARM_ATTR (1) static void
+ cfdiv_r_2exp (mpz_ptr w, mpz_srcptr u, unsigned long cnt, int dir)
+ {
+ mp_size_t usize, abs_usize, limb_cnt, i;
diff --git a/packages/gmp/gmp_4.1.2.bb b/packages/gmp/gmp_4.1.2.bb
index b19d122ddf..d7456175a1 100644
--- a/packages/gmp/gmp_4.1.2.bb
+++ b/packages/gmp/gmp_4.1.2.bb
@@ -5,7 +5,8 @@ LICENSE = "GPL LGPL"
SRC_URI = "ftp://mirrors.kernel.org/gnu/gmp/gmp-${PV}.tar.gz \
file://configure.patch;patch=1 \
- file://amd64.patch;patch=1"
+ file://amd64.patch;patch=1 \
+ file://gcc-compile.patch;patch=1 "
inherit autotools