patches/glibc/2.3.2/glibc-2.3.2-allow-gcc-3.4-nounit.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
     1 Fixes errors like
     2 
     3 # gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crtn.o(.text+0x0):mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crtn.S:20: multiple definition of `dummy'
     4 # gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crti.o(.text+0x0):mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crti.S:42: first defined here
     5 # /gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crti.o(.init+0x28):mipsel-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/csu/crti.S:58: undefined reference to `i_am_not_a_leaf'
     6 
     7 CVSROOT:	/cvs/glibc
     8 Module name:	libc
     9 Changes by:	aj@sourceware.org	2003-12-02 07:37:29
    10 
    11 Modified files:
    12 	.              : configure.in configure config.make.in 
    13 	csu            : Makefile 
    14 	locale         : Makefile 
    15 	linuxthreads   : Makefile 
    16 	linuxthreads/sysdeps/unix/sysv/linux/x86_64: Makefile 
    17 	nptl           : Makefile 
    18 	nptl/sysdeps/unix/sysv/linux/x86_64: Makefile 
    19 
    20 Log message:
    21 	* config.make.in (fno-unit-at-a-time): Define.
    22 	
    23 	* configure.in: Add test for -fno-unit-at-a-time.
    24 	Fix text for -fpie.
    25 	
    26 	* csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
    27 	* locale/Makefile (CFLAGS-loadlocale.c): Likewise.
    28 	
    29 	For linuxthreads:
    30 	* Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time).
    31 	* sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s):
    32 	Likewise.
    33 	
    34 	For nptl:
    35 	* Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time).
    36 	* sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s):
    37 	Likewise.
    38 
    39 Main glibc change retrieved with
    40 wget -O foo.patch 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/config.make.in.diff?r1=1.98&r2=1.99&cvsroot=glibc' \
    41 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/configure.diff?r1=1.393&r2=1.394&cvsroot=glibc' \
    42 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/csu/Makefile.diff?r1=1.71&r2=1.72&cvsroot=glibc' \
    43 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/locale/Makefile.diff?r1=1.71&r2=1.72&cvsroot=glibc'
    44 
    45 and then rediffed against glibc-2.3.2
    46 See also ../glibc-linuxthreads-2.3.2/glibc-linuxthreads-2.3.2-allow-3.4.patch
    47 
    48 diff -aur glibc-2.3.2/config.make.in glibc-2.3.2-nounit/config.make.in
    49 --- glibc-2.3.2/config.make.in	2002-11-14 14:53:32.000000000 -0800
    50 +++ glibc-2.3.2-nounit/config.make.in	2004-05-29 23:19:58.000000000 -0700
    51 @@ -50,6 +50,7 @@
    52  old-glibc-headers = @old_glibc_headers@
    53  unwind-find-fde = @libc_cv_gcc_unwind_find_fde@
    54  have-initfini-array = @libc_cv_initfinit_array@
    55 +fno-unit-at-a-time = @fno_unit_at_a_time@
    56  
    57  static-libgcc = @libc_cv_gcc_static_libgcc@
    58  
    59 diff -aur glibc-2.3.2/configure glibc-2.3.2-nounit/configure
    60 --- glibc-2.3.2/configure	2003-02-26 01:20:48.000000000 -0800
    61 +++ glibc-2.3.2-nounit/configure	2004-05-30 06:22:31.000000000 -0700
    62 @@ -312,7 +312,7 @@
    63  # include <unistd.h>
    64  #endif"
    65  
    66 -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S PWD_P CC MAKE MSGFMT MAKEINFO SED AUTOCONF CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup libc_cv_z_combreloc libc_cv_have_initfini no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
    67 +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S PWD_P CC MAKE MSGFMT MAKEINFO SED AUTOCONF CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup libc_cv_z_combreloc fno_unit_at_a_time libc_cv_have_initfini no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
    68  ac_subst_files=''
    69  
    70  # Initialize some variables set by options.
    71 @@ -4984,6 +4984,35 @@
    72  fi
    73  
    74  
    75 +echo "$as_me:$LINENO: checking for -fno-unit-at-a-time" >&5
    76 +echo $ECHO_N "checking for -fno-unit-at-a-time... $ECHO_C" >&6
    77 +if test "${libc_cv_fno_unit_at_a_time+set}" = set; then
    78 +  echo $ECHO_N "(cached) $ECHO_C" >&6
    79 +else
    80 +  cat > conftest.c <<EOF
    81 +int foo;
    82 +EOF
    83 +if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -fno-unit-at-a-time
    84 +			    conftest.c 1>&5'
    85 +  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
    86 +  (eval $ac_try) 2>&5
    87 +  ac_status=$?
    88 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    89 +  (exit $ac_status); }; }
    90 +then
    91 +  libc_cv_fno_unit_at_a_time=yes
    92 +else
    93 +  libc_cv_fno_unit_at_a_time=no
    94 +fi
    95 +rm -f conftest*
    96 +fi
    97 +echo "$as_me:$LINENO: result: $libc_cv_fno_unit_at_a_time" >&5
    98 +echo "${ECHO_T}$libc_cv_fno_unit_at_a_time" >&6
    99 +if test $libc_cv_fno_unit_at_a_time = yes; then
   100 +  fno_unit_at_a_time=-fno-unit-at-a-time
   101 +fi
   102 +
   103 +
   104  if test $elf != yes; then
   105    echo "$as_me:$LINENO: checking for .init and .fini sections" >&5
   106  echo $ECHO_N "checking for .init and .fini sections... $ECHO_C" >&6
   107 @@ -7236,6 +7265,7 @@
   108  s,@libc_cv_z_initfirst@,$libc_cv_z_initfirst,;t t
   109  s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t
   110  s,@libc_cv_z_combreloc@,$libc_cv_z_combreloc,;t t
   111 +s,@fno_unit_at_a_time@,$fno_unit_at_a_time,;t t
   112  s,@libc_cv_have_initfini@,$libc_cv_have_initfini,;t t
   113  s,@no_whole_archive@,$no_whole_archive,;t t
   114  s,@exceptions@,$exceptions,;t t
   115 diff -aur glibc-2.3.2/csu/Makefile glibc-2.3.2-nounit/csu/Makefile
   116 --- glibc-2.3.2/csu/Makefile	2002-12-31 14:24:37.000000000 -0800
   117 +++ glibc-2.3.2-nounit/csu/Makefile	2004-05-29 23:18:27.000000000 -0700
   118 @@ -99,7 +99,7 @@
   119  $(objpfx)crt%.o: $(objpfx)crt%.S $(objpfx)defs.h
   120  	$(compile.S) -g0 $(ASFLAGS-.os) -o $@
   121  
   122 -CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions
   123 +CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time)
   124  
   125  vpath initfini.c $(full_config_sysdirs)
   126  
   127 diff -aur glibc-2.3.2/locale/Makefile glibc-2.3.2-nounit/locale/Makefile
   128 --- glibc-2.3.2/locale/Makefile	2002-10-17 10:05:53.000000000 -0700
   129 +++ glibc-2.3.2-nounit/locale/Makefile	2004-05-29 23:18:27.000000000 -0700
   130 @@ -100,6 +100,7 @@
   131  CFLAGS-charmap.c = -Wno-write-strings -Wno-char-subscripts
   132  CFLAGS-locfile.c = -Wno-write-strings -Wno-char-subscripts
   133  CFLAGS-charmap-dir.c = -Wno-write-strings
   134 +CFLAGS-loadlocale.c = $(fno-unit-at-a-time)
   135  
   136  # This makes sure -DNOT_IN_libc is passed for all these modules.
   137  cpp-srcs-left := $(addsuffix .c,$(localedef-modules) $(localedef-aux) \