patches/gmp/5.0.1/100-fix-tests-ABI-long-long.patch
author Johannes Stezenbach <js@sig21.net>
Thu Jul 29 19:47:16 2010 +0200 (2010-07-29)
changeset 2045 fdaa6c7f6dea
parent 1873 4477403726db
permissions -rw-r--r--
cc/gcc: add option to compile against static libstdc++, for gcc-4.4 and newer

Idea and know-how taken from CodeSourcery build script.

Normal build:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb77f3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb76e8000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75a1000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb757a000)
/lib/ld-linux.so.2 (0xb77f4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb755c000)

CC_STATIC_LIBSTDCXX=y:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb7843000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76e6000)
/lib/ld-linux.so.2 (0xb7844000)

I made CC_STATIC_LIBSTDCXX default=y since I think
it is always desirable.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
     1 From: http://gmplib.org:8000/gmp-5.0/raw-rev/794410151f5f
     2 
     3 Tweaked to remove the hunk in the Changelog, as it did not apply cleanly
     4 ( and who needs Changelogs? ;-) )
     5 
     6 # HG changeset patch
     7 # User Torbjorn Granlund <tege@gmplib.org>
     8 # Date 1267122532 -3600
     9 # Node ID 794410151f5f966bcb5c3489b6441614990efe7c
    10 # Parent  948660e2e56d9cfaae035082b8fd473985505fb6
    11 Fix a test case to work for long long limbs.
    12 
    13 diff -r 948660e2e56d -r 794410151f5f tests/mpz/t-perfpow.c
    14 --- a/tests/mpz/t-perfpow.c	Thu Feb 25 16:08:21 2010 +0100
    15 +++ b/tests/mpz/t-perfpow.c	Thu Feb 25 19:28:52 2010 +0100
    16 @@ -2,7 +2,7 @@
    17  
    18     Contributed to the GNU project by Torbjorn Granlund and Martin Boij.
    19  
    20 -Copyright 2008, 2009 Free Software Foundation, Inc.
    21 +Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
    22  
    23  This file is part of the GNU MP Library.
    24  
    25 @@ -109,7 +109,8 @@
    26  {
    27    mpz_t n, np, temp, primes[NRP];
    28    int i, j, k, unique, destroy, res;
    29 -  unsigned long int nrprimes, primebits, g, exp[NRP], e;
    30 +  unsigned long int nrprimes, primebits;
    31 +  mp_limb_t g, exp[NRP], e;
    32    gmp_randstate_ptr rands;
    33  
    34    rands = RANDS;
    35