diff options
Diffstat (limited to 'recipes/gmp')
28 files changed, 2825 insertions, 0 deletions
diff --git a/recipes/gmp/files/sh4-asmfix.patch b/recipes/gmp/files/sh4-asmfix.patch new file mode 100644 index 0000000000..1a01f61533 --- /dev/null +++ b/recipes/gmp/files/sh4-asmfix.patch @@ -0,0 +1,26 @@ +--- gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:44:00 1.1 ++++ gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:18:57 +@@ -29,8 +29,8 @@ + + .text + .align 2 +- .global ___gmpn_add_n +-___gmpn_add_n: ++ .global __gmpn_add_n ++__gmpn_add_n: + mov #0,r3 ! clear cy save reg + + Loop: mov.l @r5+,r1 +--- gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:44:04 1.1 ++++ gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:18:59 +@@ -29,8 +29,8 @@ + + .text + .align 2 +- .global ___gmpn_sub_n +-___gmpn_sub_n: ++ .global __gmpn_sub_n ++__gmpn_sub_n: + mov #0,r3 ! clear cy save reg + + Loop: mov.l @r5+,r1 diff --git a/recipes/gmp/files/x86-fat.diff b/recipes/gmp/files/x86-fat.diff new file mode 100644 index 0000000000..2a54622a26 --- /dev/null +++ b/recipes/gmp/files/x86-fat.diff @@ -0,0 +1,122 @@ +See: + + http://gmplib.org/patches/x86-fat.diff + http://gmplib.org/list-archives/gmp-bugs/2006-October/000579.html + http://gmplib.org/#BUGREPORTS + +Removed the configure part of the patch since we patch configure.in. It was +only needed for FAT binaries anyway and this is being included to fix +linking errors. + +Index: mpn/generic/addsub_n.c +=================================================================== +RCS file: /home/cvsfiles/gmp42/mpn/generic/addsub_n.c,v +retrieving revision 1.1 +retrieving revision 1.2 +diff -p -2 -r1.1 -r1.2 +*** mpn/generic/addsub_n.c 14 Mar 2006 15:57:54 -0000 1.1 +--- mpn/generic/addsub_n.c 15 May 2006 22:38:42 -0000 1.2 +*************** +*** 1,5 **** + /* mpn_addsub_n -- Add and Subtract two limb vectors of equal, non-zero length. + +! Copyright 1999, 2000, 2001 Free Software Foundation, Inc. + + This file is part of the GNU MP Library. +--- 1,5 ---- + /* mpn_addsub_n -- Add and Subtract two limb vectors of equal, non-zero length. + +! Copyright 1999, 2000, 2001, 2006 Free Software Foundation, Inc. + + This file is part of the GNU MP Library. +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 59,63 **** + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n + acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo); + #else +--- 59,63 ---- + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_add_nc + acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo); + #else +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 65,69 **** + acyo = acyn + mpn_add_1 (r1p + off, r1p + off, this_n, acyo); + #endif +! #if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else +--- 65,69 ---- + acyo = acyn + mpn_add_1 (r1p + off, r1p + off, this_n, acyo); + #endif +! #if HAVE_NATIVE_mpn_sub_nc + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 82,86 **** + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else +--- 82,86 ---- + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_sub_nc + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 88,92 **** + scyo = scyn + mpn_sub_1 (r2p + off, r2p + off, this_n, scyo); + #endif +! #if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n + acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo); + #else +--- 88,92 ---- + scyo = scyn + mpn_sub_1 (r2p + off, r2p + off, this_n, scyo); + #endif +! #if HAVE_NATIVE_mpn_add_nc + acyo = mpn_add_nc (r1p + off, s1p + off, s2p + off, this_n, acyo); + #else +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 98,102 **** + else + { +! /* r1 and r2 are identical to s1 and s2 (r1==s1 and r2=s2 or vice versa) + Need temporary storage. */ + mp_limb_t tp[PART_SIZE]; +--- 98,102 ---- + else + { +! /* r1 and r2 are identical to s1 and s2 (r1==s1 and r2==s2 or vice versa) + Need temporary storage. */ + mp_limb_t tp[PART_SIZE]; +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 106,110 **** + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_add_nc || !HAVE_NATIVE_mpn_add_n + acyo = mpn_add_nc (tp, s1p + off, s2p + off, this_n, acyo); + #else +--- 106,110 ---- + { + this_n = MIN (n - off, PART_SIZE); +! #if HAVE_NATIVE_mpn_add_nc + acyo = mpn_add_nc (tp, s1p + off, s2p + off, this_n, acyo); + #else +*************** mpn_addsub_n (mp_ptr r1p, mp_ptr r2p, mp +*** 112,116 **** + acyo = acyn + mpn_add_1 (tp, tp, this_n, acyo); + #endif +! #if HAVE_NATIVE_mpn_sub_nc || !HAVE_NATIVE_mpn_sub_n + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else +--- 112,116 ---- + acyo = acyn + mpn_add_1 (tp, tp, this_n, acyo); + #endif +! #if HAVE_NATIVE_mpn_sub_nc + scyo = mpn_sub_nc (r2p + off, s1p + off, s2p + off, this_n, scyo); + #else diff --git a/recipes/gmp/gmp-4.1.2/amd64.patch b/recipes/gmp/gmp-4.1.2/amd64.patch new file mode 100644 index 0000000000..bbede7fcc7 --- /dev/null +++ b/recipes/gmp/gmp-4.1.2/amd64.patch @@ -0,0 +1,16 @@ +Index: gmp-4.1.2/longlong.h +=================================================================== +--- gmp-4.1.2.orig/longlong.h 2005-06-24 13:38:06.787570452 -0700 ++++ gmp-4.1.2/longlong.h 2005-06-24 13:38:31.539556496 -0700 +@@ -715,8 +715,10 @@ + } while (0) + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/recipes/gmp/gmp-4.1.2/configure.patch b/recipes/gmp/gmp-4.1.2/configure.patch new file mode 100644 index 0000000000..94ad97e919 --- /dev/null +++ b/recipes/gmp/gmp-4.1.2/configure.patch @@ -0,0 +1,864 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- gmp-4.1.2/mpfr/Makefile.am~configure 2002-05-15 20:27:52.000000000 -0400 ++++ gmp-4.1.2/mpfr/Makefile.am 2004-01-25 12:53:19.000000000 -0500 +@@ -28,7 +28,7 @@ + SUBDIRS = tests + + INCLUDES = -I$(top_srcdir) +-CFLAGS = @MPFR_CFLAGS@ ++AM_CFLAGS = @MPFR_CFLAGS@ + LIBS = @MPFR_LIBS@ + + if WANT_MPFR +--- gmp-4.1.2/mpfr/tests/Makefile.am~configure 2002-11-24 17:00:42.000000000 -0500 ++++ gmp-4.1.2/mpfr/tests/Makefile.am 2004-01-25 12:53:19.000000000 -0500 +@@ -22,7 +22,7 @@ + AUTOMAKE_OPTIONS = gnu no-dependencies $(top_builddir)/ansi2knr + + INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/mpfr +-CFLAGS = @MPFR_CFLAGS@ ++AM_CFLAGS = @MPFR_CFLAGS@ + LIBS = @MPFR_LIBS@ + + LDADD = ../libmpfr.a $(top_builddir)/libgmp.la +--- gmp-4.1.2/configure.in~configure 2002-12-23 15:52:09.000000000 -0500 ++++ gmp-4.1.2/configure.in 2004-01-25 12:53:19.000000000 -0500 +@@ -26,15 +26,16 @@ + + + AC_REVISION($Revision: 1.425.2.17 $) +-AC_PREREQ(2.52) +-AC_INIT(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_forbid([^[ \t]*MPFR_CONFIGS]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) ++AC_PREREQ(2.57) ++AC_INIT ++AC_CONFIG_SRCDIR([gmp-impl.h]) ++ ++ ++ ++ ++ ++ ++ + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -56,7 +57,7 @@ + GMP_DEFINE_RAW("define_not_for_expansion(\`HAVE_HOST_CPU_$tmp_host')", POST) + + AM_INIT_AUTOMAKE(gmp, GMP_VERSION) +-AM_CONFIG_HEADER(config.h:config.in) ++AC_CONFIG_HEADERS([config.h:config.in]) + AM_MAINTAINER_MODE + + +@@ -201,7 +202,7 @@ + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -288,7 +289,7 @@ + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1010,7 +1011,7 @@ + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + configure:__line__: User: + ABI=$ABI + CC=$CC +@@ -1322,18 +1323,18 @@ + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC ++ + AC_PROG_CPP + GMP_H_ANSI + + + # The C++ compiler, if desired. + want_cxx=no ++AC_PROG_CXX + if test $enable_cxx != no; then + test_CXXFLAGS=${CXXFLAGS+set} +- AC_PROG_CXX + +- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -1409,7 +1410,7 @@ + fi + + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + configure:__line__: Decided: + ABI=$ABI + CC=$CC +@@ -1651,9 +1652,9 @@ + + # FIXME: Autoconf 2.52 AC_C_BIGENDIAN bombs when cross compiling, but in the + # future the probes will be better and this override can be removed. +-if test "$cross_compiling" = yes; then +- ac_cv_c_bigendian=unknown +-fi ++#if test "$cross_compiling" = yes; then ++# ac_cv_c_bigendian=unknown ++#fi + AC_C_BIGENDIAN + # Enhancement: In the future AC_C_BIGENDIAN will accept these actions as + # parameters. +@@ -2094,7 +2095,7 @@ + + # Configs for demos/calc directory + # +-# AC_SUBST is used here since with AM_CONFIG_HEADER automake would put ++# AC_SUBST is used here since with AC_CONFIG_HEADERS([]) automake would put + # demos/calc in the default $(DEFAULT_INCLUDES) for every directory, + # which would look very strange. Likewise demos/expr below. + # +@@ -2133,7 +2134,7 @@ + # FIXME: Upcoming version of autoconf/automake may not like broken lines. + # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. + +-AC_OUTPUT(Makefile \ ++AC_CONFIG_FILES([Makefile \ + mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ + mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ + tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ +@@ -2143,4 +2144,5 @@ + mpfr/Makefile mpfr/tests/Makefile \ + tune/Makefile \ + demos/Makefile demos/calc/Makefile demos/expr/Makefile \ +- gmp.h:gmp-h.in mp.h:mp-h.in) ++ gmp.h:gmp-h.in mp.h:mp-h.in]) ++AC_OUTPUT +--- gmp-4.1.2/acinclude.m4~configure 2002-09-07 20:02:19.000000000 -0400 ++++ gmp-4.1.2/acinclude.m4 2004-01-25 12:54:39.000000000 -0500 +@@ -21,10 +21,10 @@ + dnl MA 02111-1307, USA. + + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-*]]) + + +@@ -32,7 +32,7 @@ + dnl ---------------------- + dnl Strip entries */subdir from $path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [tmp_path= + for i in $path; do + case $i in +@@ -53,7 +53,7 @@ + dnl GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB starts as a dummy, but gets + dnl redefined in GMP_C_SIZES when the right value is known. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS] + GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB +@@ -61,7 +61,7 @@ + #include "$srcdir/gmp-h.in"] + ]) + +-define(GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB, ++define([GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB], + [[#define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ + #define GMP_LIMB_BITS 123]]) + +@@ -72,7 +72,7 @@ + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -86,7 +86,7 @@ + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1, +@@ -97,13 +97,13 @@ + dnl ------------------------------ + dnl Setup an AC_SUBST of HAVE_FUNC_01 for each argument. + +-AC_DEFUN(GMP_SUBST_CHECK_FUNCS, ++AC_DEFUN([GMP_SUBST_CHECK_FUNCS], + [m4_if([$1],,, + [_GMP_SUBST_CHECK_FUNCS(ac_cv_func_[$1],HAVE_[]m4_translit([$1],[a-z],[A-Z])_01) + GMP_SUBST_CHECK_FUNCS(m4_shift($@))])]) + + dnl Called: _GMP_SUBST_CHECK_FUNCS(cachvar,substvar) +-AC_DEFUN(_GMP_SUBST_CHECK_FUNCS, ++AC_DEFUN([_GMP_SUBST_CHECK_FUNCS], + [case $[$1] in + yes) AC_SUBST([$2],1) ;; + no) [$2]=0 ;; +@@ -115,14 +115,14 @@ + dnl ---------------------------------- + dnl Setup an AC_SUBST of HAVE_FOO_H_01 for each argument. + +-AC_DEFUN(GMP_SUBST_CHECK_HEADERS, ++AC_DEFUN([GMP_SUBST_CHECK_HEADERS], + [m4_if([$1],,, + [_GMP_SUBST_CHECK_HEADERS(ac_cv_header_[]m4_translit([$1],[./],[__]), + HAVE_[]m4_translit([$1],[a-z./],[A-Z__])_01) + GMP_SUBST_CHECK_HEADERS(m4_shift($@))])]) + + dnl Called: _GMP_SUBST_CHECK_HEADERS(cachvar,substvar) +-AC_DEFUN(_GMP_SUBST_CHECK_HEADERS, ++AC_DEFUN([_GMP_SUBST_CHECK_HEADERS], + [case $[$1] in + yes) AC_SUBST([$2],1) ;; + no) [$2]=0 ;; +@@ -145,12 +145,12 @@ + dnl would test whether $major.$minor.$subminor is greater than or equal to + dnl 10.3.1. + +-AC_DEFUN(GMP_COMPARE_GE, ++AC_DEFUN([GMP_COMPARE_GE], + [gmp_compare_ge=no + GMP_COMPARE_GE_INTERNAL($@) + ]) + +-AC_DEFUN(GMP_COMPARE_GE_INTERNAL, ++AC_DEFUN([GMP_COMPARE_GE_INTERNAL], + [ifelse(len([$3]),0, + [if test -n "$1" && test "$1" -ge $2; then + gmp_compare_ge=yes +@@ -184,7 +184,7 @@ + dnl for instance to random.o (and others) on vax-dec-ultrix4.5. Naturally + dnl a user-selected $AR_FLAGS is left unchanged. + +-AC_DEFUN(GMP_PROG_AR, ++AC_DEFUN([GMP_PROG_AR], + [dnl Want to establish $AR before libtool initialization. + AC_BEFORE([$0],[AC_PROG_LIBTOOL]) + gmp_user_AR=$AR +@@ -212,7 +212,7 @@ + dnl CC_FOR_BUILD is used without testing. CC_FOR_BUILD is the new name for + dnl a build system compiler, see configfsf.guess. + +-AC_DEFUN(GMP_PROG_HOST_CC, ++AC_DEFUN([GMP_PROG_HOST_CC], + [AC_BEFORE([$0],[AC_PROG_LIBTOOL]) + AC_REQUIRE([AC_PROG_CC]) + AC_CACHE_CHECK([for HOST_CC build system compiler], +@@ -255,7 +255,7 @@ + dnl FIXME: This can be removed and just AM_PROG_LEX used, one that macro + dnl works properly. + +-AC_DEFUN(GMP_PROG_LEX, ++AC_DEFUN([GMP_PROG_LEX], + [AC_REQUIRE([AC_PROG_LEX]) + if test "$LEX" = :; then + LEX=${am_missing_run}flex +@@ -273,7 +273,7 @@ + dnl + dnl See mpn/asm-defs.m4 for details on the known bad m4s. + +-AC_DEFUN(GMP_PROG_M4, ++AC_DEFUN([GMP_PROG_M4], + [AC_ARG_VAR(M4,[m4 macro processor]) + AC_CACHE_CHECK([for suitable m4], + gmp_cv_prog_m4, +@@ -340,7 +340,7 @@ + dnl Enhancement: Maybe this could be in GMP_PROG_M4, and attempt to prefer + dnl an m4 with a working m4wrap, if it can be found. + +-AC_DEFUN(GMP_M4_M4WRAP_SPURIOUS, ++AC_DEFUN([GMP_M4_M4WRAP_SPURIOUS], + [AC_REQUIRE([GMP_PROG_M4]) + AC_CACHE_CHECK([if m4wrap produces spurious output], + gmp_cv_m4_m4wrap_spurious, +@@ -374,7 +374,7 @@ + dnl A user-selected $NM is always left unchanged. AC_PROG_NM is still run + dnl to get the "checking" message printed though. + +-AC_DEFUN(GMP_PROG_NM, ++AC_DEFUN([GMP_PROG_NM], + [dnl Make sure we're the first to call AC_PROG_NM, so our extra flags are + dnl used by everyone. + AC_BEFORE([$0],[AC_PROG_NM]) +@@ -426,7 +426,7 @@ + dnl will run is that a plain native "./configure" falls back on ABI=32, but + dnl ABI=64 is still available as a cross-compile. + +-AC_DEFUN(GMP_PROG_CC_WORKS, ++AC_DEFUN([GMP_PROG_CC_WORKS], + [AC_MSG_CHECKING([compiler $1]) + cat >conftest.c <<EOF + +@@ -481,7 +481,7 @@ + dnl cache the result. The same "ifndef" style test is used, to avoid + dnl problems with syntax checking cpp's used on NeXT and Apple systems. + +-AC_DEFUN(GMP_PROG_CC_IS_GNU, ++AC_DEFUN([GMP_PROG_CC_IS_GNU], + [cat >conftest.c <<EOF + #ifndef __GNUC__ + choke me +@@ -508,7 +508,7 @@ + dnl there is one then it's well hidden in xlc 3.1 on AIX 4.3, so just grep + dnl the man page printed when xlc is invoked with no arguments. + +-AC_DEFUN(GMP_PROG_CC_IS_XLC, ++AC_DEFUN([GMP_PROG_CC_IS_XLC], + [gmp_command="$1 2>&1 | grep xlc >/dev/null" + if AC_TRY_EVAL(gmp_command); then + AC_MSG_CHECKING([whether $1 is xlc]) +@@ -527,7 +527,7 @@ + dnl This test might be repeated for different compilers, so the result is + dnl not cached. + +-AC_DEFUN(GMP_HPC_HPPA_2_0, ++AC_DEFUN([GMP_HPC_HPPA_2_0], + [AC_MSG_CHECKING([whether HP compiler $1 is good for 64-bits]) + # Bad compiler output: + # ccom: HP92453-01 G.10.32.05 HP C Compiler +@@ -571,7 +571,7 @@ + dnl + dnl There's no caching here, so that different CC's can be tested. + +-AC_DEFUN(GMP_GCC_VERSION_GE, ++AC_DEFUN([GMP_GCC_VERSION_GE], + [tmp_version=`($1 --version) 2>&AC_FD_CC` + echo "$1 --version '$tmp_version'" >&AC_FD_CC + +@@ -608,7 +608,7 @@ + dnl size==1 case in mpn/generic/mode1o.c, and this shows up in + dnl tests/mpz/t-jac.c as a wrong result from mpz_kronecker_ui. + +-AC_DEFUN(GMP_GCC_ARM_UMODSI, ++AC_DEFUN([GMP_GCC_ARM_UMODSI], + [AC_MSG_CHECKING([whether ARM gcc unsigned division works]) + tmp_version=`$1 --version` + echo "$tmp_version" >&AC_FD_CC +@@ -635,7 +635,7 @@ + dnl This macro is used only once, after finalizing a choice of CC, so the + dnl result is cached. + +-AC_DEFUN(GMP_GCC_MARCH_PENTIUMPRO, ++AC_DEFUN([GMP_GCC_MARCH_PENTIUMPRO], + [AC_CACHE_CHECK([whether gcc -march=pentiumpro is good], + gmp_cv_gcc_march_pentiumpro, + [GMP_GCC_VERSION_GE([$1], 2,95,4) +@@ -659,7 +659,7 @@ + dnl gets rearranged or rewritten so the ICE doesn't happen then this can be + dnl removed. + +-AC_DEFUN(GMP_GCC_M68K_OPTIMIZE, ++AC_DEFUN([GMP_GCC_M68K_OPTIMIZE], + [case $host in + m68*-*-*) + if test $1 = gcc; then +@@ -681,7 +681,7 @@ + dnl gcc 2.95 accepts -mabi=32 but it only works on irix5, on irix6 it gives + dnl "cc1: The -mabi=32 support does not work yet". + +-AC_DEFUN(GMP_GCC_MIPS_O32, ++AC_DEFUN([GMP_GCC_MIPS_O32], + [AC_MSG_CHECKING([whether gcc supports o32]) + echo 'int x;' >conftest.c + echo "$1 -mabi=32 -c conftest.c" >&AC_FD_CC +@@ -716,7 +716,7 @@ + dnl watch for that and decide against the option in that case, to avoid + dnl confusing the user. + +-AC_DEFUN(GMP_GCC_NO_CPP_PRECOMP, ++AC_DEFUN([GMP_GCC_NO_CPP_PRECOMP], + [if test "$ccbase" = gcc; then + AC_MSG_CHECKING([compiler $2 $3 -no-cpp-precomp]) + result=no +@@ -752,7 +752,7 @@ + dnl This is intended for use on alpha, since only recent versions of gas + dnl accept -mev67, but there's nothing here that's alpha specific. + +-AC_DEFUN(GMP_GCC_WA_MCPU, ++AC_DEFUN([GMP_GCC_WA_MCPU], + [AC_MSG_CHECKING([assembler $1 $2]) + result=no + cat >conftest.c <<EOF +@@ -783,7 +783,7 @@ + dnl This test is designed to be run repeatedly with different cxx/cxxflags + dnl selections, so the result is not cached. + +-AC_DEFUN(GMP_PROG_CXX_WORKS, ++AC_DEFUN([GMP_PROG_CXX_WORKS], + [AC_MSG_CHECKING([C++ compiler $1]) + cat >conftest.cc <<EOF + #include <iostream> +@@ -817,7 +817,7 @@ + dnl FIXME: The generated config.m4 doesn't get recreated by config.status. + dnl Maybe the relevant "echo"s should go through AC_CONFIG_COMMANDS. + +-AC_DEFUN(GMP_INIT, ++AC_DEFUN([GMP_INIT], + [ifelse([$1], , gmp_configm4=config.m4, gmp_configm4="[$1]") + gmp_tmpconfigm4=cnfm4.tmp + gmp_tmpconfigm4i=cnfm4i.tmp +@@ -834,7 +834,9 @@ + echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +@@ -855,7 +857,7 @@ + dnl having a whole file as a macro argument would overflow the string space + dnl on BSD m4. + +-AC_DEFUN(GMP_FINISH, ++AC_DEFUN([GMP_FINISH], + [AC_REQUIRE([GMP_INIT]) + echo "creating $gmp_configm4" + echo ["d""nl $gmp_configm4. Generated automatically by configure."] > $gmp_configm4 +@@ -889,7 +891,7 @@ + dnl GMP_INCLUDE_MPN(`x86/x86-defs.m4') + dnl + +-AC_DEFUN(GMP_INCLUDE_MPN, ++AC_DEFUN([GMP_INCLUDE_MPN], + [AC_REQUIRE([GMP_INIT]) + echo ["include_mpn(\`$1')"] >> $gmp_tmpconfigm4i + ]) +@@ -905,7 +907,7 @@ + dnl create file config.m4. config.m4 uses `<' and '>' as quote characters + dnl for all defines. + +-AC_DEFUN(GMP_DEFINE, ++AC_DEFUN([GMP_DEFINE], + [AC_REQUIRE([GMP_INIT]) + echo ['define(<$1>, <$2>)'] >>ifelse([$3], [POST], + $gmp_tmpconfigm4p, $gmp_tmpconfigm4) +@@ -920,7 +922,7 @@ + dnl directives inserted by GMP_INCLUDE. Don't forget to invoke GMP_FINISH + dnl to create file config.m4. + +-AC_DEFUN(GMP_DEFINE_RAW, ++AC_DEFUN([GMP_DEFINE_RAW], + [AC_REQUIRE([GMP_INIT]) + echo [$1] >> ifelse([$2], [POST], $gmp_tmpconfigm4p, $gmp_tmpconfigm4) + ]) +@@ -938,7 +940,7 @@ + dnl This is not unlike AC_TRY_COMPILE, but there's no default includes or + dnl anything in "asm-code", everything wanted must be given explicitly. + +-AC_DEFUN(GMP_TRY_ASSEMBLE, ++AC_DEFUN([GMP_TRY_ASSEMBLE], + [cat >conftest.s <<EOF + [$1] + EOF +@@ -960,7 +962,7 @@ + dnl -------------------- + dnl Should a label have a colon or not? + +-AC_DEFUN(GMP_ASM_LABEL_SUFFIX, ++AC_DEFUN([GMP_ASM_LABEL_SUFFIX], + [AC_CACHE_CHECK([what assembly label suffix to use], + gmp_cv_asm_label_suffix, + [case $host in +@@ -984,7 +986,7 @@ + dnl in particular that grepping doesn't work with SunOS 4 native grep since + dnl that grep seems to have trouble with '\0's in files. + +-AC_DEFUN(GMP_ASM_UNDERSCORE, ++AC_DEFUN([GMP_ASM_UNDERSCORE], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1045,7 +1047,7 @@ + dnl ----------------- + dnl Is parameter to `.align' logarithmic? + +-AC_DEFUN(GMP_ASM_ALIGN_LOG, ++AC_DEFUN([GMP_ASM_ALIGN_LOG], + [AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1103,7 +1105,7 @@ + dnl The warning from solaris 2.8 is supressed to stop anyone worrying that + dnl something might be wrong. + +-AC_DEFUN(GMP_ASM_ALIGN_FILL_0x90, ++AC_DEFUN([GMP_ASM_ALIGN_FILL_0x90], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the .align directive accepts an 0x90 fill in .text], + gmp_cv_asm_align_fill_0x90, +@@ -1127,7 +1129,7 @@ + dnl GMP_ASM_TEXT + dnl ------------ + +-AC_DEFUN(GMP_ASM_TEXT, ++AC_DEFUN([GMP_ASM_TEXT], + [AC_CACHE_CHECK([how to switch to text section], + gmp_cv_asm_text, + [case $host in +@@ -1144,7 +1146,7 @@ + dnl ------------ + dnl Can we say `.data'? + +-AC_DEFUN(GMP_ASM_DATA, ++AC_DEFUN([GMP_ASM_DATA], + [AC_CACHE_CHECK([how to switch to data section], + gmp_cv_asm_data, + [case $host in +@@ -1172,7 +1174,7 @@ + dnl where foo is the object file. Might need to check for that if we use + dnl RODATA there. + +-AC_DEFUN(GMP_ASM_RODATA, ++AC_DEFUN([GMP_ASM_RODATA], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1229,7 +1231,7 @@ + dnl ------------- + dnl Can we say `.global'? + +-AC_DEFUN(GMP_ASM_GLOBL, ++AC_DEFUN([GMP_ASM_GLOBL], + [AC_CACHE_CHECK([how to export a symbol], + gmp_cv_asm_globl, + [case $host in +@@ -1245,7 +1247,7 @@ + dnl ------------------ + dnl Do we need something after `.global symbol'? + +-AC_DEFUN(GMP_ASM_GLOBL_ATTR, ++AC_DEFUN([GMP_ASM_GLOBL_ATTR], + [AC_CACHE_CHECK([if the export directive needs an attribute], + gmp_cv_asm_globl_attr, + [case $host in +@@ -1276,7 +1278,7 @@ + dnl letting the problem go unnoticed. tests/mpn/t-asmtype.c aims to check + dnl for it. + +-AC_DEFUN(GMP_ASM_TYPE, ++AC_DEFUN([GMP_ASM_TYPE], + [AC_CACHE_CHECK([for assembler .type directive], + gmp_cv_asm_type, + [gmp_cv_asm_type= +@@ -1298,7 +1300,7 @@ + dnl ------------ + dnl Can we say `.size'? + +-AC_DEFUN(GMP_ASM_SIZE, ++AC_DEFUN([GMP_ASM_SIZE], + [AC_CACHE_CHECK([for assembler .size directive], + gmp_cv_asm_size, + [gmp_cv_asm_size= +@@ -1341,7 +1343,7 @@ + dnl HP-UX nm prints an error message (though seems to give a 0 exit) if + dnl there's no symbols at all in an object file, hence the use of "dummy". + +-AC_DEFUN(GMP_ASM_LSYM_PREFIX, ++AC_DEFUN([GMP_ASM_LSYM_PREFIX], + [AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) + AC_REQUIRE([GMP_PROG_NM]) + AC_CACHE_CHECK([what prefix to use for a local label], +@@ -1386,7 +1388,7 @@ + dnl ----------- + dnl How to define a 32-bit word. + +-AC_DEFUN(GMP_ASM_W32, ++AC_DEFUN([GMP_ASM_W32], + [AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1443,7 +1445,7 @@ + dnl %mm1, %mm0"). It seems more trouble than it's worth to work around + dnl this in the code, so just detect and reject. + +-AC_DEFUN(GMP_ASM_X86_MMX, ++AC_DEFUN([GMP_ASM_X86_MMX], + [AC_CACHE_CHECK([if the assembler knows about MMX instructions], + gmp_cv_asm_x86_mmx, + [GMP_TRY_ASSEMBLE( +@@ -1495,7 +1497,7 @@ + dnl GMP_ASM_X86_SHLDL_CL + dnl -------------------- + +-AC_DEFUN(GMP_ASM_X86_SHLDL_CL, ++AC_DEFUN([GMP_ASM_X86_SHLDL_CL], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler takes cl with shldl], + gmp_cv_asm_x86_shldl_cl, +@@ -1522,7 +1524,7 @@ + dnl it's all GMP_ASM_TEXT gives currently. Actually ".text" probably isn't + dnl needed at all, at least for just checking instruction syntax. + +-AC_DEFUN(GMP_ASM_X86_SSE2, ++AC_DEFUN([GMP_ASM_X86_SSE2], + [AC_CACHE_CHECK([if the assembler knows about SSE2 instructions], + gmp_cv_asm_x86_sse2, + [GMP_TRY_ASSEMBLE( +@@ -1585,7 +1587,7 @@ + dnl to get two variables (mcount_nonpic_reg and mcount_nonpic_call say) set + dnl from one block of commands? + +-AC_DEFUN(GMP_ASM_X86_MCOUNT, ++AC_DEFUN([GMP_ASM_X86_MCOUNT], + [AC_REQUIRE([AC_ENABLE_SHARED]) + AC_REQUIRE([AC_PROG_LIBTOOL]) + AC_MSG_CHECKING([how to call x86 mcount]) +@@ -1655,7 +1657,7 @@ + dnl instruction. It takes registers without "%", but a single operand + dnl "clrl %d0" only gives a warning, not an error. + +-AC_DEFUN(GMP_ASM_M68K_INSTRUCTION, ++AC_DEFUN([GMP_ASM_M68K_INSTRUCTION], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([assembler instruction and register style], + gmp_cv_asm_m68k_instruction, +@@ -1684,7 +1686,7 @@ + dnl GMP_ASM_M68K_ADDRESSING + dnl ----------------------- + +-AC_DEFUN(GMP_ASM_M68K_ADDRESSING, ++AC_DEFUN([GMP_ASM_M68K_ADDRESSING], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_M68K_INSTRUCTION]) + AC_CACHE_CHECK([assembler addressing style], +@@ -1721,7 +1723,7 @@ + dnl 16-bits. This applies to the conditional branches "bcc" etc too. + dnl However "dbcc" etc on gas are already only as big as they need to be. + +-AC_DEFUN(GMP_ASM_M68K_BRANCHES, ++AC_DEFUN([GMP_ASM_M68K_BRANCHES], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([assembler shortest branches], + gmp_cv_asm_m68k_branches, +@@ -1752,7 +1754,7 @@ + dnl See also mpn/powerpc32/powerpc-defs.m4 which uses the result of this + dnl test. + +-AC_DEFUN(GMP_ASM_POWERPC_R_REGISTERS, ++AC_DEFUN([GMP_ASM_POWERPC_R_REGISTERS], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler needs r on registers], + gmp_cv_asm_powerpc_r_registers, +@@ -1777,7 +1779,7 @@ + dnl + dnl See also mpn/sparc32/sparc-defs.m4 which uses the result of this test. + +-AC_DEFUN(GMP_ASM_SPARC_REGISTER, ++AC_DEFUN([GMP_ASM_SPARC_REGISTER], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler accepts ".register"], + gmp_cv_asm_sparc_register, +@@ -1795,7 +1797,7 @@ + dnl GMP_C_ATTRIBUTE_CONST + dnl --------------------- + +-AC_DEFUN(GMP_C_ATTRIBUTE_CONST, ++AC_DEFUN([GMP_C_ATTRIBUTE_CONST], + [AC_CACHE_CHECK([whether gcc __attribute__ ((const)) works], + gmp_cv_c_attribute_const, + [AC_TRY_COMPILE([int foo (int x) __attribute__ ((const));], , +@@ -1814,7 +1816,7 @@ + dnl it's ignored. Pretend it doesn't exist in this case, to avoid that + dnl warning. + +-AC_DEFUN(GMP_C_ATTRIBUTE_MALLOC, ++AC_DEFUN([GMP_C_ATTRIBUTE_MALLOC], + [AC_CACHE_CHECK([whether gcc __attribute__ ((malloc)) works], + gmp_cv_c_attribute_malloc, + [cat >conftest.c <<EOF +@@ -1844,7 +1846,7 @@ + dnl -------------------- + dnl Introduced in gcc 2.2, but perhaps not in all Apple derived versions. + +-AC_DEFUN(GMP_C_ATTRIBUTE_MODE, ++AC_DEFUN([GMP_C_ATTRIBUTE_MODE], + [AC_CACHE_CHECK([whether gcc __attribute__ ((mode (XX))) works], + gmp_cv_c_attribute_mode, + [AC_TRY_COMPILE([typedef int SItype __attribute__ ((mode (SI)));], , +@@ -1860,7 +1862,7 @@ + dnl GMP_C_ATTRIBUTE_NORETURN + dnl ------------------------ + +-AC_DEFUN(GMP_C_ATTRIBUTE_NORETURN, ++AC_DEFUN([GMP_C_ATTRIBUTE_NORETURN], + [AC_CACHE_CHECK([whether gcc __attribute__ ((noreturn)) works], + gmp_cv_c_attribute_noreturn, + [AC_TRY_COMPILE([void foo (int x) __attribute__ ((noreturn));], , +@@ -1887,7 +1889,7 @@ + dnl used doesn't have functions or anything, so even an "old" awk should + dnl suffice. + +-AC_DEFUN(GMP_C_DOUBLE_FORMAT, ++AC_DEFUN([GMP_C_DOUBLE_FORMAT], + [AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_PROG_AWK]) + AC_CACHE_CHECK([format of `double' floating point], +@@ -2089,7 +2091,7 @@ + dnl + dnl FIXME: Hopefully autoconf will do this extra itself one day. + +-AC_DEFUN(GMP_C_INLINE, ++AC_DEFUN([GMP_C_INLINE], + [AC_CACHE_CHECK([for inline], gmp_cv_c_inline, + [gmp_cv_c_inline=no + for i in inline __inline__ __inline; do +@@ -2129,7 +2131,7 @@ + dnl "yes" is used in the cache variable if plain "restrict" works, to make + dnl the configure message look nicer. + +-AC_DEFUN(GMP_C_RESTRICT, ++AC_DEFUN([GMP_C_RESTRICT], + [AC_CACHE_CHECK([for restrict], gmp_cv_c_restrict, + [gmp_cv_c_restrict=no + for r in restrict __restrict__ __restrict; do +@@ -2178,7 +2180,7 @@ + dnl ulongs with bits=8*sizeof, so it's academic. Strange systems can + dnl always have the right values put in gmp-mparam.h explicitly. + +-AC_DEFUN(GMP_C_SIZES, ++AC_DEFUN([GMP_C_SIZES], + [BITS_PER_MP_LIMB=[`sed -n 's/^#define BITS_PER_MP_LIMB[ ][ ]*\([0-9]*\).*$/\1/p' $gmp_mparam_source`] + if test -n "$BITS_PER_MP_LIMB" \ + && grep "^#define BYTES_PER_MP_LIMB" $gmp_mparam_source >/dev/null; then : ; +@@ -2199,7 +2201,7 @@ + fi + fi + AC_SUBST(BITS_PER_MP_LIMB) +-define([GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB], ++define([[GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB]], + [[#define __GMP_BITS_PER_MP_LIMB $BITS_PER_MP_LIMB + #define GMP_LIMB_BITS $BITS_PER_MP_LIMB]]) + +@@ -2232,7 +2234,7 @@ + dnl or very likely by the setups for _PROTO in gmp.h. On the other hand + dnl this test is nice and direct, being what we're going to actually use. + +-AC_DEFUN(GMP_C_STDARG, ++AC_DEFUN([GMP_C_STDARG], + [AC_CACHE_CHECK([whether <stdarg.h> exists and works], + gmp_cv_c_stdarg, + [AC_TRY_COMPILE( +@@ -2261,7 +2263,7 @@ + dnl available, and also to use gmp-impl.h for the conditionals detecting + dnl compiler builtin alloca's. + +-AC_DEFUN(GMP_FUNC_ALLOCA, ++AC_DEFUN([GMP_FUNC_ALLOCA], + [AC_REQUIRE([GMP_HEADER_ALLOCA]) + AC_CACHE_CHECK([for alloca (via gmp-impl.h)], + gmp_cv_func_alloca, +@@ -2278,7 +2280,7 @@ + fi + ]) + +-AC_DEFUN(GMP_HEADER_ALLOCA, ++AC_DEFUN([GMP_HEADER_ALLOCA], + [# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works + # for constant arguments. Useless! + AC_CACHE_CHECK([for working alloca.h], +@@ -2299,7 +2301,7 @@ + dnl Decide what to do about --enable-alloca from the user. + dnl This is a macro so it can require GMP_FUNC_ALLOCA. + +-AC_DEFUN(GMP_OPTION_ALLOCA, ++AC_DEFUN([GMP_OPTION_ALLOCA], + [AC_REQUIRE([GMP_FUNC_ALLOCA]) + AC_CACHE_CHECK([how to allocate temporary memory], + gmp_cv_option_alloca, +@@ -2355,7 +2357,7 @@ + dnl + dnl FIXME: Run a program to try this, when doing a native build. + +-AC_DEFUN(GMP_FUNC_SSCANF_WRITABLE_INPUT, ++AC_DEFUN([GMP_FUNC_SSCANF_WRITABLE_INPUT], + [AC_CACHE_CHECK([whether sscanf needs writable input], + gmp_cv_func_sscanf_writable_input, + [case $host in +@@ -2391,7 +2393,7 @@ + dnl not sure which 2.0.x does which), but still puts the correct null + dnl terminated result into the buffer. + +-AC_DEFUN(GMP_FUNC_VSNPRINTF, ++AC_DEFUN([GMP_FUNC_VSNPRINTF], + [AC_REQUIRE([GMP_C_STDARG]) + AC_CHECK_FUNC(vsnprintf, + [gmp_vsnprintf_exists=yes], +@@ -2472,7 +2474,7 @@ + dnl ---------- + dnl Check whether gmp.h recognises the compiler as ANSI capable. + +-AC_DEFUN(GMP_H_ANSI, ++AC_DEFUN([GMP_H_ANSI], + [AC_REQUIRE([AC_PROG_CC_STDC]) + case $ac_cv_prog_cc_stdc in + no) +@@ -2495,7 +2497,7 @@ + dnl If the compiler has an "inline" of some sort, check whether the + dnl #ifdef's in gmp.h recognise it. + +-AC_DEFUN(GMP_H_EXTERN_INLINE, ++AC_DEFUN([GMP_H_EXTERN_INLINE], + [AC_REQUIRE([GMP_C_INLINE]) + case $gmp_cv_c_inline in + no) ;; +@@ -2522,7 +2524,7 @@ + dnl Check whether the #ifdef's in gmp.h recognise when stdio.h has been + dnl included to get FILE. + +-AC_DEFUN(GMP_H_HAVE_FILE, ++AC_DEFUN([GMP_H_HAVE_FILE], + [AC_TRY_COMPILE( + [#include <stdio.h>] + GMP_INCLUDE_GMP_H +@@ -2539,7 +2541,7 @@ + dnl Check whether the #ifdef's in gmp-impl.h recognise IEEE format and + dnl endianness. + +-AC_DEFUN(GMP_IMPL_H_IEEE_FLOATS, ++AC_DEFUN([GMP_IMPL_H_IEEE_FLOATS], + [case $host in + vax*-*-*) + # not IEEE (neither D nor G formats are IEEE) diff --git a/recipes/gmp/gmp-4.1.2/gcc-compile.patch b/recipes/gmp/gmp-4.1.2/gcc-compile.patch new file mode 100644 index 0000000000..4d880123e9 --- /dev/null +++ b/recipes/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/recipes/gmp/gmp-4.1.4/amd64.patch b/recipes/gmp/gmp-4.1.4/amd64.patch new file mode 100644 index 0000000000..67be9dd350 --- /dev/null +++ b/recipes/gmp/gmp-4.1.4/amd64.patch @@ -0,0 +1,14 @@ +--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 ++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 +@@ -738,8 +738,10 @@ + count is only an int. */ + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/recipes/gmp/gmp-4.1.4/configure.patch b/recipes/gmp/gmp-4.1.4/configure.patch new file mode 100644 index 0000000000..4b6c4ec636 --- /dev/null +++ b/recipes/gmp/gmp-4.1.4/configure.patch @@ -0,0 +1,837 @@ +--- gmp-1.4.4/acinclude.m4.orig 2004-09-21 15:03:09.000000000 +0200 ++++ gmp-1.4.4/acinclude.m4 2005-07-18 01:09:00.000000000 +0200 +@@ -21,10 +21,10 @@ + dnl MA 02111-1307, USA. + + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-*]]) + + +@@ -32,7 +32,7 @@ + dnl ---------------------- + dnl Strip entries */subdir from $path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [tmp_path= + for i in $path; do + case $i in +@@ -53,7 +53,7 @@ + dnl GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB starts as a dummy, but gets + dnl redefined in GMP_C_SIZES when the right value is known. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS] + GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB +@@ -61,7 +61,7 @@ + #include "$srcdir/gmp-h.in"] + ]) + +-define(GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB, ++define([GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB], + [[#define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ + #define GMP_LIMB_BITS 123]]) + +@@ -72,7 +72,7 @@ + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -86,7 +86,7 @@ + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1, +@@ -97,13 +97,13 @@ + dnl ------------------------------ + dnl Setup an AC_SUBST of HAVE_FUNC_01 for each argument. + +-AC_DEFUN(GMP_SUBST_CHECK_FUNCS, ++AC_DEFUN([GMP_SUBST_CHECK_FUNCS], + [m4_if([$1],,, + [_GMP_SUBST_CHECK_FUNCS(ac_cv_func_[$1],HAVE_[]m4_translit([$1],[a-z],[A-Z])_01) + GMP_SUBST_CHECK_FUNCS(m4_shift($@))])]) + + dnl Called: _GMP_SUBST_CHECK_FUNCS(cachvar,substvar) +-AC_DEFUN(_GMP_SUBST_CHECK_FUNCS, ++AC_DEFUN([_GMP_SUBST_CHECK_FUNCS], + [case $[$1] in + yes) AC_SUBST([$2],1) ;; + no) [$2]=0 ;; +@@ -115,14 +115,14 @@ + dnl ---------------------------------- + dnl Setup an AC_SUBST of HAVE_FOO_H_01 for each argument. + +-AC_DEFUN(GMP_SUBST_CHECK_HEADERS, ++AC_DEFUN([GMP_SUBST_CHECK_HEADERS], + [m4_if([$1],,, + [_GMP_SUBST_CHECK_HEADERS(ac_cv_header_[]m4_translit([$1],[./],[__]), + HAVE_[]m4_translit([$1],[a-z./],[A-Z__])_01) + GMP_SUBST_CHECK_HEADERS(m4_shift($@))])]) + + dnl Called: _GMP_SUBST_CHECK_HEADERS(cachvar,substvar) +-AC_DEFUN(_GMP_SUBST_CHECK_HEADERS, ++AC_DEFUN([_GMP_SUBST_CHECK_HEADERS], + [case $[$1] in + yes) AC_SUBST([$2],1) ;; + no) [$2]=0 ;; +@@ -145,12 +145,12 @@ + dnl would test whether $major.$minor.$subminor is greater than or equal to + dnl 10.3.1. + +-AC_DEFUN(GMP_COMPARE_GE, ++AC_DEFUN([GMP_COMPARE_GE], + [gmp_compare_ge=no + GMP_COMPARE_GE_INTERNAL($@) + ]) + +-AC_DEFUN(GMP_COMPARE_GE_INTERNAL, ++AC_DEFUN([GMP_COMPARE_GE_INTERNAL], + [ifelse(len([$3]),0, + [if test -n "$1" && test "$1" -ge $2; then + gmp_compare_ge=yes +@@ -184,7 +184,7 @@ + dnl for instance to random.o (and others) on vax-dec-ultrix4.5. Naturally + dnl a user-selected $AR_FLAGS is left unchanged. + +-AC_DEFUN(GMP_PROG_AR, ++AC_DEFUN([GMP_PROG_AR], + [dnl Want to establish $AR before libtool initialization. + AC_BEFORE([$0],[AC_PROG_LIBTOOL]) + gmp_user_AR=$AR +@@ -212,7 +212,7 @@ + dnl CC_FOR_BUILD is used without testing. CC_FOR_BUILD is the new name for + dnl a build system compiler, see configfsf.guess. + +-AC_DEFUN(GMP_PROG_HOST_CC, ++AC_DEFUN([GMP_PROG_HOST_CC], + [AC_BEFORE([$0],[AC_PROG_LIBTOOL]) + AC_REQUIRE([AC_PROG_CC]) + AC_CACHE_CHECK([for HOST_CC build system compiler], +@@ -255,7 +255,7 @@ + dnl FIXME: This can be removed and just AM_PROG_LEX used, one that macro + dnl works properly. + +-AC_DEFUN(GMP_PROG_LEX, ++AC_DEFUN([GMP_PROG_LEX], + [AC_REQUIRE([AC_PROG_LEX]) + if test "$LEX" = :; then + LEX=${am_missing_run}flex +@@ -273,7 +273,7 @@ + dnl + dnl See mpn/asm-defs.m4 for details on the known bad m4s. + +-AC_DEFUN(GMP_PROG_M4, ++AC_DEFUN([GMP_PROG_M4], + [AC_ARG_VAR(M4,[m4 macro processor]) + AC_CACHE_CHECK([for suitable m4], + gmp_cv_prog_m4, +@@ -340,7 +340,7 @@ + dnl Enhancement: Maybe this could be in GMP_PROG_M4, and attempt to prefer + dnl an m4 with a working m4wrap, if it can be found. + +-AC_DEFUN(GMP_M4_M4WRAP_SPURIOUS, ++AC_DEFUN([GMP_M4_M4WRAP_SPURIOUS], + [AC_REQUIRE([GMP_PROG_M4]) + AC_CACHE_CHECK([if m4wrap produces spurious output], + gmp_cv_m4_m4wrap_spurious, +@@ -374,7 +374,7 @@ + dnl A user-selected $NM is always left unchanged. AC_PROG_NM is still run + dnl to get the "checking" message printed though. + +-AC_DEFUN(GMP_PROG_NM, ++AC_DEFUN([GMP_PROG_NM], + [dnl Make sure we're the first to call AC_PROG_NM, so our extra flags are + dnl used by everyone. + AC_BEFORE([$0],[AC_PROG_NM]) +@@ -426,7 +426,7 @@ + dnl will run is that a plain native "./configure" falls back on ABI=32, but + dnl ABI=64 is still available as a cross-compile. + +-AC_DEFUN(GMP_PROG_CC_WORKS, ++AC_DEFUN([GMP_PROG_CC_WORKS], + [AC_MSG_CHECKING([compiler $1]) + cat >conftest.c <<EOF + +@@ -481,7 +481,7 @@ + dnl cache the result. The same "ifndef" style test is used, to avoid + dnl problems with syntax checking cpp's used on NeXT and Apple systems. + +-AC_DEFUN(GMP_PROG_CC_IS_GNU, ++AC_DEFUN([GMP_PROG_CC_IS_GNU], + [cat >conftest.c <<EOF + #ifndef __GNUC__ + choke me +@@ -508,7 +508,7 @@ + dnl there is one then it's well hidden in xlc 3.1 on AIX 4.3, so just grep + dnl the man page printed when xlc is invoked with no arguments. + +-AC_DEFUN(GMP_PROG_CC_IS_XLC, ++AC_DEFUN([GMP_PROG_CC_IS_XLC], + [gmp_command="$1 2>&1 | grep xlc >/dev/null" + if AC_TRY_EVAL(gmp_command); then + AC_MSG_CHECKING([whether $1 is xlc]) +@@ -527,7 +527,7 @@ + dnl This test might be repeated for different compilers, so the result is + dnl not cached. + +-AC_DEFUN(GMP_HPC_HPPA_2_0, ++AC_DEFUN([GMP_HPC_HPPA_2_0], + [AC_MSG_CHECKING([whether HP compiler $1 is good for 64-bits]) + # Bad compiler output: + # ccom: HP92453-01 G.10.32.05 HP C Compiler +@@ -571,7 +571,7 @@ + dnl + dnl There's no caching here, so that different CC's can be tested. + +-AC_DEFUN(GMP_GCC_VERSION_GE, ++AC_DEFUN([GMP_GCC_VERSION_GE], + [tmp_version=`($1 --version) 2>&AC_FD_CC` + echo "$1 --version '$tmp_version'" >&AC_FD_CC + +@@ -608,7 +608,7 @@ + dnl size==1 case in mpn/generic/mode1o.c, and this shows up in + dnl tests/mpz/t-jac.c as a wrong result from mpz_kronecker_ui. + +-AC_DEFUN(GMP_GCC_ARM_UMODSI, ++AC_DEFUN([GMP_GCC_ARM_UMODSI], + [AC_MSG_CHECKING([whether ARM gcc unsigned division works]) + tmp_version=`$1 --version` + echo "$tmp_version" >&AC_FD_CC +@@ -635,7 +635,7 @@ + dnl This macro is used only once, after finalizing a choice of CC, so the + dnl result is cached. + +-AC_DEFUN(GMP_GCC_MARCH_PENTIUMPRO, ++AC_DEFUN([GMP_GCC_MARCH_PENTIUMPRO], + [AC_CACHE_CHECK([whether gcc -march=pentiumpro is good], + gmp_cv_gcc_march_pentiumpro, + [GMP_GCC_VERSION_GE([$1], 2,95,4) +@@ -659,7 +659,7 @@ + dnl gets rearranged or rewritten so the ICE doesn't happen then this can be + dnl removed. + +-AC_DEFUN(GMP_GCC_M68K_OPTIMIZE, ++AC_DEFUN([GMP_GCC_M68K_OPTIMIZE], + [case $host in + m68*-*-*) + if test $1 = gcc; then +@@ -681,7 +681,7 @@ + dnl gcc 2.95 accepts -mabi=32 but it only works on irix5, on irix6 it gives + dnl "cc1: The -mabi=32 support does not work yet". + +-AC_DEFUN(GMP_GCC_MIPS_O32, ++AC_DEFUN([GMP_GCC_MIPS_O32], + [AC_MSG_CHECKING([whether gcc supports o32]) + echo 'int x;' >conftest.c + echo "$1 -mabi=32 -c conftest.c" >&AC_FD_CC +@@ -716,7 +716,7 @@ + dnl watch for that and decide against the option in that case, to avoid + dnl confusing the user. + +-AC_DEFUN(GMP_GCC_NO_CPP_PRECOMP, ++AC_DEFUN([GMP_GCC_NO_CPP_PRECOMP], + [if test "$ccbase" = gcc; then + AC_MSG_CHECKING([compiler $2 $3 -no-cpp-precomp]) + result=no +@@ -752,7 +752,7 @@ + dnl This is intended for use on alpha, since only recent versions of gas + dnl accept -mev67, but there's nothing here that's alpha specific. + +-AC_DEFUN(GMP_GCC_WA_MCPU, ++AC_DEFUN([GMP_GCC_WA_MCPU], + [AC_MSG_CHECKING([assembler $1 $2]) + result=no + cat >conftest.c <<EOF +@@ -783,7 +783,7 @@ + dnl This test is designed to be run repeatedly with different cxx/cxxflags + dnl selections, so the result is not cached. + +-AC_DEFUN(GMP_PROG_CXX_WORKS, ++AC_DEFUN([GMP_PROG_CXX_WORKS], + [AC_MSG_CHECKING([C++ compiler $1]) + cat >conftest.cc <<EOF + #include <iostream> +@@ -817,7 +817,7 @@ + dnl FIXME: The generated config.m4 doesn't get recreated by config.status. + dnl Maybe the relevant "echo"s should go through AC_CONFIG_COMMANDS. + +-AC_DEFUN(GMP_INIT, ++AC_DEFUN([GMP_INIT], + [ifelse([$1], , gmp_configm4=config.m4, gmp_configm4="[$1]") + gmp_tmpconfigm4=cnfm4.tmp + gmp_tmpconfigm4i=cnfm4i.tmp +@@ -834,7 +834,9 @@ + echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +@@ -855,7 +857,7 @@ + dnl having a whole file as a macro argument would overflow the string space + dnl on BSD m4. + +-AC_DEFUN(GMP_FINISH, ++AC_DEFUN([GMP_FINISH], + [AC_REQUIRE([GMP_INIT]) + echo "creating $gmp_configm4" + echo ["d""nl $gmp_configm4. Generated automatically by configure."] > $gmp_configm4 +@@ -889,7 +891,7 @@ + dnl GMP_INCLUDE_MPN(`x86/x86-defs.m4') + dnl + +-AC_DEFUN(GMP_INCLUDE_MPN, ++AC_DEFUN([GMP_INCLUDE_MPN], + [AC_REQUIRE([GMP_INIT]) + echo ["include_mpn(\`$1')"] >> $gmp_tmpconfigm4i + ]) +@@ -905,7 +907,7 @@ + dnl create file config.m4. config.m4 uses `<' and '>' as quote characters + dnl for all defines. + +-AC_DEFUN(GMP_DEFINE, ++AC_DEFUN([GMP_DEFINE], + [AC_REQUIRE([GMP_INIT]) + echo ['define(<$1>, <$2>)'] >>ifelse([$3], [POST], + $gmp_tmpconfigm4p, $gmp_tmpconfigm4) +@@ -920,7 +922,7 @@ + dnl directives inserted by GMP_INCLUDE. Don't forget to invoke GMP_FINISH + dnl to create file config.m4. + +-AC_DEFUN(GMP_DEFINE_RAW, ++AC_DEFUN([GMP_DEFINE_RAW], + [AC_REQUIRE([GMP_INIT]) + echo [$1] >> ifelse([$2], [POST], $gmp_tmpconfigm4p, $gmp_tmpconfigm4) + ]) +@@ -938,7 +940,7 @@ + dnl This is not unlike AC_TRY_COMPILE, but there's no default includes or + dnl anything in "asm-code", everything wanted must be given explicitly. + +-AC_DEFUN(GMP_TRY_ASSEMBLE, ++AC_DEFUN([GMP_TRY_ASSEMBLE], + [cat >conftest.s <<EOF + [$1] + EOF +@@ -960,7 +962,7 @@ + dnl -------------------- + dnl Should a label have a colon or not? + +-AC_DEFUN(GMP_ASM_LABEL_SUFFIX, ++AC_DEFUN([GMP_ASM_LABEL_SUFFIX], + [AC_CACHE_CHECK([what assembly label suffix to use], + gmp_cv_asm_label_suffix, + [case $host in +@@ -984,7 +986,7 @@ + dnl in particular that grepping doesn't work with SunOS 4 native grep since + dnl that grep seems to have trouble with '\0's in files. + +-AC_DEFUN(GMP_ASM_UNDERSCORE, ++AC_DEFUN([GMP_ASM_UNDERSCORE], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1045,7 +1047,7 @@ + dnl ----------------- + dnl Is parameter to `.align' logarithmic? + +-AC_DEFUN(GMP_ASM_ALIGN_LOG, ++AC_DEFUN([GMP_ASM_ALIGN_LOG], + [AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1103,7 +1105,7 @@ + dnl The warning from solaris 2.8 is supressed to stop anyone worrying that + dnl something might be wrong. + +-AC_DEFUN(GMP_ASM_ALIGN_FILL_0x90, ++AC_DEFUN([GMP_ASM_ALIGN_FILL_0x90], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the .align directive accepts an 0x90 fill in .text], + gmp_cv_asm_align_fill_0x90, +@@ -1127,7 +1129,7 @@ + dnl GMP_ASM_TEXT + dnl ------------ + +-AC_DEFUN(GMP_ASM_TEXT, ++AC_DEFUN([GMP_ASM_TEXT], + [AC_CACHE_CHECK([how to switch to text section], + gmp_cv_asm_text, + [case $host in +@@ -1144,7 +1146,7 @@ + dnl ------------ + dnl Can we say `.data'? + +-AC_DEFUN(GMP_ASM_DATA, ++AC_DEFUN([GMP_ASM_DATA], + [AC_CACHE_CHECK([how to switch to data section], + gmp_cv_asm_data, + [case $host in +@@ -1172,7 +1174,7 @@ + dnl where foo is the object file. Might need to check for that if we use + dnl RODATA there. + +-AC_DEFUN(GMP_ASM_RODATA, ++AC_DEFUN([GMP_ASM_RODATA], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1229,7 +1231,7 @@ + dnl ------------- + dnl Can we say `.global'? + +-AC_DEFUN(GMP_ASM_GLOBL, ++AC_DEFUN([GMP_ASM_GLOBL], + [AC_CACHE_CHECK([how to export a symbol], + gmp_cv_asm_globl, + [case $host in +@@ -1245,7 +1247,7 @@ + dnl ------------------ + dnl Do we need something after `.global symbol'? + +-AC_DEFUN(GMP_ASM_GLOBL_ATTR, ++AC_DEFUN([GMP_ASM_GLOBL_ATTR], + [AC_CACHE_CHECK([if the export directive needs an attribute], + gmp_cv_asm_globl_attr, + [case $host in +@@ -1276,7 +1278,7 @@ + dnl letting the problem go unnoticed. tests/mpn/t-asmtype.c aims to check + dnl for it. + +-AC_DEFUN(GMP_ASM_TYPE, ++AC_DEFUN([GMP_ASM_TYPE], + [AC_CACHE_CHECK([for assembler .type directive], + gmp_cv_asm_type, + [gmp_cv_asm_type= +@@ -1298,7 +1300,7 @@ + dnl ------------ + dnl Can we say `.size'? + +-AC_DEFUN(GMP_ASM_SIZE, ++AC_DEFUN([GMP_ASM_SIZE], + [AC_CACHE_CHECK([for assembler .size directive], + gmp_cv_asm_size, + [gmp_cv_asm_size= +@@ -1341,7 +1343,7 @@ + dnl HP-UX nm prints an error message (though seems to give a 0 exit) if + dnl there's no symbols at all in an object file, hence the use of "dummy". + +-AC_DEFUN(GMP_ASM_LSYM_PREFIX, ++AC_DEFUN([GMP_ASM_LSYM_PREFIX], + [AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) + AC_REQUIRE([GMP_PROG_NM]) + AC_CACHE_CHECK([what prefix to use for a local label], +@@ -1386,7 +1388,7 @@ + dnl ----------- + dnl How to define a 32-bit word. + +-AC_DEFUN(GMP_ASM_W32, ++AC_DEFUN([GMP_ASM_W32], + [AC_REQUIRE([GMP_ASM_DATA]) + AC_REQUIRE([GMP_ASM_GLOBL]) + AC_REQUIRE([GMP_ASM_LABEL_SUFFIX]) +@@ -1443,7 +1445,7 @@ + dnl %mm1, %mm0"). It seems more trouble than it's worth to work around + dnl this in the code, so just detect and reject. + +-AC_DEFUN(GMP_ASM_X86_MMX, ++AC_DEFUN([GMP_ASM_X86_MMX], + [AC_CACHE_CHECK([if the assembler knows about MMX instructions], + gmp_cv_asm_x86_mmx, + [GMP_TRY_ASSEMBLE( +@@ -1495,7 +1497,7 @@ + dnl GMP_ASM_X86_SHLDL_CL + dnl -------------------- + +-AC_DEFUN(GMP_ASM_X86_SHLDL_CL, ++AC_DEFUN([GMP_ASM_X86_SHLDL_CL], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler takes cl with shldl], + gmp_cv_asm_x86_shldl_cl, +@@ -1522,7 +1524,7 @@ + dnl it's all GMP_ASM_TEXT gives currently. Actually ".text" probably isn't + dnl needed at all, at least for just checking instruction syntax. + +-AC_DEFUN(GMP_ASM_X86_SSE2, ++AC_DEFUN([GMP_ASM_X86_SSE2], + [AC_CACHE_CHECK([if the assembler knows about SSE2 instructions], + gmp_cv_asm_x86_sse2, + [GMP_TRY_ASSEMBLE( +@@ -1585,7 +1587,7 @@ + dnl to get two variables (mcount_nonpic_reg and mcount_nonpic_call say) set + dnl from one block of commands? + +-AC_DEFUN(GMP_ASM_X86_MCOUNT, ++AC_DEFUN([GMP_ASM_X86_MCOUNT], + [AC_REQUIRE([AC_ENABLE_SHARED]) + AC_REQUIRE([AC_PROG_LIBTOOL]) + AC_MSG_CHECKING([how to call x86 mcount]) +@@ -1655,7 +1657,7 @@ + dnl instruction. It takes registers without "%", but a single operand + dnl "clrl %d0" only gives a warning, not an error. + +-AC_DEFUN(GMP_ASM_M68K_INSTRUCTION, ++AC_DEFUN([GMP_ASM_M68K_INSTRUCTION], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([assembler instruction and register style], + gmp_cv_asm_m68k_instruction, +@@ -1684,7 +1686,7 @@ + dnl GMP_ASM_M68K_ADDRESSING + dnl ----------------------- + +-AC_DEFUN(GMP_ASM_M68K_ADDRESSING, ++AC_DEFUN([GMP_ASM_M68K_ADDRESSING], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_REQUIRE([GMP_ASM_M68K_INSTRUCTION]) + AC_CACHE_CHECK([assembler addressing style], +@@ -1721,7 +1723,7 @@ + dnl 16-bits. This applies to the conditional branches "bcc" etc too. + dnl However "dbcc" etc on gas are already only as big as they need to be. + +-AC_DEFUN(GMP_ASM_M68K_BRANCHES, ++AC_DEFUN([GMP_ASM_M68K_BRANCHES], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([assembler shortest branches], + gmp_cv_asm_m68k_branches, +@@ -1752,7 +1754,7 @@ + dnl See also mpn/powerpc32/powerpc-defs.m4 which uses the result of this + dnl test. + +-AC_DEFUN(GMP_ASM_POWERPC_R_REGISTERS, ++AC_DEFUN([GMP_ASM_POWERPC_R_REGISTERS], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler needs r on registers], + gmp_cv_asm_powerpc_r_registers, +@@ -1777,7 +1779,7 @@ + dnl + dnl See also mpn/sparc32/sparc-defs.m4 which uses the result of this test. + +-AC_DEFUN(GMP_ASM_SPARC_REGISTER, ++AC_DEFUN([GMP_ASM_SPARC_REGISTER], + [AC_REQUIRE([GMP_ASM_TEXT]) + AC_CACHE_CHECK([if the assembler accepts ".register"], + gmp_cv_asm_sparc_register, +@@ -1795,7 +1797,7 @@ + dnl GMP_C_ATTRIBUTE_CONST + dnl --------------------- + +-AC_DEFUN(GMP_C_ATTRIBUTE_CONST, ++AC_DEFUN([GMP_C_ATTRIBUTE_CONST], + [AC_CACHE_CHECK([whether gcc __attribute__ ((const)) works], + gmp_cv_c_attribute_const, + [AC_TRY_COMPILE([int foo (int x) __attribute__ ((const));], , +@@ -1814,7 +1816,7 @@ + dnl it's ignored. Pretend it doesn't exist in this case, to avoid that + dnl warning. + +-AC_DEFUN(GMP_C_ATTRIBUTE_MALLOC, ++AC_DEFUN([GMP_C_ATTRIBUTE_MALLOC], + [AC_CACHE_CHECK([whether gcc __attribute__ ((malloc)) works], + gmp_cv_c_attribute_malloc, + [cat >conftest.c <<EOF +@@ -1844,7 +1846,7 @@ + dnl -------------------- + dnl Introduced in gcc 2.2, but perhaps not in all Apple derived versions. + +-AC_DEFUN(GMP_C_ATTRIBUTE_MODE, ++AC_DEFUN([GMP_C_ATTRIBUTE_MODE], + [AC_CACHE_CHECK([whether gcc __attribute__ ((mode (XX))) works], + gmp_cv_c_attribute_mode, + [AC_TRY_COMPILE([typedef int SItype __attribute__ ((mode (SI)));], , +@@ -1860,7 +1862,7 @@ + dnl GMP_C_ATTRIBUTE_NORETURN + dnl ------------------------ + +-AC_DEFUN(GMP_C_ATTRIBUTE_NORETURN, ++AC_DEFUN([GMP_C_ATTRIBUTE_NORETURN], + [AC_CACHE_CHECK([whether gcc __attribute__ ((noreturn)) works], + gmp_cv_c_attribute_noreturn, + [AC_TRY_COMPILE([void foo (int x) __attribute__ ((noreturn));], , +@@ -1887,7 +1889,7 @@ + dnl used doesn't have functions or anything, so even an "old" awk should + dnl suffice. + +-AC_DEFUN(GMP_C_DOUBLE_FORMAT, ++AC_DEFUN([GMP_C_DOUBLE_FORMAT], + [AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_PROG_AWK]) + AC_CACHE_CHECK([format of `double' floating point], +@@ -2089,7 +2091,7 @@ + dnl + dnl FIXME: Hopefully autoconf will do this extra itself one day. + +-AC_DEFUN(GMP_C_INLINE, ++AC_DEFUN([GMP_C_INLINE], + [AC_CACHE_CHECK([for inline], gmp_cv_c_inline, + [gmp_cv_c_inline=no + for i in inline __inline__ __inline; do +@@ -2129,7 +2131,7 @@ + dnl "yes" is used in the cache variable if plain "restrict" works, to make + dnl the configure message look nicer. + +-AC_DEFUN(GMP_C_RESTRICT, ++AC_DEFUN([GMP_C_RESTRICT], + [AC_CACHE_CHECK([for restrict], gmp_cv_c_restrict, + [gmp_cv_c_restrict=no + for r in restrict __restrict__ __restrict; do +@@ -2178,7 +2180,7 @@ + dnl ulongs with bits=8*sizeof, so it's academic. Strange systems can + dnl always have the right values put in gmp-mparam.h explicitly. + +-AC_DEFUN(GMP_C_SIZES, ++AC_DEFUN([GMP_C_SIZES], + [BITS_PER_MP_LIMB=[`sed -n 's/^#define BITS_PER_MP_LIMB[ ][ ]*\([0-9]*\).*$/\1/p' $gmp_mparam_source`] + if test -n "$BITS_PER_MP_LIMB" \ + && grep "^#define BYTES_PER_MP_LIMB" $gmp_mparam_source >/dev/null; then : ; +@@ -2199,7 +2201,7 @@ + fi + fi + AC_SUBST(BITS_PER_MP_LIMB) +-define([GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB], ++define([[GMP_INCLUDE_GMP_H_BITS_PER_MP_LIMB]], + [[#define __GMP_BITS_PER_MP_LIMB $BITS_PER_MP_LIMB + #define GMP_LIMB_BITS $BITS_PER_MP_LIMB]]) + +@@ -2232,7 +2234,7 @@ + dnl or very likely by the setups for _PROTO in gmp.h. On the other hand + dnl this test is nice and direct, being what we're going to actually use. + +-AC_DEFUN(GMP_C_STDARG, ++AC_DEFUN([GMP_C_STDARG], + [AC_CACHE_CHECK([whether <stdarg.h> exists and works], + gmp_cv_c_stdarg, + [AC_TRY_COMPILE( +@@ -2261,7 +2263,7 @@ + dnl available, and also to use gmp-impl.h for the conditionals detecting + dnl compiler builtin alloca's. + +-AC_DEFUN(GMP_FUNC_ALLOCA, ++AC_DEFUN([GMP_FUNC_ALLOCA], + [AC_REQUIRE([GMP_HEADER_ALLOCA]) + AC_CACHE_CHECK([for alloca (via gmp-impl.h)], + gmp_cv_func_alloca, +@@ -2278,7 +2280,7 @@ + fi + ]) + +-AC_DEFUN(GMP_HEADER_ALLOCA, ++AC_DEFUN([GMP_HEADER_ALLOCA], + [# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works + # for constant arguments. Useless! + AC_CACHE_CHECK([for working alloca.h], +@@ -2299,7 +2301,7 @@ + dnl Decide what to do about --enable-alloca from the user. + dnl This is a macro so it can require GMP_FUNC_ALLOCA. + +-AC_DEFUN(GMP_OPTION_ALLOCA, ++AC_DEFUN([GMP_OPTION_ALLOCA], + [AC_REQUIRE([GMP_FUNC_ALLOCA]) + AC_CACHE_CHECK([how to allocate temporary memory], + gmp_cv_option_alloca, +@@ -2355,7 +2357,7 @@ + dnl + dnl FIXME: Run a program to try this, when doing a native build. + +-AC_DEFUN(GMP_FUNC_SSCANF_WRITABLE_INPUT, ++AC_DEFUN([GMP_FUNC_SSCANF_WRITABLE_INPUT], + [AC_CACHE_CHECK([whether sscanf needs writable input], + gmp_cv_func_sscanf_writable_input, + [case $host in +@@ -2391,7 +2393,7 @@ + dnl not sure which 2.0.x does which), but still puts the correct null + dnl terminated result into the buffer. + +-AC_DEFUN(GMP_FUNC_VSNPRINTF, ++AC_DEFUN([GMP_FUNC_VSNPRINTF], + [AC_REQUIRE([GMP_C_STDARG]) + AC_CHECK_FUNC(vsnprintf, + [gmp_vsnprintf_exists=yes], +@@ -2472,7 +2474,7 @@ + dnl ---------- + dnl Check whether gmp.h recognises the compiler as ANSI capable. + +-AC_DEFUN(GMP_H_ANSI, ++AC_DEFUN([GMP_H_ANSI], + [AC_REQUIRE([AC_PROG_CC_STDC]) + case $ac_cv_prog_cc_stdc in + no) +@@ -2495,7 +2497,7 @@ + dnl If the compiler has an "inline" of some sort, check whether the + dnl #ifdef's in gmp.h recognise it. + +-AC_DEFUN(GMP_H_EXTERN_INLINE, ++AC_DEFUN([GMP_H_EXTERN_INLINE], + [AC_REQUIRE([GMP_C_INLINE]) + case $gmp_cv_c_inline in + no) ;; +@@ -2522,7 +2524,7 @@ + dnl Check whether the #ifdef's in gmp.h recognise when stdio.h has been + dnl included to get FILE. + +-AC_DEFUN(GMP_H_HAVE_FILE, ++AC_DEFUN([GMP_H_HAVE_FILE], + [AC_TRY_COMPILE( + [#include <stdio.h>] + GMP_INCLUDE_GMP_H +@@ -2539,7 +2541,7 @@ + dnl Check whether the #ifdef's in gmp-impl.h recognise IEEE format and + dnl endianness. + +-AC_DEFUN(GMP_IMPL_H_IEEE_FLOATS, ++AC_DEFUN([GMP_IMPL_H_IEEE_FLOATS], + [case $host in + vax*-*-*) + # not IEEE (neither D nor G formats are IEEE) +--- gmp-1.4.4/configure.in.orig 2004-09-21 15:02:43.000000000 +0200 ++++ gmp-1.4.4/configure.in 2005-07-18 01:08:34.000000000 +0200 +@@ -26,15 +26,16 @@ + + + AC_REVISION($Revision: 1.425.2.25 $) +-AC_PREREQ(2.52) +-AC_INIT(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_forbid([^[ \t]*MPFR_CONFIGS]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) ++AC_PREREQ(2.57) ++AC_INIT ++AC_CONFIG_SRCDIR([gmp-impl.h]) ++ ++ ++ ++ ++ ++ ++ + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -56,7 +57,7 @@ + GMP_DEFINE_RAW("define_not_for_expansion(\`HAVE_HOST_CPU_$tmp_host')", POST) + + AM_INIT_AUTOMAKE(gmp, GMP_VERSION) +-AM_CONFIG_HEADER(config.h:config.in) ++AC_CONFIG_HEADERS([config.h:config.in]) + AM_MAINTAINER_MODE + + +@@ -212,7 +213,7 @@ + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -299,7 +300,7 @@ + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1079,7 +1080,7 @@ + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + configure:__line__: User: + ABI=$ABI + CC=$CC +@@ -1391,18 +1392,18 @@ + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC ++ + AC_PROG_CPP + GMP_H_ANSI + + + # The C++ compiler, if desired. + want_cxx=no ++AC_PROG_CXX + if test $enable_cxx != no; then + test_CXXFLAGS=${CXXFLAGS+set} +- AC_PROG_CXX + +- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -1478,7 +1479,7 @@ + fi + + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + configure:__line__: Decided: + ABI=$ABI + CC=$CC +@@ -1720,9 +1721,9 @@ + + # FIXME: Autoconf 2.52 AC_C_BIGENDIAN bombs when cross compiling, but in the + # future the probes will be better and this override can be removed. +-if test "$cross_compiling" = yes; then +- ac_cv_c_bigendian=unknown +-fi ++#if test "$cross_compiling" = yes; then ++# ac_cv_c_bigendian=unknown ++#fi + AC_C_BIGENDIAN + # Enhancement: In the future AC_C_BIGENDIAN will accept these actions as + # parameters. +@@ -2168,7 +2169,7 @@ + + # Configs for demos/calc directory + # +-# AC_SUBST is used here since with AM_CONFIG_HEADER automake would put ++# AC_SUBST is used here since with AC_CONFIG_HEADERS([]) automake would put + # demos/calc in the default $(DEFAULT_INCLUDES) for every directory, + # which would look very strange. Likewise demos/expr below. + # +@@ -2207,7 +2208,7 @@ + # FIXME: Upcoming version of autoconf/automake may not like broken lines. + # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. + +-AC_OUTPUT(Makefile \ ++AC_CONFIG_FILES([Makefile \ + mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ + mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ + tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ +@@ -2217,4 +2218,5 @@ + mpfr/Makefile mpfr/tests/Makefile \ + tune/Makefile \ + demos/Makefile demos/calc/Makefile demos/expr/Makefile \ +- gmp.h:gmp-h.in mp.h:mp-h.in) ++ gmp.h:gmp-h.in mp.h:mp-h.in]) ++AC_OUTPUT diff --git a/recipes/gmp/gmp-4.2.1/amd64.patch b/recipes/gmp/gmp-4.2.1/amd64.patch new file mode 100644 index 0000000000..67be9dd350 --- /dev/null +++ b/recipes/gmp/gmp-4.2.1/amd64.patch @@ -0,0 +1,14 @@ +--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 ++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 +@@ -738,8 +738,10 @@ + count is only an int. */ + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/recipes/gmp/gmp-4.2.1/configure.patch b/recipes/gmp/gmp-4.2.1/configure.patch new file mode 100644 index 0000000000..08f2172479 --- /dev/null +++ b/recipes/gmp/gmp-4.2.1/configure.patch @@ -0,0 +1,195 @@ + acinclude.m4 | 26 ++++++++++++++------------ + configure.in | 24 +++++++++--------------- + 2 files changed, 23 insertions(+), 27 deletions(-) + +Index: gmp-4.2.1/acinclude.m4 +=================================================================== +--- gmp-4.2.1.orig/acinclude.m4 2006-05-04 17:39:01.000000000 +0100 ++++ gmp-4.2.1/acinclude.m4 2006-11-06 20:36:14.000000000 +0000 +@@ -32,20 +32,20 @@ dnl a_out.exe - OpenVMS DEC C called + dnl conftest.exe - various DOS compilers + + +-define(IA64_PATTERN, ++define([IA64_PATTERN], + [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) + + dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all + dnl of which config.sub accepts. (Though none of which are likely to work + dnl with GMP.) + dnl +-define(M68K_PATTERN, ++define([M68K_PATTERN], + [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-*]]) + + +@@ -64,7 +64,7 @@ dnl x86 -> x86 + dnl x86/k6 -> k6 + dnl x86/k6/mmx -> k6_mmx + +-define(GMP_FAT_SUFFIX, ++define([GMP_FAT_SUFFIX], + [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) + + +@@ -73,7 +73,7 @@ dnl ---------------------------------- + dnl Emit code to remove any occurance of ITEM from $LISTVAR. ITEM can be a + dnl shell expression like $foo if desired. + +-define(GMP_REMOVE_FROM_LIST, ++define([GMP_REMOVE_FROM_LIST], + [remove_from_list_tmp= + for remove_from_list_i in $[][$1]; do + if test $remove_from_list_i = [$2]; then :; +@@ -89,12 +89,12 @@ dnl GMP_STRIP_PATH(subdir) + dnl ---------------------- + dnl Strip entries */subdir from $path and $fat_path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [GMP_STRIP_PATH_VAR(path, [$1]) + GMP_STRIP_PATH_VAR(fat_path, [$1]) + ]) + +-define(GMP_STRIP_PATH_VAR, ++define([GMP_STRIP_PATH_VAR], + [tmp_path= + for i in $[][$1]; do + case $i in +@@ -115,7 +115,7 @@ dnl + dnl Dummy values for __GMP_BITS_PER_MP_LIMB and GMP_LIMB_BITS are enough + dnl for all current configure-time uses of gmp.h. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS + #define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ +@@ -131,7 +131,7 @@ dnl Expand at autoconf time to the valu + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -145,7 +145,7 @@ dnl The gmp version number, extracted f + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1, +@@ -1491,7 +1491,9 @@ esac + echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +Index: gmp-4.2.1/configure.in +=================================================================== +--- gmp-4.2.1.orig/configure.in 2006-04-30 00:31:08.000000000 +0100 ++++ gmp-4.2.1/configure.in 2006-11-06 20:39:17.000000000 +0000 +@@ -31,12 +31,6 @@ AC_REVISION($Revision: 1.11 $) + AC_PREREQ(2.59) + AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@swox.com, gmp) + AC_CONFIG_SRCDIR(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -277,7 +271,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1], + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -369,7 +363,7 @@ abilist="standard" + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1498,7 +1492,7 @@ esac + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + User: + ABI=$ABI + CC=$CC +@@ -1869,7 +1863,6 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC + AC_PROG_CPP + GMP_H_ANSI + +@@ -1892,11 +1885,11 @@ AC_SUBST(CCAS) + + # The C++ compiler, if desired. + want_cxx=no ++AC_PROG_CXX + if test $enable_cxx != no; then + test_CXXFLAGS=${CXXFLAGS+set} +- AC_PROG_CXX + +- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -2002,7 +1995,7 @@ case $host in + esac + + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + Decided: + ABI=$ABI + CC=$CC +@@ -3175,7 +3168,7 @@ GMP_FINISH + # FIXME: Upcoming version of autoconf/automake may not like broken lines. + # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. + +-AC_OUTPUT(Makefile \ ++AC_CONFIG_FILES([Makefile \ + mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ + mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ + tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ +@@ -3184,4 +3177,5 @@ AC_OUTPUT(Makefile \ + tests/cxx/Makefile \ + doc/Makefile tune/Makefile \ + demos/Makefile demos/calc/Makefile demos/expr/Makefile \ +- gmp.h:gmp-h.in mp.h:mp-h.in) ++ gmp.h:gmp-h.in mp.h:mp-h.in]) ++AC_OUTPUT diff --git a/recipes/gmp/gmp-4.2.2/02_noexec-stack.diff b/recipes/gmp/gmp-4.2.2/02_noexec-stack.diff new file mode 100644 index 0000000000..613589e347 --- /dev/null +++ b/recipes/gmp/gmp-4.2.2/02_noexec-stack.diff @@ -0,0 +1,74 @@ +Index: acinclude.m4 +=================================================================== +RCS file: /cvsroot/pkg-gmp/gmp/acinclude.m4,v +retrieving revision 1.3 +diff -u -b -B -r1.3 acinclude.m4 +--- gmp-4.2.2.orig/acinclude.m4 14 Apr 2006 22:48:55 -0000 1.3 ++++ gmp-4.2.2/acinclude.m4 15 Apr 2006 06:11:48 -0000 +@@ -1613,6 +1613,34 @@ + ]) + + ++dnl Checks whether the stack can be marked nonexecutable by passing an option ++dnl to the C-compiler when acting on .s files. Appends that option to ASFLAGS. ++dnl This macro is adapted from one found in GLIBC-2.3.5. ++AC_DEFUN([CL_AS_NOEXECSTACK],[ ++dnl AC_REQUIRE([AC_PROG_CC]) GMP uses something else ++AC_CACHE_CHECK([whether assembler supports --noexecstack option], ++cl_cv_as_noexecstack, [dnl ++ cat > conftest.c <<EOF ++void foo() {} ++EOF ++ if AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS ++ -S -o conftest.s conftest.c >/dev/null]) \ ++ && grep -q .note.GNU-stack conftest.s \ ++ && AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -Wa,--noexecstack ++ -c -o conftest.o conftest.s >/dev/null]) ++ then ++ cl_cv_as_noexecstack=yes ++ else ++ cl_cv_as_noexecstack=no ++ fi ++ rm -f conftest*]) ++ if test "$cl_cv_as_noexecstack" = yes; then ++ ASMFLAGS="$ASMFLAGS -Wa,--noexecstack" ++ fi ++ AC_SUBST(ASMFLAGS) ++]) ++ ++ + dnl GMP_ASM_LABEL_SUFFIX + dnl -------------------- + dnl : - is usual. +Index: configure.in +=================================================================== +RCS file: /cvsroot/pkg-gmp/gmp/configure.in,v +retrieving revision 1.3 +diff -u -b -B -r1.3 configure.in +--- gmp-4.2.2.orig/configure.in 14 Apr 2006 22:48:55 -0000 1.3 ++++ gmp-4.2.2/configure.in 15 Apr 2006 06:11:49 -0000 +@@ -2024,6 +2024,8 @@ + # Automake ansi2knr support. + AM_C_PROTOTYPES + ++CL_AS_NOEXECSTACK ++ + GMP_PROG_AR + GMP_PROG_NM + +Index: mpn/Makeasm.am +=================================================================== +RCS file: /cvsroot/pkg-gmp/gmp/mpn/Makeasm.am,v +retrieving revision 1.5 +diff -u -b -B -r1.5 Makeasm.am +--- gmp-4.2.2.orig/mpn/Makeasm.am 14 Apr 2006 22:48:59 -0000 1.5 ++++ gmp-4.2.2/mpn/Makeasm.am 15 Apr 2006 06:11:49 -0000 +@@ -24,7 +24,7 @@ + # COMPILE minus CC. + # + COMPILE_FLAGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ +- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ASMFLAGS) + + # Flags used for preprocessing (in ansi2knr rules). + # diff --git a/recipes/gmp/gmp-4.2.2/03_gnu89-inline.diff b/recipes/gmp/gmp-4.2.2/03_gnu89-inline.diff new file mode 100644 index 0000000000..17e8915fbb --- /dev/null +++ b/recipes/gmp/gmp-4.2.2/03_gnu89-inline.diff @@ -0,0 +1,23 @@ +Index: gmp-h.in +=================================================================== +RCS file: /cvsroot/pkg-gmp/gmp/gmp-h.in,v +retrieving revision 1.4 +diff -u -b -B -r1.4 gmp-h.in +--- gmp-4.2.2.orig/gmp-h.in 15 Sep 2007 23:05:28 -0000 1.4 ++++ gmp-4.2.2/gmp-h.in 9 Apr 2008 05:30:42 -0000 +@@ -418,9 +418,13 @@ + for an inline too, so as to correctly specify "dllimport" on windows, in + case the function is called rather than inlined. + GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 +- inline semantics, unless -fgnu89-inline is used. */ ++ inline semantics, unless -fgnu89-inline is used. ++ ++ With GCC 4.2, `__GNUC_STDC_INLINE__' is never defined (because C99 inline ++ semantics are not supported), but a warning is issued in C99 mode if ++ `__gnu_inline__' is not used. */ + #ifdef __GNUC__ +-#ifdef __GNUC_STDC_INLINE__ ++#if (defined __GNUC_STDC_INLINE__) || (__GNUC__ == 4 && __GNUC_MINOR__ == 2) + #define __GMP_EXTERN_INLINE extern __inline__ __attribute__ ((__gnu_inline__)) + #else + #define __GMP_EXTERN_INLINE extern __inline__ diff --git a/recipes/gmp/gmp-4.2.2/amd64.patch b/recipes/gmp/gmp-4.2.2/amd64.patch new file mode 100644 index 0000000000..67be9dd350 --- /dev/null +++ b/recipes/gmp/gmp-4.2.2/amd64.patch @@ -0,0 +1,14 @@ +--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 ++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 +@@ -738,8 +738,10 @@ + count is only an int. */ + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/recipes/gmp/gmp-4.2.2/configure.patch b/recipes/gmp/gmp-4.2.2/configure.patch new file mode 100644 index 0000000000..2a3b0e6fc1 --- /dev/null +++ b/recipes/gmp/gmp-4.2.2/configure.patch @@ -0,0 +1,207 @@ + acinclude.m4 | 26 ++++++++++++++------------ + configure.in | 24 +++++++++--------------- + 2 files changed, 23 insertions(+), 27 deletions(-) + +Index: gmp-4.2.2/acinclude.m4 +=================================================================== +--- gmp-4.2.2.orig/acinclude.m4 2008-05-01 11:07:43.000000000 +0200 ++++ gmp-4.2.2/acinclude.m4 2008-05-01 11:07:48.000000000 +0200 +@@ -30,20 +30,20 @@ + dnl conftest.exe - various DOS compilers + + +-define(IA64_PATTERN, ++define([IA64_PATTERN], + [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) + + dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all + dnl of which config.sub accepts. (Though none of which are likely to work + dnl with GMP.) + dnl +-define(M68K_PATTERN, ++define([M68K_PATTERN], + [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-*]]) + + +@@ -62,7 +62,7 @@ + dnl x86/k6 -> k6 + dnl x86/k6/mmx -> k6_mmx + +-define(GMP_FAT_SUFFIX, ++define([GMP_FAT_SUFFIX], + [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) + + +@@ -71,7 +71,7 @@ + dnl Emit code to remove any occurance of ITEM from $LISTVAR. ITEM can be a + dnl shell expression like $foo if desired. + +-define(GMP_REMOVE_FROM_LIST, ++define([GMP_REMOVE_FROM_LIST], + [remove_from_list_tmp= + for remove_from_list_i in $[][$1]; do + if test $remove_from_list_i = [$2]; then :; +@@ -87,12 +87,12 @@ + dnl ---------------------- + dnl Strip entries subdir from $path and $fat_path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [GMP_STRIP_PATH_VAR(path, [$1]) + GMP_STRIP_PATH_VAR(fat_path, [$1]) + ]) + +-define(GMP_STRIP_PATH_VAR, ++define([GMP_STRIP_PATH_VAR], + [tmp_path= + for i in $[][$1]; do + case $i in +@@ -113,7 +113,7 @@ + dnl Dummy values for __GMP_BITS_PER_MP_LIMB and GMP_LIMB_BITS are enough + dnl for all current configure-time uses of gmp.h. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS + #define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ +@@ -129,7 +129,7 @@ + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -143,7 +143,7 @@ + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1, +@@ -1489,7 +1489,9 @@ + echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +Index: gmp-4.2.2/configure.in +=================================================================== +--- gmp-4.2.2.orig/configure.in 2008-05-01 11:07:43.000000000 +0200 ++++ gmp-4.2.2/configure.in 2008-05-01 11:07:48.000000000 +0200 +@@ -29,12 +29,6 @@ + AC_PREREQ(2.59) + AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@swox.com, gmp) + AC_CONFIG_SRCDIR(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -275,7 +269,7 @@ + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -367,7 +361,7 @@ + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1518,7 +1512,7 @@ + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + User: + ABI=$ABI + CC=$CC +@@ -1889,7 +1883,6 @@ + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC + AC_PROG_CPP + GMP_H_ANSI + +@@ -1912,11 +1905,11 @@ + + # The C++ compiler, if desired. + want_cxx=no ++AC_PROG_CXX + if test $enable_cxx != no; then + test_CXXFLAGS=${CXXFLAGS+set} +- AC_PROG_CXX + +- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -2022,7 +2015,7 @@ + esac + + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + Decided: + ABI=$ABI + CC=$CC +@@ -3199,7 +3192,7 @@ + # FIXME: Upcoming version of autoconf/automake may not like broken lines. + # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. + +-AC_OUTPUT(Makefile \ ++AC_CONFIG_FILES([Makefile \ + mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ + mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ + tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ +@@ -3208,4 +3201,5 @@ + tests/cxx/Makefile \ + doc/Makefile tune/Makefile \ + demos/Makefile demos/calc/Makefile demos/expr/Makefile \ +- gmp.h:gmp-h.in mp.h:mp-h.in) ++ gmp.h:gmp-h.in mp.h:mp-h.in]) ++AC_OUTPUT +Index: gmp-4.2.2/gmp-h.in +=================================================================== +--- gmp-4.2.2.orig/gmp-h.in 2007-09-03 18:05:40.000000000 +0200 ++++ gmp-4.2.2/gmp-h.in 2008-05-01 11:10:42.000000000 +0200 +@@ -516,6 +516,7 @@ + + #if defined (__cplusplus) + extern "C" { ++#include <cstdio> + #ifdef _GMP_H_HAVE_FILE + using std::FILE; + #endif diff --git a/recipes/gmp/gmp-4.2.2/mpf_set_str_c.diff b/recipes/gmp/gmp-4.2.2/mpf_set_str_c.diff new file mode 100644 index 0000000000..1924611640 --- /dev/null +++ b/recipes/gmp/gmp-4.2.2/mpf_set_str_c.diff @@ -0,0 +1,38 @@ +*** gmp-4.2.2.orig/mpf/set_str.c 30 Aug 2007 18:19:41 -0000 +--- gmp-4.2.2/mpf/set_str.c 10 Dec 2007 04:47:18 -0000 +*************** mpf_set_str (mpf_ptr x, const char *str, +*** 272,277 **** + + if (expptr != 0) +! /* FIXME: Should do some error checking here. */ +! exp_in_base = strtol (expptr, (char **) 0, exp_base); + else + exp_in_base = 0; +--- 272,298 ---- + + if (expptr != 0) +! { +! /* Scan and convert the exponent, in base exp_base. */ +! long dig, neg = -(long) ('-' == expptr[0]); +! expptr -= neg; /* conditional increment */ +! c = (unsigned char) *expptr++; +! dig = digit_value[c]; +! if (dig >= exp_base) +! { +! TMP_FREE; +! return -1; +! } +! exp_in_base = dig; +! c = (unsigned char) *expptr++; +! dig = digit_value[c]; +! while (dig < exp_base) +! { +! exp_in_base = exp_in_base * exp_base; +! exp_in_base += dig; +! c = (unsigned char) *expptr++; +! dig = digit_value[c]; +! } +! exp_in_base = (exp_in_base ^ neg) - neg; /* conditional negation */ +! } + else + exp_in_base = 0; diff --git a/recipes/gmp/gmp-4.2.4/amd64.patch b/recipes/gmp/gmp-4.2.4/amd64.patch new file mode 100644 index 0000000000..67be9dd350 --- /dev/null +++ b/recipes/gmp/gmp-4.2.4/amd64.patch @@ -0,0 +1,14 @@ +--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 ++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 +@@ -738,8 +738,10 @@ + count is only an int. */ + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/recipes/gmp/gmp-4.2.4/configure.patch b/recipes/gmp/gmp-4.2.4/configure.patch new file mode 100644 index 0000000000..8056953230 --- /dev/null +++ b/recipes/gmp/gmp-4.2.4/configure.patch @@ -0,0 +1,195 @@ + acinclude.m4 | 26 ++++++++++++++------------ + configure.in | 24 +++++++++--------------- + 2 files changed, 23 insertions(+), 27 deletions(-) + +Index: gmp-4.2.4/acinclude.m4 +=================================================================== +--- gmp-4.2.4.orig/acinclude.m4 2008-09-05 14:21:12.000000000 +0200 ++++ gmp-4.2.4/acinclude.m4 2008-10-15 23:37:38.062976613 +0200 +@@ -30,20 +30,20 @@ + dnl conftest.exe - various DOS compilers + + +-define(IA64_PATTERN, ++define([IA64_PATTERN], + [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) + + dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all + dnl of which config.sub accepts. (Though none of which are likely to work + dnl with GMP.) + dnl +-define(M68K_PATTERN, ++define([M68K_PATTERN], + [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-*]]) + + +@@ -62,7 +62,7 @@ + dnl x86/k6 -> k6 + dnl x86/k6/mmx -> k6_mmx + +-define(GMP_FAT_SUFFIX, ++define([GMP_FAT_SUFFIX], + [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) + + +@@ -71,7 +71,7 @@ + dnl Emit code to remove any occurance of ITEM from $LISTVAR. ITEM can be a + dnl shell expression like $foo if desired. + +-define(GMP_REMOVE_FROM_LIST, ++define([GMP_REMOVE_FROM_LIST], + [remove_from_list_tmp= + for remove_from_list_i in $[][$1]; do + if test $remove_from_list_i = [$2]; then :; +@@ -87,12 +87,12 @@ + dnl ---------------------- + dnl Strip entries */subdir from $path and $fat_path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [GMP_STRIP_PATH_VAR(path, [$1]) + GMP_STRIP_PATH_VAR(fat_path, [$1]) + ]) + +-define(GMP_STRIP_PATH_VAR, ++define([GMP_STRIP_PATH_VAR], + [tmp_path= + for i in $[][$1]; do + case $i in +@@ -113,7 +113,7 @@ + dnl Dummy values for __GMP_BITS_PER_MP_LIMB and GMP_LIMB_BITS are enough + dnl for all current configure-time uses of gmp.h. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS + #define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ +@@ -129,7 +129,7 @@ + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -143,7 +143,7 @@ + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + ifelse(m4_eval(GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in) > 0),1, +@@ -1506,7 +1506,9 @@ + echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +Index: gmp-4.2.4/configure.in +=================================================================== +--- gmp-4.2.4.orig/configure.in 2008-08-01 19:24:04.000000000 +0200 ++++ gmp-4.2.4/configure.in 2008-10-15 23:35:03.466325346 +0200 +@@ -29,12 +29,6 @@ + AC_PREREQ(2.59) + AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@swox.com, gmp) + AC_CONFIG_SRCDIR(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -278,7 +272,7 @@ + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -370,7 +364,7 @@ + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1525,7 +1519,7 @@ + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + User: + ABI=$ABI + CC=$CC +@@ -1896,7 +1890,6 @@ + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC + AC_PROG_CPP + GMP_H_ANSI + +@@ -1919,11 +1912,11 @@ + + # The C++ compiler, if desired. + want_cxx=no ++AC_PROG_CXX + if test $enable_cxx != no; then + test_CXXFLAGS=${CXXFLAGS+set} +- AC_PROG_CXX + +- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -2029,7 +2022,7 @@ + esac + + +-cat >&AC_FD_CC <<EOF ++cat >&AS_MESSAGE_LOG_FD() <<EOF + Decided: + ABI=$ABI + CC=$CC +@@ -3208,7 +3201,7 @@ + # FIXME: Upcoming version of autoconf/automake may not like broken lines. + # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. + +-AC_OUTPUT(Makefile \ ++AC_CONFIG_FILES([Makefile \ + mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ + mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ + tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ +@@ -3217,4 +3210,5 @@ + tests/cxx/Makefile \ + doc/Makefile tune/Makefile \ + demos/Makefile demos/calc/Makefile demos/expr/Makefile \ +- gmp.h:gmp-h.in mp.h:mp-h.in) ++ gmp.h:gmp-h.in mp.h:mp-h.in]) ++AC_OUTPUT diff --git a/recipes/gmp/gmp-canadian_4.2.4.bb b/recipes/gmp/gmp-canadian_4.2.4.bb new file mode 100644 index 0000000000..27d179a569 --- /dev/null +++ b/recipes/gmp/gmp-canadian_4.2.4.bb @@ -0,0 +1,24 @@ +PV = "4.2.4" +require gmp_${PV}.bb + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gmp-${PV}" +S = "${WORKDIR}/gmp-${PV}" + +inherit canadian-native + +# darwin 'hacks' +EXTRA_OECONF_build-darwin = " --enable-shared " +OLD_STAGING := "${STAGING_BINDIR}" +OLD_TARGET := "${TARGET_SYS}" +OLD_HOST := "${HOST_SYS}" +OLD_BUILD := "${BUILD_SYS}" + +PATH_prepend_build-darwin = "${OLD_STAGING}/${OLD_HOST}:${OLD_STAGING}:" + +TARGET_SYS_build-darwin = "none-apple-darwin" +HOST_SYS_build-darwin = "none-apple-darwin" +BUILD_SYS_build-darwin = "none-apple-darwin" + +do_compile_append_build-darwin() { + oe_runmake check +} diff --git a/recipes/gmp/gmp-native.inc b/recipes/gmp/gmp-native.inc new file mode 100644 index 0000000000..c3d36e0fdb --- /dev/null +++ b/recipes/gmp/gmp-native.inc @@ -0,0 +1,23 @@ +require gmp_${PV}.bb + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gmp-${PV}" +S = "${WORKDIR}/gmp-${PV}" + +inherit native + +# darwin 'hacks' +EXTRA_OECONF_build-darwin = " --enable-shared " +OLD_STAGING := "${STAGING_BINDIR}" +OLD_TARGET := "${TARGET_SYS}" +OLD_HOST := "${HOST_SYS}" +OLD_BUILD := "${BUILD_SYS}" + +PATH_prepend_build-darwin = "${OLD_STAGING}/${OLD_HOST}:${OLD_STAGING}:" + +TARGET_SYS_build-darwin = "none-apple-darwin" +HOST_SYS_build-darwin = "none-apple-darwin" +BUILD_SYS_build-darwin = "none-apple-darwin" + +do_compile_append_build-darwin() { + oe_runmake check +} diff --git a/recipes/gmp/gmp-native_4.1.2.bb b/recipes/gmp/gmp-native_4.1.2.bb new file mode 100644 index 0000000000..14e8587154 --- /dev/null +++ b/recipes/gmp/gmp-native_4.1.2.bb @@ -0,0 +1,2 @@ +PV = "4.1.2" +require gmp-native.inc diff --git a/recipes/gmp/gmp-native_4.2.1.bb b/recipes/gmp/gmp-native_4.2.1.bb new file mode 100644 index 0000000000..8594f2cb0b --- /dev/null +++ b/recipes/gmp/gmp-native_4.2.1.bb @@ -0,0 +1,2 @@ +PV = "4.2.1" +require gmp-native.inc diff --git a/recipes/gmp/gmp-native_4.2.2.bb b/recipes/gmp/gmp-native_4.2.2.bb new file mode 100644 index 0000000000..af85db61f2 --- /dev/null +++ b/recipes/gmp/gmp-native_4.2.2.bb @@ -0,0 +1,2 @@ +PV = "4.2.2" +require gmp-native.inc diff --git a/recipes/gmp/gmp-native_4.2.4.bb b/recipes/gmp/gmp-native_4.2.4.bb new file mode 100644 index 0000000000..1e0ffb4bed --- /dev/null +++ b/recipes/gmp/gmp-native_4.2.4.bb @@ -0,0 +1,2 @@ +PV = "4.2.4" +require gmp-native.inc diff --git a/recipes/gmp/gmp.inc b/recipes/gmp/gmp.inc new file mode 100644 index 0000000000..71ea128bc5 --- /dev/null +++ b/recipes/gmp/gmp.inc @@ -0,0 +1,18 @@ +SECTION = "libs" +DESCRIPTION = "GNU multiprecision arithmetic library" +HOMEPAGE = "http://www.swox.com/gmp/" +LICENSE = "GPL LGPL" + +SRC_URI = "ftp://ftp.gnu.org/gnu/gmp/gmp-${PV}.tar.bz2 \ + file://configure.patch;patch=1 \ + file://amd64.patch;patch=1" + +inherit autotools + +ARM_INSTRUCTION_SET = "arm" + +acpaths = "" + +do_stage () { + autotools_stage_all +} diff --git a/recipes/gmp/gmp_4.1.2.bb b/recipes/gmp/gmp_4.1.2.bb new file mode 100644 index 0000000000..45b2672ee7 --- /dev/null +++ b/recipes/gmp/gmp_4.1.2.bb @@ -0,0 +1,3 @@ +require gmp.inc + +SRC_URI += "file://gcc-compile.patch;patch=1"
\ No newline at end of file diff --git a/recipes/gmp/gmp_4.1.4.bb b/recipes/gmp/gmp_4.1.4.bb new file mode 100644 index 0000000000..0b32f552e7 --- /dev/null +++ b/recipes/gmp/gmp_4.1.4.bb @@ -0,0 +1,5 @@ +require gmp.inc + +PR = "r1" + +SRC_URI += "file://sh4-asmfix.patch;patch=1"
\ No newline at end of file diff --git a/recipes/gmp/gmp_4.2.1.bb b/recipes/gmp/gmp_4.2.1.bb new file mode 100644 index 0000000000..452553beda --- /dev/null +++ b/recipes/gmp/gmp_4.2.1.bb @@ -0,0 +1,6 @@ +PR = "r2" + +SRC_URI_append += "file://sh4-asmfix.patch;patch=1 \ + file://x86-fat.diff;patch=1;pnum=0 " + +require gmp.inc diff --git a/recipes/gmp/gmp_4.2.2.bb b/recipes/gmp/gmp_4.2.2.bb new file mode 100644 index 0000000000..295237f0f3 --- /dev/null +++ b/recipes/gmp/gmp_4.2.2.bb @@ -0,0 +1,8 @@ +PR = "r1" + +SRC_URI_append += "file://02_noexec-stack.diff;patch=1 \ + file://03_gnu89-inline.diff;patch=1 \ + file://mpf_set_str_c.diff;patch=1 \ + file://sh4-asmfix.patch;patch=1 \ + " +require gmp.inc diff --git a/recipes/gmp/gmp_4.2.4.bb b/recipes/gmp/gmp_4.2.4.bb new file mode 100644 index 0000000000..b37c266c4f --- /dev/null +++ b/recipes/gmp/gmp_4.2.4.bb @@ -0,0 +1,5 @@ +PR = "r0" + +SRC_URI_append += "file://sh4-asmfix.patch;patch=1 \ + " +require gmp.inc |