source: patches/glibc-2.6-libgcc_eh-1.patch @ 44426cf

clfs-1.2clfs-2.1clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since 44426cf was 44426cf, checked in by Joe Ciccone <jciccone@…>, 17 years ago

Updated to Glibc 2.6. This includes adding a sed to Coreutils and Gzip to rename their internal implementations of futimens which are incompatible with the implementation provided by Glibc. Added a target tripplet based optimization to glibc on x86 and 32bit build on x86_64 so that glibc will build properly now that i386 is no longer supported. Also added a note to the build variables page the i386-pc-linux-gnu is not supported by glibc.

  • Property mode set to 100644
File size: 7.2 KB
RevLine 
[44426cf]1Submitted By: Joe Ciccone <jciccone@linuxfromscratch.org>
2Date: 2006-11-09
3Initial Package Version: 2.5
4Origin: Joe Ciccone
5Upstream Status: Unknown
6Description: Checks to see if libgcc_eh has been provided by gcc. If it has
7             the glibc will attempt to link to it.
8
9diff -Naur glibc-2.6.orig/config.make.in glibc-2.6/config.make.in
10--- glibc-2.6.orig/config.make.in       2007-06-23 21:26:46.000000000 -0400
11+++ glibc-2.6/config.make.in    2007-06-23 21:27:16.000000000 -0400
12@@ -59,6 +59,7 @@
13 have-libaudit = @have_libaudit@
14 have-libcap = @have_libcap@
15 have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
16+have-cc-with-libgcc_eh = @libc_cv_cc_with_libgcc_eh@
17 fno-unit-at-a-time = @fno_unit_at_a_time@
18 bind-now = @bindnow@
19 have-hash-style = @libc_cv_hashstyle@
20diff -Naur glibc-2.6.orig/configure.in glibc-2.6/configure.in
21--- glibc-2.6.orig/configure.in 2007-06-23 21:26:48.000000000 -0400
22+++ glibc-2.6/configure.in      2007-06-23 21:27:16.000000000 -0400
23@@ -1388,6 +1388,23 @@
24     AC_DEFINE(HAVE_CC_WITH_LIBUNWIND)
25   fi
26 
27+  AC_CACHE_CHECK(whether to link against libgcc_eh,
28+                 libc_cv_cc_with_libgcc_eh, [
29+    cat > conftest.c <<EOF
30+int main (void) { return 0; }
31+EOF
32+    if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static -o conftest \
33+       conftest.c -v 2>&1 >/dev/null | grep -q " -lgcc_eh "; then
34+      libc_cv_cc_with_libgcc_eh=yes
35+    else
36+      libc_cv_cc_with_libgcc_eh=no
37+    fi
38+    rm -f conftest*])
39+  AC_SUBST(libc_cv_cc_with_libgcc_eh)
40+  if test $libc_cv_cc_with_libgcc_eh = yes; then
41+    AC_DEFINE(HAVE_CC_WITH_LIBGCC_EH)
42+  fi
43+
44   AC_CACHE_CHECK(for -z nodelete option,
45                 libc_cv_z_nodelete, [dnl
46   cat > conftest.c <<EOF
47diff -Naur glibc-2.6.orig/Makeconfig glibc-2.6/Makeconfig
48--- glibc-2.6.orig/Makeconfig   2007-06-23 21:26:49.000000000 -0400
49+++ glibc-2.6/Makeconfig        2007-06-23 21:27:16.000000000 -0400
50@@ -524,12 +524,20 @@
51   libunwind = -lunwind
52 endif
53 ifneq ($(have-as-needed),yes)
54+ifneq ($(have-cc-with-libgcc_eh),yes)
55+ libgcc_eh := $(libunwind)
56+else
57  libgcc_eh := -lgcc_eh $(libunwind)
58+endif
59 else
60  libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed
61 endif
62 gnulib := -lgcc $(libgcc_eh)
63-static-gnulib := -lgcc -lgcc_eh $(libunwind)
64+ifneq ($(have-cc-with-libgcc_eh),yes)
65+ static-gnulib := -lgcc $(libunwind)
66+else
67+ static-gnulib := -lgcc -lgcc_eh $(libunwind)
68+endif
69 libc.so-gnulib := -lgcc
70 endif
71 ifeq ($(elf),yes)
72diff -Naur glibc-2.6.orig/configure glibc-2.6/configure
73--- glibc-2.6.orig/configure    2007-06-23 21:26:49.000000000 -0400
74+++ glibc-2.6/configure 2007-06-23 21:29:47.000000000 -0400
75@@ -313,7 +313,7 @@
76 # include <unistd.h>
77 #endif"
78 
79-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 enable_check_abi oldest_abi bindnow force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os subdirs add_ons add_on_subdirs base_machine submachine sysnames sysdeps_add_ons INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF SYSINCLUDES CXX_SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO BISON VERSIONING libc_cv_cc_with_libunwind libc_cv_Bgroup libc_cv_libgcc_s_suffix libc_cv_as_needed ASFLAGS_config libc_cv_z_combreloc libc_cv_z_execstack libc_cv_fpie libc_cv_hashstyle fno_unit_at_a_time libc_cv_ssp libc_cv_gnu89_inline libc_cv_have_initfini no_whole_archive exceptions LIBGD have_libaudit have_libcap have_selinux 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 libc_cv_forced_unwind use_ldconfig ldd_rewrite_script elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
80+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 enable_check_abi oldest_abi bindnow force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os subdirs add_ons add_on_subdirs base_machine submachine sysnames sysdeps_add_ons INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF SYSINCLUDES CXX_SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO BISON VERSIONING libc_cv_cc_with_libunwind libc_cv_cc_with_libgcc_eh libc_cv_Bgroup libc_cv_libgcc_s_suffix libc_cv_as_needed ASFLAGS_config libc_cv_z_combreloc libc_cv_z_execstack libc_cv_fpie libc_cv_hashstyle fno_unit_at_a_time libc_cv_ssp libc_cv_gnu89_inline libc_cv_have_initfini no_whole_archive exceptions LIBGD have_libaudit have_libcap have_selinux 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 libc_cv_forced_unwind use_ldconfig ldd_rewrite_script elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
81 ac_subst_files=''
82 
83 # Initialize some variables set by options.
84@@ -5542,6 +5542,33 @@
85 
86   fi
87 
88+  { echo "$as_me:$LINENO: checking whether to link against libgcc_eh" >&5
89+echo $ECHO_N "checking whether to link against libgcc_eh... $ECHO_C" >&6; }
90+if test "${libc_cv_cc_with_libgcc_eh+set}" = set; then
91+  echo $ECHO_N "(cached) $ECHO_C" >&6
92+else
93+
94+    cat > conftest.c <<EOF
95+int main (void) { return 0; }
96+EOF
97+    if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static -o conftest \
98+       conftest.c -v 2>&1 >/dev/null | grep -q " -lgcc_eh "; then
99+      libc_cv_cc_with_libgcc_eh=yes
100+    else
101+      libc_cv_cc_with_libgcc_eh=no
102+    fi
103+    rm -f conftest*
104+fi
105+{ echo "$as_me:$LINENO: result: $libc_cv_cc_with_libgcc_eh" >&5
106+echo "${ECHO_T}$libc_cv_cc_with_libgcc_eh" >&6; }
107+
108+  if test $libc_cv_cc_with_libgcc_eh = yes; then
109+    cat >>confdefs.h <<\_ACEOF
110+#define HAVE_CC_WITH_LIBGCC_EH 1
111+_ACEOF
112+
113+  fi
114+
115   echo "$as_me:$LINENO: checking for -z nodelete option" >&5
116 echo $ECHO_N "checking for -z nodelete option... $ECHO_C" >&6
117 if test "${libc_cv_z_nodelete+set}" = set; then
118@@ -8543,6 +8570,7 @@
119 s,@BISON@,$BISON,;t t
120 s,@VERSIONING@,$VERSIONING,;t t
121 s,@libc_cv_cc_with_libunwind@,$libc_cv_cc_with_libunwind,;t t
122+s,@libc_cv_cc_with_libgcc_eh@,$libc_cv_cc_with_libgcc_eh,;t t
123 s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t
124 s,@libc_cv_libgcc_s_suffix@,$libc_cv_libgcc_s_suffix,;t t
125 s,@libc_cv_as_needed@,$libc_cv_as_needed,;t t
Note: See TracBrowser for help on using the repository browser.