diff -ur gmp-5.0.2.orig/Makefile.am gmp-5.0.2/Makefile.am --- gmp-5.0.2.orig/Makefile.am 2011-05-08 10:49:29.000000000 +0100 +++ gmp-5.0.2/Makefile.am 2011-07-27 17:58:20.000000000 +0100 @@ -93,7 +93,7 @@ LIBMP_LT_AGE = 1 -SUBDIRS = tests mpn mpz mpq mpf printf scanf cxx mpbsd demos tune doc +SUBDIRS = tests mpn mpz mpq mpf printf scanf cxx mpbsd demos tune EXTRA_DIST = configfsf.guess configfsf.sub .gdbinit INSTALL.autoconf diff -ur gmp-5.0.2.orig/Makefile.in gmp-5.0.2/Makefile.in --- gmp-5.0.2.orig/Makefile.in 2011-05-08 10:49:35.000000000 +0100 +++ gmp-5.0.2/Makefile.in 2011-07-27 17:58:13.000000000 +0100 @@ -435,7 +435,7 @@ LIBMP_LT_CURRENT = 4 LIBMP_LT_REVISION = 22 LIBMP_LT_AGE = 1 -SUBDIRS = tests mpn mpz mpq mpf printf scanf cxx mpbsd demos tune doc +SUBDIRS = tests mpn mpz mpq mpf printf scanf cxx mpbsd demos tune # The ansi2knr setups for the build programs are the same as the normal # automake ansi2knr rules, but using $(CC_FOR_BUILD) instead of $(CC). diff -ur gmp-5.0.2.orig/configure gmp-5.0.2/configure --- gmp-5.0.2.orig/configure 2011-05-08 10:49:33.000000000 +0100 +++ gmp-5.0.2/configure 2011-07-27 18:00:11.000000000 +0100 @@ -28478,7 +28478,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_config_files="$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 tests/mpf/Makefile tests/mpn/Makefile tests/mpq/Makefile tests/mpz/Makefile tests/rand/Makefile tests/misc/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" +ac_config_files="$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 tests/mpf/Makefile tests/mpn/Makefile tests/mpq/Makefile tests/mpz/Makefile tests/rand/Makefile tests/misc/Makefile tests/cxx/Makefile tune/Makefile demos/Makefile demos/calc/Makefile demos/expr/Makefile gmp.h:gmp-h.in mp.h:mp-h.in" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -29665,7 +29665,6 @@ "tests/rand/Makefile") CONFIG_FILES="$CONFIG_FILES tests/rand/Makefile" ;; "tests/misc/Makefile") CONFIG_FILES="$CONFIG_FILES tests/misc/Makefile" ;; "tests/cxx/Makefile") CONFIG_FILES="$CONFIG_FILES tests/cxx/Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "tune/Makefile") CONFIG_FILES="$CONFIG_FILES tune/Makefile" ;; "demos/Makefile") CONFIG_FILES="$CONFIG_FILES demos/Makefile" ;; "demos/calc/Makefile") CONFIG_FILES="$CONFIG_FILES demos/calc/Makefile" ;; Only in gmp-5.0.2.orig: doc diff -ur gmp-5.0.2.orig/memory.c gmp-5.0.2/memory.c --- gmp-5.0.2.orig/memory.c 2011-05-08 10:49:29.000000000 +0100 +++ gmp-5.0.2/memory.c 2011-07-27 15:18:21.000000000 +0100 @@ -24,10 +24,21 @@ #include "gmp-impl.h" +/* Patched for GHC: */ +void * stgAllocForGMP (size_t size_in_bytes); +void * stgReallocForGMP (void *ptr, size_t old_size, size_t new_size); +void stgDeallocForGMP (void *ptr, size_t size); + +void * (*__gmp_allocate_func) __GMP_PROTO ((size_t)) = stgAllocForGMP; +void * (*__gmp_reallocate_func) __GMP_PROTO ((void *, size_t, size_t)) + = stgReallocForGMP; +void (*__gmp_free_func) __GMP_PROTO ((void *, size_t)) = stgDeallocForGMP; +/* void * (*__gmp_allocate_func) __GMP_PROTO ((size_t)) = __gmp_default_allocate; void * (*__gmp_reallocate_func) __GMP_PROTO ((void *, size_t, size_t)) = __gmp_default_reallocate; void (*__gmp_free_func) __GMP_PROTO ((void *, size_t)) = __gmp_default_free; +*/ /* Default allocation functions. In case of failure to allocate/reallocate --- gmp-5.0.2.orig/configure.in 2011-08-04 16:35:01.000000000 +1000 +++ gmp-5.0.2/configure.in 2011-08-04 16:39:03.000000000 +1000 @@ -3178,6 +3178,7 @@ AC_DEFINE(HAVE_HOST_CPU_FAMILY_x86_64) case $host in *-*-darwin*) + GMP_DEFINE_RAW(["define(<PIC_ALWAYS>,<yes>)"]) GMP_INCLUDE_MPN(x86_64/darwin.m4) ;; esac ;; --- gmp-5.0.2.orig/configure 2011-08-04 17:38:22.000000000 +1000 +++ gmp-5.0.2/configure 2011-08-04 17:39:04.000000000 +1000 @@ -27567,6 +27567,9 @@ case $host in *-*-darwin*) +echo "define(<PIC_ALWAYS>,<yes>)" >> $gmp_tmpconfigm4 + + echo "include_mpn(\`x86_64/darwin.m4')" >> $gmp_tmpconfigm4i ;; esac --- gmp-5.0.2.orig/mpn/asm-defs.m4 2011-08-04 23:11:19.000000000 +1000 +++ gmp-5.0.2/mpn/asm-defs.m4 2011-08-04 23:11:59.000000000 +1000 @@ -1041,7 +1041,7 @@ dnl systems which are always PIC. PIC_ALWAYS established in config.m4 dnl identifies these for us. -ifelse(`PIC_ALWAYS',`yes',`define(`PIC')') +ifelse(PIC_ALWAYS,yes,`define(`PIC')') dnl Various possible defines passed from the Makefile that are to be tested