patches/glibc/2.3.6/130-allow-gcc4-wcstol_l.patch
author Johannes Stezenbach <js@sig21.net>
Thu Jul 29 19:47:16 2010 +0200 (2010-07-29)
changeset 2045 fdaa6c7f6dea
parent 402 197e1b49586e
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>
yann@402
     1
Fixes
yann@402
     2
../sysdeps/wordsize-64/wcstol_l.c:11: error: '____wcstoll_l_internal' aliased to undefined symbol '____wcstol_l_internal'
yann@402
     3
../sysdeps/wordsize-64/wcstol_l.c:12: error: '__wcstoll_l' aliased to undefined symbol '__wcstol_l'
yann@402
     4
../sysdeps/wordsize-64/wcstol_l.c:13: error: 'wcstoll_l' aliased to undefined symbol '__wcstol_l'
yann@402
     5
make[2]: *** [/home/dkegel/queue/jobdir.produser_cpsm10/crosstool-0.32/build/x86_64-unknown-linux-gnu/gcc-4.0.0-20050410-glibc-2.3.4/build-glibc/wcsmbs/wcstoul_l.o] Error 1
yann@402
     6
yann@402
     7
https://www.redhat.com/archives/fedora-cvs-commits/2005-March/msg00408.html
yann@402
     8
%changelog
yann@402
     9
+* Fri Mar 25 2005 Jakub Jelinek <jakub redhat com> 2.3.4-18
yann@402
    10
+- fix build on 64-bit arches with new GCC
yann@402
    11
yann@402
    12
Revision 1.4.2.1, Fri Mar 25 11:59:01 2005 UTC (3 weeks, 4 days ago) by jakub
yann@402
    13
Branch: fedora-branch
yann@402
    14
CVS Tags: fedora-glibc-2_3_4-18
yann@402
    15
Changes since 1.4: +2 -0 lines
yann@402
    16
Diff to previous 1.4 (colored)
yann@402
    17
yann@402
    18
	* sysdeps/wordsize-64/strtol_l.c: Don't add aliases if UNSIGNED.
yann@402
    19
	* sysdeps/wordsize-64/wcstol_l.c: Likewise.
yann@402
    20
yann@402
    21
yann@402
    22
http://sourceware.org/cgi-bin/cvsweb.cgi/libc/sysdeps/wordsize-64/strtol_l.c.diff?r1=1.4&r2=1.4.2.1&cvsroot=glibc
yann@402
    23
http://sourceware.org/cgi-bin/cvsweb.cgi/libc/sysdeps/wordsize-64/wcstol_l.c.diff?r1=1.4&r2=1.4.2.1&cvsroot=glibc
yann@402
    24
yann@402
    25
===================================================================
yann@402
    26
RCS file: /cvs/glibc/libc/sysdeps/wordsize-64/strtol_l.c,v
yann@402
    27
retrieving revision 1.4
yann@402
    28
retrieving revision 1.4.2.1
yann@402
    29
diff -u -r1.4 -r1.4.2.1
yann@402
    30
--- libc/sysdeps/wordsize-64/strtol_l.c	2003/03/03 09:45:12	1.4
yann@402
    31
+++ libc/sysdeps/wordsize-64/strtol_l.c	2005/03/25 11:59:01	1.4.2.1
yann@402
    32
@@ -8,7 +8,9 @@
yann@402
    33
 #undef ____strtoll_l_internal
yann@402
    34
 #undef __strtoll_l
yann@402
    35
 #undef strtoll_l
yann@402
    36
+#if !UNSIGNED
yann@402
    37
 strong_alias (____strtol_l_internal, ____strtoll_l_internal)
yann@402
    38
 libc_hidden_ver (____strtol_l_internal, ____strtoll_l_internal)
yann@402
    39
 weak_alias (__strtol_l, __strtoll_l)
yann@402
    40
 weak_alias (__strtol_l, strtoll_l)
yann@402
    41
+#endif
yann@402
    42
===================================================================
yann@402
    43
RCS file: /cvs/glibc/libc/sysdeps/wordsize-64/wcstol_l.c,v
yann@402
    44
retrieving revision 1.4
yann@402
    45
retrieving revision 1.4.2.1
yann@402
    46
diff -u -r1.4 -r1.4.2.1
yann@402
    47
--- libc/sysdeps/wordsize-64/wcstol_l.c	2002/08/08 11:44:51	1.4
yann@402
    48
+++ libc/sysdeps/wordsize-64/wcstol_l.c	2005/03/25 11:59:01	1.4.2.1
yann@402
    49
@@ -8,6 +8,8 @@
yann@402
    50
 #undef ____wcstoll_l_internal
yann@402
    51
 #undef __wcstoll_l
yann@402
    52
 #undef wcstoll_l
yann@402
    53
+#if !UNSIGNED
yann@402
    54
 strong_alias (____wcstol_l_internal, ____wcstoll_l_internal)
yann@402
    55
 weak_alias (__wcstol_l, __wcstoll_l)
yann@402
    56
 weak_alias (__wcstol_l, wcstoll_l)
yann@402
    57
+#endif
yann@402
    58
yann@402
    59
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>