openambedded/packages/gmp_4.1.2:
authorHolger Freyther <zecke@selfish.org>
Sat, 30 Jul 2005 23:16:21 +0000 (23:16 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Sat, 30 Jul 2005 23:16:21 +0000 (23:16 +0000)
    -Apply patch from #118 coursety gerwinin to fix compilation
    of gmp on more modern compilers (e.g. gcc4)

packages/gmp/gmp-4.1.2/gcc-compile.patch [new file with mode: 0644]
packages/gmp/gmp_4.1.2.bb

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 (file)
index 0000000..4d88012
--- /dev/null
@@ -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;
index b19d122..d745617 100644 (file)
@@ -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