patches/glibc/linuxthreads-2.3.2/glibc-linuxthreads-2.3.2-allow-3.4.patch
changeset 1 eeea35fbf182
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/glibc/linuxthreads-2.3.2/glibc-linuxthreads-2.3.2-allow-3.4.patch	Sat Feb 24 11:00:05 2007 +0000
     1.3 @@ -0,0 +1,100 @@
     1.4 +[ Revised; now also changes CFLAGS-pt-initfini.s as suggested by 
     1.5 +  http://sources.redhat.com/ml/crossgcc/2004-07/msg00169.html
     1.6 +  to not crash when building a debug glibc on mips ]
     1.7 +
     1.8 +Fixes errors like
     1.9 +
    1.10 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.o(.text+0x0):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.S:20: multiple definition of `dummy'
    1.11 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.o(.text+0x0):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.S:42: first defined here
    1.12 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.o(.text+0x18):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.S:37: multiple definition of `_init'
    1.13 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.o(.text+0x30):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.S:76: first defined here
    1.14 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.o(.init+0x1c):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.S:86: multiple definition of `_fini'
    1.15 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.o(.init+0x10):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.S:48: first defined here
    1.16 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.o(.init+0x28):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crti.S:58: undefined reference to `i_am_not_a_leaf'
    1.17 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.o(.init+0x4c):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.S:108: undefined reference to `i_am_not_a_leaf'
    1.18 +mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.o(.init+0x50):build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/crtn.S:109: undefined reference to `i_am_not_a_leaf'
    1.19 +collect2: ld returned 1 exit status
    1.20 +make[2]: *** [build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/linuxthreads/libpthread.so] Error 1
    1.21 +make[2]: Leaving directory `build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/glibc-2.3.2/linuxthreads'
    1.22 +make[1]: *** [linuxthreads/others] Error 2
    1.23 +make[1]: Leaving directory `build/mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/glibc-2.3.2'
    1.24 +make: *** [all] Error 2
    1.25 +
    1.26 +
    1.27 +CVSROOT:	/cvs/glibc
    1.28 +Module name:	libc
    1.29 +Changes by:	aj@sourceware.org	2003-12-02 07:37:29
    1.30 +
    1.31 +Modified files:
    1.32 +	.              : configure.in configure config.make.in 
    1.33 +	csu            : Makefile 
    1.34 +	locale         : Makefile 
    1.35 +	linuxthreads   : Makefile 
    1.36 +	linuxthreads/sysdeps/unix/sysv/linux/x86_64: Makefile 
    1.37 +	nptl           : Makefile 
    1.38 +	nptl/sysdeps/unix/sysv/linux/x86_64: Makefile 
    1.39 +
    1.40 +Log message:
    1.41 +	* config.make.in (fno-unit-at-a-time): Define.
    1.42 +	
    1.43 +	* configure.in: Add test for -fno-unit-at-a-time.
    1.44 +	Fix text for -fpie.
    1.45 +	
    1.46 +	* csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
    1.47 +	* locale/Makefile (CFLAGS-loadlocale.c): Likewise.
    1.48 +	
    1.49 +	For linuxthreads:
    1.50 +	* Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time).
    1.51 +	* sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s):
    1.52 +	Likewise.
    1.53 +	
    1.54 +	For nptl:
    1.55 +	* Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time).
    1.56 +	* sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s):
    1.57 +	Likewise.
    1.58 +
    1.59 +linuxthreads change retrieved with
    1.60 +wget -O foo.patch 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/linuxthreads/Makefile.diff?r1=1.83&r2=1.84&cvsroot=glibc' \
    1.61 +'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile.diff?r1=1.5&r2=1.6&cvsroot=glibc'
    1.62 +
    1.63 +and then rediffed against glibc-2.3.2
    1.64 +And then extended to mips...
    1.65 +
    1.66 +===================================================================
    1.67 +RCS file: /cvs/glibc/libc/linuxthreads/Makefile,v
    1.68 +retrieving revision 1.83
    1.69 +retrieving revision 1.84
    1.70 +diff -u -r1.83 -r1.84
    1.71 +--- libc/linuxthreads/Makefile	2003/10/02 18:48:48	1.83
    1.72 ++++ libc/linuxthreads/Makefile	2003/12/02 07:37:28	1.84
    1.73 +@@ -101,7 +101,7 @@
    1.74 + extra-objs += $(crti-objs) $(crtn-objs)
    1.75 + omit-deps += crti crtn
    1.76 + 
    1.77 +-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions
    1.78 ++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
    1.79 + endif
    1.80 + 
    1.81 + librt-tests = ex10 ex11
    1.82 +===================================================================
    1.83 +RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile,v
    1.84 +retrieving revision 1.5
    1.85 +retrieving revision 1.6
    1.86 +diff -u -r1.5 -r1.6
    1.87 +--- libc/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile	2003/04/11 23:34:02	1.5
    1.88 ++++ libc/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile	2003/12/02 07:37:28	1.6
    1.89 +@@ -1,3 +1,4 @@
    1.90 + ifeq ($(subdir),linuxthreads)
    1.91 +-CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables
    1.92 ++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions \
    1.93 ++		       -fno-asynchronous-unwind-tables $(fno-unit-at-a-time)
    1.94 + endif
    1.95 +--- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/Makefile.old	2004-05-30 18:24:41.000000000 -0700
    1.96 ++++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/Makefile	2004-05-30 18:28:03.000000000 -0700
    1.97 +@@ -1,2 +1,6 @@
    1.98 + # pull in __syscall_error routine
    1.99 + libpthread-routines += sysdep
   1.100 ++
   1.101 ++ifeq ($(subdir),linuxthreads)
   1.102 ++CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
   1.103 ++endif