From 6c3caacdcf2ab834970dfb491cca109c2f22c578 Mon Sep 17 00:00:00 2001 From: Robert Schwebel Date: Thu, 18 Sep 2008 20:43:23 +0000 Subject: * patches: we do 2.8 git-svn-id: https://svn.pengutronix.de/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk@7453 f8d472c7-5700-0410-ac5a-87979cec3adf --- .../generic/configure-sane_readelf.diff | 119 ----- .../generic/configure_in-sane_readelf.diff | 35 -- .../glibc-2.8-20080811/generic/cross_timezone.diff | 489 --------------------- .../0030_all_glibc-respect-env-CPPFLAGS.patch | 32 -- .../generic/gentoo/0040_all_glibc-i586-chk.patch | 32 -- ...70_all_glibc-i386-x86_64-revert-clone-cfi.patch | 55 --- .../1010_all_glibc-queue-header-updates.patch | 89 ---- .../gentoo/1030_all_glibc-manual-no-perl.patch | 29 -- .../1040_all_2.3.3-localedef-fix-trampoline.patch | 74 ---- .../generic/gentoo/1050_all_glibc-posix-awk.patch | 23 - .../gentoo/1055_all_glibc-resolv-dynamic.patch | 44 -- .../gentoo/1075_all_glibc-section-comments.patch | 29 -- .../gentoo/1080_all_glibc-no-inline-gmon.patch | 38 -- .../gentoo/1090_all_glibc-2.3.6-fix-pr631.patch | 52 --- .../gentoo/1100_all_glibc-2.3.3-china.patch | 35 -- .../1103_all_glibc-new-valencian-locale.patch | 122 ----- .../1120_all_glibc-2.5-strict-aliasing.patch | 91 ---- .../1130_all_glibc-2.4-undefine-__i686.patch | 49 --- .../3000_all_2.3.6-dl_execstack-PaX-support.patch | 73 --- .../gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch | 35 -- .../6400_all_sh-glibc-2.3.2-fpscr_values.patch | 42 -- .../6415_all_sh-glibc-2.5-no-asm-user-header.patch | 76 ---- .../6416_all_sh-glibc-2.5-no-asm-elf-header.patch | 33 -- .../6645_all_glibc-mips_shn_undef-hack.patch | 29 -- .../generic/glibc-2.5_stdlib_longlong.h | 37 -- .../generic/glibc-configure-apple-as.patch | 47 -- .../generic/glibc-configure-old-gcc.patch | 17 - .../generic/make-install-lib-all.patch | 45 -- patches/glibc-2.8-20080811/generic/series | 30 -- .../6224_all_glibc-2.7-lowlevellock-includes.patch | 28 -- .../generic/gentoo/6225_all_glibc-2.7-cargs6.patch | 31 -- .../gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch | 19 - .../glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c | 33 -- patches/glibc-2.8-ports-20080811/generic/series | 7 - .../sysdeps_mips_mips32_Makefile-bootstrap.diff | 28 -- .../glibc-2.8/generic/configure-sane_readelf.diff | 119 +++++ .../generic/configure_in-sane_readelf.diff | 35 ++ patches/glibc-2.8/generic/cross_timezone.diff | 489 +++++++++++++++++++++ .../0030_all_glibc-respect-env-CPPFLAGS.patch | 32 ++ .../generic/gentoo/0040_all_glibc-i586-chk.patch | 32 ++ ...70_all_glibc-i386-x86_64-revert-clone-cfi.patch | 55 +++ .../1010_all_glibc-queue-header-updates.patch | 89 ++++ .../gentoo/1030_all_glibc-manual-no-perl.patch | 29 ++ .../1040_all_2.3.3-localedef-fix-trampoline.patch | 74 ++++ .../generic/gentoo/1050_all_glibc-posix-awk.patch | 23 + .../gentoo/1055_all_glibc-resolv-dynamic.patch | 44 ++ .../gentoo/1075_all_glibc-section-comments.patch | 29 ++ .../gentoo/1080_all_glibc-no-inline-gmon.patch | 38 ++ .../gentoo/1090_all_glibc-2.3.6-fix-pr631.patch | 52 +++ .../gentoo/1100_all_glibc-2.3.3-china.patch | 35 ++ .../1103_all_glibc-new-valencian-locale.patch | 122 +++++ .../1120_all_glibc-2.5-strict-aliasing.patch | 91 ++++ .../1130_all_glibc-2.4-undefine-__i686.patch | 49 +++ .../3000_all_2.3.6-dl_execstack-PaX-support.patch | 73 +++ .../gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch | 35 ++ .../6400_all_sh-glibc-2.3.2-fpscr_values.patch | 42 ++ .../6415_all_sh-glibc-2.5-no-asm-user-header.patch | 76 ++++ .../6416_all_sh-glibc-2.5-no-asm-elf-header.patch | 33 ++ .../6645_all_glibc-mips_shn_undef-hack.patch | 29 ++ .../glibc-2.8/generic/glibc-2.5_stdlib_longlong.h | 37 ++ .../generic/glibc-configure-apple-as.patch | 47 ++ .../generic/glibc-configure-old-gcc.patch | 17 + .../glibc-2.8/generic/make-install-lib-all.patch | 45 ++ patches/glibc-2.8/generic/series | 30 ++ .../6224_all_glibc-2.7-lowlevellock-includes.patch | 28 ++ .../generic/gentoo/6225_all_glibc-2.7-cargs6.patch | 31 ++ .../gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch | 19 + .../glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c | 33 ++ patches/glibc-ports-2.8/generic/series | 7 + .../sysdeps_mips_mips32_Makefile-bootstrap.diff | 28 ++ 70 files changed, 2047 insertions(+), 2047 deletions(-) delete mode 100644 patches/glibc-2.8-20080811/generic/configure-sane_readelf.diff delete mode 100644 patches/glibc-2.8-20080811/generic/configure_in-sane_readelf.diff delete mode 100644 patches/glibc-2.8-20080811/generic/cross_timezone.diff delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/0040_all_glibc-i586-chk.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1010_all_glibc-queue-header-updates.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1030_all_glibc-manual-no-perl.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1050_all_glibc-posix-awk.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1055_all_glibc-resolv-dynamic.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1075_all_glibc-section-comments.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1080_all_glibc-no-inline-gmon.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1100_all_glibc-2.3.3-china.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1103_all_glibc-new-valencian-locale.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch delete mode 100644 patches/glibc-2.8-20080811/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch delete mode 100644 patches/glibc-2.8-20080811/generic/glibc-2.5_stdlib_longlong.h delete mode 100644 patches/glibc-2.8-20080811/generic/glibc-configure-apple-as.patch delete mode 100644 patches/glibc-2.8-20080811/generic/glibc-configure-old-gcc.patch delete mode 100644 patches/glibc-2.8-20080811/generic/make-install-lib-all.patch delete mode 100644 patches/glibc-2.8-20080811/generic/series delete mode 100644 patches/glibc-2.8-ports-20080811/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch delete mode 100644 patches/glibc-2.8-ports-20080811/generic/gentoo/6225_all_glibc-2.7-cargs6.patch delete mode 100644 patches/glibc-2.8-ports-20080811/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch delete mode 100644 patches/glibc-2.8-ports-20080811/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c delete mode 100644 patches/glibc-2.8-ports-20080811/generic/series delete mode 100644 patches/glibc-2.8-ports-20080811/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff create mode 100644 patches/glibc-2.8/generic/configure-sane_readelf.diff create mode 100644 patches/glibc-2.8/generic/configure_in-sane_readelf.diff create mode 100644 patches/glibc-2.8/generic/cross_timezone.diff create mode 100644 patches/glibc-2.8/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch create mode 100644 patches/glibc-2.8/generic/gentoo/0040_all_glibc-i586-chk.patch create mode 100644 patches/glibc-2.8/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1010_all_glibc-queue-header-updates.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1030_all_glibc-manual-no-perl.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1050_all_glibc-posix-awk.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1055_all_glibc-resolv-dynamic.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1075_all_glibc-section-comments.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1080_all_glibc-no-inline-gmon.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1100_all_glibc-2.3.3-china.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1103_all_glibc-new-valencian-locale.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch create mode 100644 patches/glibc-2.8/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch create mode 100644 patches/glibc-2.8/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch create mode 100644 patches/glibc-2.8/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch create mode 100644 patches/glibc-2.8/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch create mode 100644 patches/glibc-2.8/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch create mode 100644 patches/glibc-2.8/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch create mode 100644 patches/glibc-2.8/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch create mode 100644 patches/glibc-2.8/generic/glibc-2.5_stdlib_longlong.h create mode 100644 patches/glibc-2.8/generic/glibc-configure-apple-as.patch create mode 100644 patches/glibc-2.8/generic/glibc-configure-old-gcc.patch create mode 100644 patches/glibc-2.8/generic/make-install-lib-all.patch create mode 100644 patches/glibc-2.8/generic/series create mode 100644 patches/glibc-ports-2.8/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch create mode 100644 patches/glibc-ports-2.8/generic/gentoo/6225_all_glibc-2.7-cargs6.patch create mode 100644 patches/glibc-ports-2.8/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch create mode 100644 patches/glibc-ports-2.8/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c create mode 100644 patches/glibc-ports-2.8/generic/series create mode 100644 patches/glibc-ports-2.8/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff diff --git a/patches/glibc-2.8-20080811/generic/configure-sane_readelf.diff b/patches/glibc-2.8-20080811/generic/configure-sane_readelf.diff deleted file mode 100644 index cce10eb..0000000 --- a/patches/glibc-2.8-20080811/generic/configure-sane_readelf.diff +++ /dev/null @@ -1,119 +0,0 @@ ---- - configure | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- - 1 file changed, 88 insertions(+), 2 deletions(-) - -Index: glibc-2.8-20080811/configure -=================================================================== ---- glibc-2.8-20080811.orig/configure -+++ glibc-2.8-20080811/configure -@@ -5988,6 +5988,92 @@ _ACEOF - fi - fi - -+ # Extract the first word of "$target_alias-readelf", so it can be a program name with args. -+set dummy $target_alias-readelf; ac_word=$2 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_READELF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$READELF"; then -+ ac_cv_prog_READELF="$READELF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then -+ ac_cv_prog_READELF="$target_alias-readelf" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+IFS=$as_save_IFS -+ -+fi -+fi -+READELF=$ac_cv_prog_READELF -+if test -n "$READELF"; then -+ { echo "$as_me:$LINENO: result: $READELF" >&5 -+echo "${ECHO_T}$READELF" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi -+ -+ -+if test -z "$ac_cv_prog_READELF"; then -+ if test "$build" = "$target"; then -+ ac_ct_READELF=$READELF -+ # Extract the first word of "readelf", so it can be a program name with args. -+set dummy readelf; ac_word=$2 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_ac_ct_READELF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_READELF"; then -+ ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then -+ ac_cv_prog_ac_ct_READELF="readelf" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+IFS=$as_save_IFS -+ -+ test -z "$ac_cv_prog_ac_ct_READELF" && ac_cv_prog_ac_ct_READELF="readelf" -+fi -+fi -+ac_ct_READELF=$ac_cv_prog_ac_ct_READELF -+if test -n "$ac_ct_READELF"; then -+ { echo "$as_me:$LINENO: result: $ac_ct_READELF" >&5 -+echo "${ECHO_T}$ac_ct_READELF" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi -+ -+ READELF=ac_ct_READELF -+ else -+ READELF="readelf" -+ fi -+else -+ READELF="$ac_cv_prog_READELF" -+fi -+ -+ - { echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5 - echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6; } - if test "${libc_cv_initfini_array+set}" = set; then -@@ -6007,7 +6093,7 @@ EOF - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } - then -- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then -+ if ${READELF} -S conftest | fgrep INIT_ARRAY > /dev/null; then - libc_cv_initfini_array=yes - else - libc_cv_initfini_array=no -@@ -6307,7 +6393,7 @@ EOF - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } - then -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if ${READELF} -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/patches/glibc-2.8-20080811/generic/configure_in-sane_readelf.diff b/patches/glibc-2.8-20080811/generic/configure_in-sane_readelf.diff deleted file mode 100644 index ee7a727..0000000 --- a/patches/glibc-2.8-20080811/generic/configure_in-sane_readelf.diff +++ /dev/null @@ -1,35 +0,0 @@ ---- - configure.in | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -Index: glibc-2.8-20080811/configure.in -=================================================================== ---- glibc-2.8-20080811.orig/configure.in -+++ glibc-2.8-20080811/configure.in -@@ -1354,6 +1354,8 @@ EOF - fi - fi - -+ AC_CHECK_TARGET_TOOL([READELF],[readelf],[readelf],[$PATH]) -+ - AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support, - libc_cv_initfini_array, [dnl - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then -- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then -+ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then - libc_cv_initfini_array=yes - else - libc_cv_initfini_array=no -@@ -1550,7 +1552,7 @@ dnl cross-platform since the gcc used ca - dnl introducing new options this is not easily doable. Instead use a tool - dnl which always is cross-platform: readelf. To detect whether -z combreloc - dnl look for a section named .rel.dyn. -- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then - libc_cv_z_combreloc=yes - else - libc_cv_z_combreloc=no diff --git a/patches/glibc-2.8-20080811/generic/cross_timezone.diff b/patches/glibc-2.8-20080811/generic/cross_timezone.diff deleted file mode 100644 index d85d241..0000000 --- a/patches/glibc-2.8-20080811/generic/cross_timezone.diff +++ /dev/null @@ -1,489 +0,0 @@ -From: http://trac.cross-lfs.org/browser/branches/clfs-sysroot/patches/glibc-2.6.1-sysdep_cancel-1.patch - -Submitted By: Joe Ciccone -Date: 2006-11-26 -Initial Package Version: 2.5 -Origin: Joe Ciccone -Upstream Status: Unknown -Description: Adds native compile support to the build system then uses that - support to build zic-native, for installing timezone info, - rpcgen-native, for building librpcsvc.a, and localedef-native, - for creating the locale-archive. - ---- - Makeconfig | 13 +++++++++++++ - Makerules | 9 ++++++++- - Rules | 9 ++++++++- - iconv/Makefile | 4 ++++ - iconvdata/Makefile | 18 ++++++++++-------- - include-native/bits/libc-tsd.h | 3 +++ - include-native/config.h | 1 + - include-native/gnu/stubs.h | 1 + - include-native/intl/loadinfo.h | 4 ++++ - include-native/libintl.h | 11 +++++++++++ - include-native/symbol-hacks.h | 1 + - include-native/sys/types.h | 9 +++++++++ - include-native/tls.h | 11 +++++++++++ - locale/Makefile | 9 +++++++++ - localedata/Makefile | 5 +++++ - malloc/Makefile | 5 ----- - sunrpc/Makefile | 23 ++++++++++++++++++----- - timezone/Makefile | 14 ++++++++++---- - 18 files changed, 126 insertions(+), 24 deletions(-) - -Index: glibc-2.7/iconv/Makefile -=================================================================== ---- glibc-2.7.orig/iconv/Makefile -+++ glibc-2.7/iconv/Makefile -@@ -57,6 +57,9 @@ distribute = gconv_builtin.h gconv_int.h - iconvconfig.h - - others = iconv_prog iconvconfig -+ifneq ($(cross-compiling),no) -+others-native = iconvconfig-native -+endif - install-others-programs = $(inst_bindir)/iconv - install-sbin = iconvconfig - -@@ -79,6 +82,7 @@ $(inst_bindir)/iconv: $(objpfx)iconv_pro - - $(objpfx)iconv_prog: $(iconv_prog-modules:%=$(objpfx)%.o) - $(objpfx)iconvconfig: $(iconvconfig-modules:%=$(objpfx)%.o) -+$(objpfx)iconvconfig-native: $(iconvconfig-modules:%=$(objpfx)%-native.o) - - ifneq ($(cross-compiling),yes) - xtests: test-iconvconfig -Index: glibc-2.7/iconvdata/Makefile -=================================================================== ---- glibc-2.7.orig/iconvdata/Makefile -+++ glibc-2.7/iconvdata/Makefile -@@ -315,23 +315,25 @@ $(objpfx)iso8859-7jp.stmp: $(charmaps)/I - - headers: $(addprefix $(objpfx), $(generated-modules:=.h)) - -+ifeq ($(cross-compiling),no) -+iconvconfig-cmd = LC_ALL=C LANGUAGE=C \ -+ $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ -+ $(common-objpfx)iconv/iconvconfig -+else -+iconvconfig-cmd = LC_ALL=C LANGUAGE=C \ -+ $(common-objpfx)iconv/iconvconfig-native -+endif -+ - $(addprefix $(inst_gconvdir)/, $(modules.so)): \ - $(inst_gconvdir)/%: $(objpfx)% $(+force) - $(do-install-program) - $(inst_gconvdir)/gconv-modules: gconv-modules $(+force) - $(do-install) --ifeq (no,$(cross-compiling)) - # Update the $(prefix)/lib/gconv/gconv-modules.cache file. This is necessary - # if this libc has more gconv modules than the previously installed one. - if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \ -- LC_ALL=C LANGUAGE=C \ -- $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ -- $(common-objpfx)iconv/iconvconfig \ -- $(addprefix --prefix=,$(install_root)); \ -+ $(iconvconfig-cmd) $(addprefix --prefix=,$(install_root)); \ - fi --else -- @echo '*@*@*@ You should recreate $(inst_gconvdir)/gconv-modules.cache' --endif - - endif # build-shared = yes - -Index: glibc-2.7/include-native/bits/libc-tsd.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/bits/libc-tsd.h -@@ -0,0 +1,3 @@ -+#ifndef __libc_tsd_define -+#define __libc_tsd_define(A,B) -+#endif -Index: glibc-2.7/include-native/config.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/config.h -@@ -0,0 +1 @@ -+/* Empty */ -Index: glibc-2.7/include-native/gnu/stubs.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/gnu/stubs.h -@@ -0,0 +1 @@ -+/* Empty */ -Index: glibc-2.7/include-native/intl/loadinfo.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/intl/loadinfo.h -@@ -0,0 +1,4 @@ -+#ifndef LOADINFO_H -+#define LOADINFO_H -+struct loaded_l10nfile; -+#endif -Index: glibc-2.7/include-native/libintl.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/libintl.h -@@ -0,0 +1,11 @@ -+#ifndef _ -+#define _(X) (X) -+#endif -+ -+#ifndef N_ -+#define N_(X) (X) -+#endif -+ -+#ifndef _libc_intl_domainname -+#define _libc_intl_domainname "libc" -+#endif -Index: glibc-2.7/include-native/symbol-hacks.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/symbol-hacks.h -@@ -0,0 +1 @@ -+/* Empty */ -Index: glibc-2.7/include-native/tls.h -=================================================================== ---- /dev/null -+++ glibc-2.7/include-native/tls.h -@@ -0,0 +1,11 @@ -+#ifndef _include_tls_h -+#define _include_tls_h 1 -+ -+#if USE_TLS && HAVE___THREAD \ -+ && (!defined NOT_IN_libc || defined IS_IN_libpthread) -+# define USE___THREAD 1 -+#else -+# define USE___THREAD 0 -+#endif -+ -+#endif -Index: glibc-2.7/locale/Makefile -=================================================================== ---- glibc-2.7.orig/locale/Makefile -+++ glibc-2.7/locale/Makefile -@@ -44,6 +44,9 @@ categories = ctype messages monetary num - aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \ - xlocale localename global-locale coll-lookup - others = localedef locale -+ifneq ($(cross-compiling),no) -+others-native = localedef-native -+endif - #others-static = localedef locale - install-bin = localedef locale - extra-objs = $(localedef-modules:=.o) $(localedef-aux:=.o) \ -@@ -81,6 +84,12 @@ $(objpfx)localedef: $(localedef-aux:%=$( - $(objpfx)locale: $(locale-modules:%=$(objpfx)%.o) - $(objpfx)localedef $(objpfx)locale: $(lib-modules:%=$(objpfx)%.o) - -+ifneq ($(cross-compiling),no) -+$(objpfx)localedef-native: $(localedef-modules:%=$(objpfx)%-native.o) -+$(objpfx)localedef-native: $(localedef-aux:%=$(objpfx)%-native.o) -+$(objpfx)localedef-native: $(lib-modules:%=$(objpfx)%-native.o) -+endif -+ - C-translit.h: C-translit.h.in gen-translit.pl - $(PERL) gen-translit.pl < $< > $@.tmp - mv -f $@.tmp $@ -Index: glibc-2.7/localedata/Makefile -=================================================================== ---- glibc-2.7.orig/localedata/Makefile -+++ glibc-2.7/localedata/Makefile -@@ -206,8 +206,13 @@ include SUPPORTED - INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES)) - - # Sometimes the whole collection of locale files should be installed. -+ifeq ($(cross-compiling),no) - LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ - $(common-objpfx)elf/ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef -+else -+LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ -+$(common-objpfx)locale/localedef-native -+endif - install-locales: $(INSTALL-SUPPORTED-LOCALES) - - install-locales-dir: -Index: glibc-2.7/Makeconfig -=================================================================== ---- glibc-2.7.orig/Makeconfig -+++ glibc-2.7/Makeconfig -@@ -445,6 +445,12 @@ ifndef +link-static - $(common-objpfx)libc% $(+postinit),$^) \ - $(link-extra-libs-static) $(link-libc-static) $(+postctor) $(+postinit) - endif -+# Command for linking programs against the host system. -+ifndef +link-native -++link-native = $(BUILD_CC) -g -o $@ $^ \ -+ $(LDFLAGS) $(LDFLAGS-$(@F)) \ -+ $(link-extra-libs) -+endif - # Command for statically linking bounded-pointer programs with the C library. - ifndef +link-bounded - +link-bounded = $(CC) -nostdlib -nostartfiles -static -fbounded-pointers -o $@ \ -@@ -658,6 +664,8 @@ endif # $(+cflags) == "" - $(+sysdep-includes) $(includes) \ - $(patsubst %/,-I%,$(..)) $(libio-include) -I. $(sysincludes) - -++includes-native = -I$(..)include-native -I$(objpfx) -I. -+ - # Since libio has several internal header files, we use a -I instead - # of many little headers in the include directory. - libio-include = -I$(..)libio -@@ -672,10 +680,15 @@ CPPFLAGS = $($(subdir)-CPPFLAGS) $(+incl - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( -+ -+#ifndef __u_char_defined -+# define __u_char_defined -+#endif -+#ifndef __daddr_t_defined -+# define __daddr_t_defined -+#endif -+ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch b/patches/glibc-2.8-20080811/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch deleted file mode 100644 index a0e2dbd..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch +++ /dev/null @@ -1,32 +0,0 @@ -Respect environment CPPFLAGS when we run ./configure so we can inject -random -D things without having to set CFLAGS/ASFLAGS - ---- - Makeconfig | 1 + - config.make.in | 1 + - 2 files changed, 2 insertions(+) - -Index: glibc-2.8-20080811/Makeconfig -=================================================================== ---- glibc-2.8-20080811.orig/Makeconfig -+++ glibc-2.8-20080811/Makeconfig -@@ -673,6 +673,7 @@ CPPFLAGS = $($(subdir)-CPPFLAGS) $(+incl - $(foreach lib,$(libof-$(basename $(@F))) \ - $(libof-$( - - * sysdeps/i386/i586/memcpy_chk.S: New file. - * sysdeps/i386/i586/mempcpy_chk.S: Likewise. - * sysdeps/i386/i586/memset_chk.S: Likewise. - ---- - i386/i586/memcpy_chk.S | 1 + - i386/i586/mempcpy_chk.S | 1 + - i386/i586/memset_chk.S | 1 + - 3 files changed, 3 insertions(+) - -Index: glibc-2.8-20080811/i386/i586/memcpy_chk.S -=================================================================== ---- /dev/null -+++ glibc-2.8-20080811/i386/i586/memcpy_chk.S -@@ -0,0 +1 @@ -+#include -Index: glibc-2.8-20080811/i386/i586/mempcpy_chk.S -=================================================================== ---- /dev/null -+++ glibc-2.8-20080811/i386/i586/mempcpy_chk.S -@@ -0,0 +1 @@ -+#include -Index: glibc-2.8-20080811/i386/i586/memset_chk.S -=================================================================== ---- /dev/null -+++ glibc-2.8-20080811/i386/i586/memset_chk.S -@@ -0,0 +1 @@ -+#include diff --git a/patches/glibc-2.8-20080811/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch b/patches/glibc-2.8-20080811/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch deleted file mode 100644 index e79e024..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch +++ /dev/null @@ -1,55 +0,0 @@ -revert cfi additions to clone on i386/x86_64 to workaround problems in -gcc's unwinder code. this is not a bug in glibc, it triggers problems -elsewhere. this cfi code does not gain us a whole lot anyways. - -http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html - ---- - sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- - sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- - 2 files changed, 8 deletions(-) - -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/i386/clone.S -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/i386/clone.S -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/i386/clone.S -@@ -120,9 +120,6 @@ L(pseudo_end): - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (eip); - /* Note: %esi is zero. */ - movl %esi,%ebp /* terminate the stack frame */ - #ifdef RESET_PID -@@ -155,7 +152,6 @@ L(nomoregetpid): - jmp L(haspid) - .previous - #endif -- cfi_endproc; - - cfi_startproc - PSEUDO_END (BP_SYM (__clone)) -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/x86_64/clone.S -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/x86_64/clone.S -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/x86_64/clone.S -@@ -89,9 +89,6 @@ L(pseudo_end): - ret - - L(thread_start): -- cfi_startproc; -- /* Clearing frame pointer is insufficient, use CFI. */ -- cfi_undefined (rip); - /* Clear the frame pointer. The ABI suggests this be done, to mark - the outermost frame obviously. */ - xorl %ebp, %ebp -@@ -116,7 +113,6 @@ L(thread_start): - /* Call exit with return value from function call. */ - movq %rax, %rdi - call HIDDEN_JUMPTARGET (_exit) -- cfi_endproc; - - cfi_startproc; - PSEUDO_END (BP_SYM (__clone)) diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1010_all_glibc-queue-header-updates.patch b/patches/glibc-2.8-20080811/generic/gentoo/1010_all_glibc-queue-header-updates.patch deleted file mode 100644 index 9110f1c..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1010_all_glibc-queue-header-updates.patch +++ /dev/null @@ -1,89 +0,0 @@ -grab some updates from FreeBSD - -http://bugs.gentoo.org/201979 - ---- - misc/sys/queue.h | 37 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 37 insertions(+) - -Index: glibc-2.8-20080811/misc/sys/queue.h -=================================================================== ---- glibc-2.8-20080811.orig/misc/sys/queue.h -+++ glibc-2.8-20080811/misc/sys/queue.h -@@ -136,6 +136,11 @@ struct { \ - (var); \ - (var) = ((var)->field.le_next)) - -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - /* - * List access methods. - */ -@@ -197,6 +202,16 @@ struct { \ - #define SLIST_FOREACH(var, head, field) \ - for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) - -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ -+ for ((varp) = &SLIST_FIRST((head)); \ -+ ((var) = *(varp)) != NULL; \ -+ (varp) = &SLIST_NEXT((var), field)) -+ - /* - * Singly-linked List access methods. - */ -@@ -242,6 +257,12 @@ struct { \ - (head)->stqh_last = &(elm)->field.stqe_next; \ - } while (/*CONSTCOND*/0) - -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) -+ - #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ - if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ - (head)->stqh_last = &(elm)->field.stqe_next; \ -@@ -286,6 +307,11 @@ struct { \ - #define STAILQ_FIRST(head) ((head)->stqh_first) - #define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) - -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - - /* - * Simple queue definitions. -@@ -437,11 +463,22 @@ struct { \ - (var); \ - (var) = ((var)->field.tqe_next)) - -+#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = TAILQ_FIRST((head)); \ -+ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ - #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ - for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ - (var); \ - (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) - -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ -+ (var) = (tvar)) -+ -+ - #define TAILQ_CONCAT(head1, head2, field) do { \ - if (!TAILQ_EMPTY(head2)) { \ - *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1030_all_glibc-manual-no-perl.patch b/patches/glibc-2.8-20080811/generic/gentoo/1030_all_glibc-manual-no-perl.patch deleted file mode 100644 index 5b11ce0..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1030_all_glibc-manual-no-perl.patch +++ /dev/null @@ -1,29 +0,0 @@ -If we're using a cvs snapshot which updates the source files, and -perl isn't installed yet, then we can't regen the docs. Not a big -deal, so just whine a little and continue on our merry way. - -http://bugs.gentoo.org/60132 - ---- - manual/Makefile | 5 +++++ - 1 file changed, 5 insertions(+) - -Index: glibc-2.8-20080811/manual/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/manual/Makefile -+++ glibc-2.8-20080811/manual/Makefile -@@ -104,9 +104,14 @@ dir-add.texi: xtract-typefun.awk $(texis - libm-err.texi: stamp-libm-err - stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ - $(dir)/libm-test-ulps)) -+ifneq ($(PERL),no) - pwd=`pwd`; \ - $(PERL) $< $$pwd/.. > libm-err-tmp - $(move-if-change) libm-err-tmp libm-err.texi -+else -+ echo "Unable to rebuild math docs, no perl installed" -+ touch libm-err.texi -+endif - touch $@ - - # Generate Texinfo files from the C source for the example programs. diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch b/patches/glibc-2.8-20080811/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch deleted file mode 100644 index 636dda6..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch +++ /dev/null @@ -1,74 +0,0 @@ -#! /bin/sh -e - -# DP: Description: Fix localedef segfault when run under exec-shield, -# PaX or similar. (#231438, #198099) -# DP: Dpatch Author: James Troup -# DP: Patch Author: (probably) Jakub Jelinek -# DP: Upstream status: Unknown -# DP: Status Details: Unknown -# DP: Date: 2004-03-16 - -if [ $# -ne 2 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi -case "$1" in - -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;; - -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -esac -exit 0 - ---- - locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - -Index: glibc-2.8-20080811/locale/programs/3level.h -=================================================================== ---- glibc-2.8-20080811.orig/locale/programs/3level.h -+++ glibc-2.8-20080811/locale/programs/3level.h -@@ -203,6 +203,42 @@ CONCAT(TABLE,_iterate) (struct TABLE *t, - } - } - } -+ -+/* GCC ATM seems to do a poor job with pointers to nested functions passed -+ to inlined functions. Help it a little bit with this hack. */ -+#define wchead_table_iterate(tp, fn) \ -+do \ -+ { \ -+ struct wchead_table *t = (tp); \ -+ uint32_t index1; \ -+ for (index1 = 0; index1 < t->level1_size; index1++) \ -+ { \ -+ uint32_t lookup1 = t->level1[index1]; \ -+ if (lookup1 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup1_shifted = lookup1 << t->q; \ -+ uint32_t index2; \ -+ for (index2 = 0; index2 < (1 << t->q); index2++) \ -+ { \ -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ -+ if (lookup2 != ((uint32_t) ~0)) \ -+ { \ -+ uint32_t lookup2_shifted = lookup2 << t->p; \ -+ uint32_t index3; \ -+ for (index3 = 0; index3 < (1 << t->p); index3++) \ -+ { \ -+ struct element_t *lookup3 \ -+ = t->level3[index3 + lookup2_shifted]; \ -+ if (lookup3 != NULL) \ -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \ -+ lookup3); \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } \ -+ } while (0) -+ - #endif - - #ifndef NO_FINALIZE diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1050_all_glibc-posix-awk.patch b/patches/glibc-2.8-20080811/generic/gentoo/1050_all_glibc-posix-awk.patch deleted file mode 100644 index 1862c68..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1050_all_glibc-posix-awk.patch +++ /dev/null @@ -1,23 +0,0 @@ -http://bugs.gentoo.org/202511 - -2007-12-24 Mike Frysinger - - * elf/Makefile ($(objpfx)ld.so): Use POSIX (EF)? in awk. - ---- - elf/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-2.8-20080811/elf/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/elf/Makefile -+++ glibc-2.8-20080811/elf/Makefile -@@ -307,7 +307,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld - -Wl,-soname=$(rtld-installed-name) -T $@.lds - rm -f $@.lds - readelf -s $@ \ -- | $(AWK) '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }' -+ | $(AWK) '($$7 ~ /^UND(EF)?$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }' - - # interp.c exists just to get this string into the libraries. - CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1055_all_glibc-resolv-dynamic.patch b/patches/glibc-2.8-20080811/generic/gentoo/1055_all_glibc-resolv-dynamic.patch deleted file mode 100644 index 472a78f..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1055_all_glibc-resolv-dynamic.patch +++ /dev/null @@ -1,44 +0,0 @@ -ripped from SuSE - -if /etc/resolv.conf is updated, then make sure applications -already running get the updated information. - -http://bugs.gentoo.org/177416 - ---- - resolv/res_libc.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - -Index: glibc-2.8-20080811/resolv/res_libc.c -=================================================================== ---- glibc-2.8-20080811.orig/resolv/res_libc.c -+++ glibc-2.8-20080811/resolv/res_libc.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - - /* The following bit is copied from res_data.c (where it is #ifdef'ed -@@ -95,6 +96,20 @@ int - __res_maybe_init (res_state resp, int preinit) - { - if (resp->options & RES_INIT) { -+ static time_t last_mtime, last_check; -+ time_t now; -+ struct stat statbuf; -+ -+ time (&now); -+ if (now != last_check) { -+ last_check = now; -+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { -+ last_mtime = statbuf.st_mtime; -+ atomicinclock (lock); -+ atomicinc (__res_initstamp); -+ atomicincunlock (lock); -+ } -+ } - if (__res_initstamp != resp->_u._ext.initstamp) { - if (resp->nscount > 0) { - __res_iclose (resp, true); diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1075_all_glibc-section-comments.patch b/patches/glibc-2.8-20080811/generic/gentoo/1075_all_glibc-section-comments.patch deleted file mode 100644 index da55cb9..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1075_all_glibc-section-comments.patch +++ /dev/null @@ -1,29 +0,0 @@ -http://sources.redhat.com/ml/binutils/2004-04/msg00665.html - -fixes building on some architectures (like m68k/arm/cris/etc...) because -it does the right thing - ---- - include/libc-symbols.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -Index: glibc-2.8-20080811/include/libc-symbols.h -=================================================================== ---- glibc-2.8-20080811.orig/include/libc-symbols.h -+++ glibc-2.8-20080811/include/libc-symbols.h -@@ -240,12 +240,12 @@ - # define __make_section_unallocated(section_string) - # endif - --/* Tacking on "\n\t#" to the section name makes gcc put it's bogus -+/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus - section attributes on what looks like a comment to the assembler. */ - # ifdef HAVE_SECTION_QUOTES --# define __sec_comment "\"\n\t#\"" -+# define __sec_comment "\"\n#APP\n\t#\"" - # else --# define __sec_comment "\n\t#" -+# define __sec_comment "\n#APP\n\t#" - # endif - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1080_all_glibc-no-inline-gmon.patch b/patches/glibc-2.8-20080811/generic/gentoo/1080_all_glibc-no-inline-gmon.patch deleted file mode 100644 index 623df27..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1080_all_glibc-no-inline-gmon.patch +++ /dev/null @@ -1,38 +0,0 @@ -http://bugs.gentoo.org/196245 -http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html - -Attached is a patch to add __attribute__ ((noinline)) to -call_gmon_start. - -Without this patch, the sec script that processed initfini.s removes a -part of inlined call_gmon_start, causing undefined label errors. - -This patch solves the problem by forcing gcc not to inline -call_gmon_start with __attribute__ ((noinline)). - -Tested by building for arm-none-lixux-gnueabi. OK to apply? - -Kazu Hirata - -2006-05-07 Kazu Hirata <kazu@codesourcery.com> - - * sysdeps/generic/initfini.c (call_gmon_start): Add - __attribute__ ((noinline)). - ---- - sysdeps/generic/initfini.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-2.8-20080811/sysdeps/generic/initfini.c -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/generic/initfini.c -+++ glibc-2.8-20080811/sysdeps/generic/initfini.c -@@ -70,7 +70,7 @@ asm ("\n/*@TESTS_END*/"); - /* The beginning of _init: */ - asm ("\n/*@_init_PROLOG_BEGINS*/"); - --static void -+static void __attribute__ ((noinline)) - call_gmon_start(void) - { - extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch b/patches/glibc-2.8-20080811/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch deleted file mode 100644 index a3a5872..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch +++ /dev/null @@ -1,52 +0,0 @@ -From dank@kegel.com -Wed Jun 15 09:12:43 PDT 2005 - -Fixes - -build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r' -build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent' -... 53 lines deleted ... -build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r' -collect2: ld returned 1 exit status -make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1 - -when building glibc with --enable-static-nss. - -See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631 - ---- - Makeconfig | 2 +- - elf/Makefile | 7 +++++++ - 2 files changed, 8 insertions(+), 1 deletion(-) - -Index: glibc-2.8-20080811/Makeconfig -=================================================================== ---- glibc-2.8-20080811.orig/Makeconfig -+++ glibc-2.8-20080811/Makeconfig -@@ -509,7 +509,7 @@ endif - - # The static libraries. - ifeq (yes,$(build-static)) --link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a -+link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a - else - ifeq (yes,$(build-shared)) - # We can try to link the programs with lib*_pic.a... -Index: glibc-2.8-20080811/elf/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/elf/Makefile -+++ glibc-2.8-20080811/elf/Makefile -@@ -121,6 +121,13 @@ install-others = $(inst_slibdir)/$(rtld- - install-bin-script = ldd - endif - -+ifeq (yes,$(build-static-nss)) -+nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) -+resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv) -+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ -+ $(resolvobjdir)/libresolv.a -+endif -+ - others = sprof sln - install-bin = sprof - others-static = sln diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1100_all_glibc-2.3.3-china.patch b/patches/glibc-2.8-20080811/generic/gentoo/1100_all_glibc-2.3.3-china.patch deleted file mode 100644 index 3be9ea0..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1100_all_glibc-2.3.3-china.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- - localedata/locales/zh_TW | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -Index: glibc-2.8-20080811/localedata/locales/zh_TW -=================================================================== ---- glibc-2.8-20080811.orig/localedata/locales/zh_TW -+++ glibc-2.8-20080811/localedata/locales/zh_TW -@@ -1,7 +1,7 @@ - comment_char % - escape_char / - % --% Chinese language locale for Taiwan R.O.C. -+% Chinese language locale for Taiwan - % charmap: BIG5-CP950 - % - % Original Author: -@@ -17,7 +17,7 @@ escape_char / - % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf - - LC_IDENTIFICATION --title "Chinese locale for Taiwan R.O.C." -+title "Chinese locale for Taiwan" - source "" - address "" - contact "" -@@ -25,7 +25,7 @@ email "bug-glibc-locales@gnu.org" - tel "" - fax "" - language "Chinese" --territory "Taiwan R.O.C." -+territory "Taiwan" - revision "0.2" - date "2000-08-02" - % diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1103_all_glibc-new-valencian-locale.patch b/patches/glibc-2.8-20080811/generic/gentoo/1103_all_glibc-new-valencian-locale.patch deleted file mode 100644 index df9d623..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1103_all_glibc-new-valencian-locale.patch +++ /dev/null @@ -1,122 +0,0 @@ -http://bugs.gentoo.org/show_bug.cgi?id=131815 -http://sourceware.org/bugzilla/show_bug.cgi?id=2522 - ---- - localedata/SUPPORTED | 2 - localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 98 insertions(+) - -Index: glibc-2.8-20080811/localedata/SUPPORTED -=================================================================== ---- glibc-2.8-20080811.orig/localedata/SUPPORTED -+++ glibc-2.8-20080811/localedata/SUPPORTED -@@ -72,6 +72,8 @@ ca_AD/ISO-8859-15 \ - ca_ES.UTF-8/UTF-8 \ - ca_ES/ISO-8859-1 \ - ca_ES@euro/ISO-8859-15 \ -+ca_ES.UTF-8@valencia/UTF-8 \ -+ca_ES@valencia/ISO-8859-15 \ - ca_FR.UTF-8/UTF-8 \ - ca_FR/ISO-8859-15 \ - ca_IT.UTF-8/UTF-8 \ -Index: glibc-2.8-20080811/localedata/locales/ca_ES@valencia -=================================================================== ---- /dev/null -+++ glibc-2.8-20080811/localedata/locales/ca_ES@valencia -@@ -0,0 +1,96 @@ -+comment_char % -+escape_char / -+% -+% Valencian (southern Catalan) locale for Spain with Euro -+% -+% Note that this locale is almost the same as ca_ES@euro. The point of having -+% a separate locale is only for PO translations, which have a lot of social -+% support and are very appreciated by the Valencian-speaking community. -+% -+% Contact: Jordi Mallach -+% Email: jordi@gnu.org -+% Tel: -+% Fax: -+% Language: ca -+% Territory: ES -+% Option: euro -+% Revision: 1.0 -+% Date: 2006-04-06 -+% Application: general -+% Users: general -+% Repertoiremap: mnemonic,ds -+% Charset: ISO-8859-15 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Valencian (southern Catalan) locale for Spain with Euro" -+source "" -+address "" -+contact "Jordi Mallach" -+email "jordi@gnu.org" -+tel "" -+fax "" -+language "Catalan" -+territory "Spain" -+revision "1.0" -+date "2006-04-06" -+% -+category "ca_ES@valencia:2006";LC_IDENTIFICATION -+category "ca_ES@valencia:2006";LC_CTYPE -+category "ca_ES@valencia:2006";LC_COLLATE -+category "ca_ES@valencia:2006";LC_MONETARY -+category "ca_ES@valencia:2006";LC_NUMERIC -+category "ca_ES@valencia:2006";LC_TIME -+category "ca_ES@valencia:2006";LC_MESSAGES -+category "ca_ES@valencia:2006";LC_PAPER -+category "ca_ES@valencia:2006";LC_NAME -+category "ca_ES@valencia:2006";LC_ADDRESS -+category "ca_ES@valencia:2006";LC_TELEPHONE -+category "ca_ES@valencia:2006";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+copy "ca_ES" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "ca_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "ca_ES" -+END LC_NUMERIC -+ -+LC_TIME -+copy "ca_ES" -+END LC_TIME -+ -+LC_MESSAGES -+copy "ca_ES" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "ca_ES" -+END LC_PAPER -+ -+LC_NAME -+copy "ca_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "ca_ES" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+copy "ca_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "ca_ES" -+END LC_MEASUREMENT diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch b/patches/glibc-2.8-20080811/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch deleted file mode 100644 index a238666..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch +++ /dev/null @@ -1,91 +0,0 @@ -workaround strict aliasing warnings on individual files rather than -forcing the whole build with -fno-strict-aliasing - -http://bugs.gentoo.org/155906 - -note that we leave the logout.c and logwtmp.c warnings alone as the -code path that invokes the warning should not be executed when the -warning is applicable. - ---- - libio/Makefile | 4 ++-- - nis/Makefile | 3 +++ - nptl/Makefile | 1 + - nss/Makefile | 2 ++ - sunrpc/Makefile | 2 +- - 5 files changed, 9 insertions(+), 3 deletions(-) - -Index: glibc-2.8-20080811/libio/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/libio/Makefile -+++ glibc-2.8-20080811/libio/Makefile -@@ -91,7 +91,7 @@ CFLAGS-fseeko.c = $(exceptions) - CFLAGS-ftello64.c = $(exceptions) - CFLAGS-ftello.c = $(exceptions) - CFLAGS-fwide.c = $(exceptions) --CFLAGS-genops.c = $(exceptions) -+CFLAGS-genops.c = $(exceptions) -fno-strict-aliasing - CFLAGS-getc.c = $(exceptions) - CFLAGS-getchar.c = $(exceptions) - CFLAGS-getwc.c = $(exceptions) -@@ -133,7 +133,7 @@ CFLAGS-putwc.c = $(exceptions) - CFLAGS-putwchar.c = $(exceptions) - CFLAGS-rewind.c = $(exceptions) - CFLAGS-wfileops.c = $(exceptions) --CFLAGS-wgenops.c = $(exceptions) -+CFLAGS-wgenops.c = $(exceptions) -fno-strict-aliasing - CFLAGS-oldiofopen.c = $(exceptions) - CFLAGS-iofopen.c = $(exceptions) - CFLAGS-iofopen64.c = $(exceptions) -Index: glibc-2.8-20080811/nis/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/nis/Makefile -+++ glibc-2.8-20080811/nis/Makefile -@@ -67,6 +67,9 @@ libnss_nisplus-routines := $(addprefix n - nss-nisplus nisplus-initgroups - libnss_nisplus-inhibit-o = $(filter-out .os,$(object-suffixes)) - -+CFLAGS-nis_xdr.c += -fno-strict-aliasing -+CFLAGS-yp_xdr.c += -fno-strict-aliasing -+ - include ../Rules - - -Index: glibc-2.8-20080811/nptl/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/nptl/Makefile -+++ glibc-2.8-20080811/nptl/Makefile -@@ -193,6 +193,7 @@ CFLAGS-tcdrain.c = -fexceptions -fasynch - - CFLAGS-pt-system.c = -fexceptions - -+CFLAGS-unwind-dw2.c += -fno-strict-aliasing - - tests = tst-typesizes \ - tst-attr1 tst-attr2 tst-attr3 \ -Index: glibc-2.8-20080811/nss/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/nss/Makefile -+++ glibc-2.8-20080811/nss/Makefile -@@ -72,6 +72,8 @@ ifneq ($(build-static-nss),yes) - libnss_files-inhibit-o = $(filter-out .os,$(object-suffixes)) - endif - -+CFLAGS-nsswitch.c += -fno-strict-aliasing -+ - include ../Rules - - -Index: glibc-2.8-20080811/sunrpc/Makefile -=================================================================== ---- glibc-2.8-20080811.orig/sunrpc/Makefile -+++ glibc-2.8-20080811/sunrpc/Makefile -@@ -127,7 +127,7 @@ CFLAGS-pmap_rmt.c = -fexceptions - CFLAGS-clnt_perr.c = -fexceptions - CFLAGS-openchild.c = -fexceptions - --CPPFLAGS += -D_RPC_THREAD_SAFE_ -+CPPFLAGS += -D_RPC_THREAD_SAFE_ -fno-strict-aliasing - - include ../Rules - diff --git a/patches/glibc-2.8-20080811/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch b/patches/glibc-2.8-20080811/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch deleted file mode 100644 index 6a2e833..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch +++ /dev/null @@ -1,49 +0,0 @@ -If gcc is configured to generate i686 code or better by default (like -when using the --with-arch=pentium3 configure option), then the __i686 -macro will always be defined automatically and thus screw up the -compilation of some .S files. -http://bugs.gentoo.org/131108 -http://sourceware.org/ml/libc-alpha/2006-04/msg00090.html - -2006-04-25 Mike Frysinger - - * sysdeps/i386/sysdep.h (__i686): Undefine. - ---- - nptl/sysdeps/pthread/pt-initfini.c | 3 +++ - sysdeps/i386/sysdep.h | 8 ++++++++ - 2 files changed, 11 insertions(+) - -Index: glibc-2.8-20080811/nptl/sysdeps/pthread/pt-initfini.c -=================================================================== ---- glibc-2.8-20080811.orig/nptl/sysdeps/pthread/pt-initfini.c -+++ glibc-2.8-20080811/nptl/sysdeps/pthread/pt-initfini.c -@@ -45,6 +45,9 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+/* Embed an #include to pull in asm settings. */ -+asm ("\n#ifdef __i686__\n#include \n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - -Index: glibc-2.8-20080811/sysdeps/i386/sysdep.h -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/i386/sysdep.h -+++ glibc-2.8-20080811/sysdeps/i386/sysdep.h -@@ -18,6 +18,14 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+/* -+ * When building for i686 targets or better, gcc automatically defines -+ * '__i686' to '1' for us which causes trouble when using section names -+ * like '__i686.get_pc_thunk.reg'. Since we check for __i686__ in the -+ * code, killing '__i686' shouldn't be a problem. -+ */ -+#undef __i686 -+ - #include - - #ifdef __ASSEMBLER__ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch b/patches/glibc-2.8-20080811/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch deleted file mode 100644 index eca5d11..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch +++ /dev/null @@ -1,73 +0,0 @@ - With latest versions of glibc, a lot of apps failed on a PaX enabled - system with: - cannot enable executable stack as shared object requires: Permission denied - - This is due to PaX 'exec-protecting' the stack, and ld.so then trying - to make the stack executable due to some libraries not containing the - PT_GNU_STACK section. Bug #32960. (12 Nov 2003). - - Patch also NPTL. Bug #116086. (20 Dec 2005). - ---- - nptl/allocatestack.c | 3 ++- - sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- - 2 files changed, 18 insertions(+), 4 deletions(-) - -Index: glibc-2.8-20080811/nptl/allocatestack.c -=================================================================== ---- glibc-2.8-20080811.orig/nptl/allocatestack.c -+++ glibc-2.8-20080811/nptl/allocatestack.c -@@ -299,7 +299,8 @@ change_stack_perm (struct pthread *pd - # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" - #endif - if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) -- return errno; -+ if (errno != EACCES) /* PAX is enabled */ -+ return errno; - - return 0; - } -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/dl-execstack.c -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/dl-execstack.c -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/dl-execstack.c -@@ -63,7 +63,10 @@ _dl_make_stack_executable (void **stack_ - else - # endif - { -- result = errno; -+ if (errno == EACCES) /* PAX is enabled */ -+ result = 0; -+ else -+ result = errno; - goto out; - } - } -@@ -89,7 +92,12 @@ _dl_make_stack_executable (void **stack_ - page -= size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; -@@ -115,7 +123,12 @@ _dl_make_stack_executable (void **stack_ - page += size; - else - { -- if (errno != ENOMEM) /* Unexpected failure mode. */ -+ if (errno == EACCES) /* PAX is enabled */ -+ { -+ result = 0; -+ goto out; -+ } -+ else if (errno != ENOMEM) /* Unexpected failure mode. */ - { - result = errno; - goto out; diff --git a/patches/glibc-2.8-20080811/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch b/patches/glibc-2.8-20080811/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch deleted file mode 100644 index e4e2c26..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- - elf/elf.h | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -Index: glibc-2.8-20080811/elf/elf.h -=================================================================== ---- glibc-2.8-20080811.orig/elf/elf.h -+++ glibc-2.8-20080811/elf/elf.h -@@ -571,6 +571,7 @@ typedef struct - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -584,6 +585,18 @@ typedef struct - #define PF_X (1 << 0) /* Segment is executable */ - #define PF_W (1 << 1) /* Segment is writable */ - #define PF_R (1 << 2) /* Segment is readable */ -+#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ -+#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ -+#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ -+#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ -+#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ -+#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ -+#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ -+#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ -+#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ -+#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ -+#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ -+#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ - #define PF_MASKOS 0x0ff00000 /* OS-specific */ - #define PF_MASKPROC 0xf0000000 /* Processor-specific */ - diff --git a/patches/glibc-2.8-20080811/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch b/patches/glibc-2.8-20080811/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch deleted file mode 100644 index 3ba4378..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch +++ /dev/null @@ -1,42 +0,0 @@ -http://sources.redhat.com/ml/libc-alpha/2003-06/msg00027.html -http://www.m17n.org/linux-sh/ml/linux-sh/2003-05/msg00010.html - -http://rpm.sh-linux.org/rpm-2004/target/SRPMS/glibc-2.3.3-27.12.src.rpm - -http://bugs.gentoo.org/100696 - ---- - sysdeps/unix/sysv/linux/sh/Versions | 1 + - sysdeps/unix/sysv/linux/sh/sysdep.S | 10 ++++++++++ - 2 files changed, 11 insertions(+) - -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/Versions -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/Versions -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/Versions -@@ -2,6 +2,7 @@ libc { - GLIBC_2.2 { - # functions used in other libraries - __xstat64; __fxstat64; __lxstat64; -+ __fpscr_values; - - # a* - alphasort64; -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sysdep.S -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sysdep.S -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sysdep.S -@@ -32,3 +32,13 @@ ENTRY (__syscall_error) - - #define __syscall_error __syscall_error_1 - #include -+ -+ .data -+ .align 3 -+ .globl ___fpscr_values -+ .type ___fpscr_values, @object -+ .size ___fpscr_values, 8 -+___fpscr_values: -+ .long 0 -+ .long 0x80000 -+weak_alias (___fpscr_values, __fpscr_values) diff --git a/patches/glibc-2.8-20080811/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch b/patches/glibc-2.8-20080811/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch deleted file mode 100644 index 54b51cc..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch +++ /dev/null @@ -1,76 +0,0 @@ -2007-03-13 Mike Frysinger - - * sysdeps/unix/sysv/linux/sh/sys/user.h: Copy Linux's asm-sh/user.h. - ---- - sysdeps/unix/sysv/linux/sh/sys/user.h | 56 ++++++++++++++++++++++++++++++++-- - 1 file changed, 53 insertions(+), 3 deletions(-) - -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/user.h -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sys/user.h -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/user.h -@@ -19,10 +19,60 @@ - #ifndef _SYS_USER_H - #define _SYS_USER_H 1 - --#include -+#include -+#include - --#include -+/* -+ * Core file format: The core file is written in such a way that gdb -+ * can understand it and provide useful information to the user (under -+ * linux we use the `trad-core' bfd). The file contents are as follows: -+ * -+ * upage: 1 page consisting of a user struct that tells gdb -+ * what is present in the file. Directly after this is a -+ * copy of the task_struct, which is currently not used by gdb, -+ * but it may come in handy at some point. All of the registers -+ * are stored as part of the upage. The upage should always be -+ * only one page long. -+ * data: The data segment follows next. We use current->end_text to -+ * current->brk to pick up all of the user variables, plus any memory -+ * that may have been sbrk'ed. No attempt is made to determine if a -+ * page is demand-zero or if a page is totally unused, we just cover -+ * the entire range. All of the addresses are rounded in such a way -+ * that an integral number of pages is written. -+ * stack: We need the stack information in order to get a meaningful -+ * backtrace. We need to write the data from usp to -+ * current->start_stack, so we round each of these in order to be able -+ * to write an integer number of pages. -+ */ - --#undef start_thread -+struct user_fpu_struct { -+ unsigned long fp_regs[16]; -+ unsigned long xfp_regs[16]; -+ unsigned long fpscr; -+ unsigned long fpul; -+}; -+ -+struct user { -+ struct pt_regs regs; /* entire machine state */ -+ struct user_fpu_struct fpu; /* Math Co-processor registers */ -+ int u_fpvalid; /* True if math co-processor being used */ -+ size_t u_tsize; /* text size (pages) */ -+ size_t u_dsize; /* data size (pages) */ -+ size_t u_ssize; /* stack size (pages) */ -+ unsigned long start_code; /* text starting address */ -+ unsigned long start_data; /* data starting address */ -+ unsigned long start_stack; /* stack starting address */ -+ long int signal; /* signal causing core dump */ -+ struct regs * u_ar0; /* help gdb find registers */ -+ struct user_fpu_struct* u_fpstate; /* Math Co-processor pointer */ -+ unsigned long magic; /* identifies a core file */ -+ char u_comm[32]; /* user command name */ -+}; -+ -+#define NBPG getpagesize() -+#define UPAGES 1 -+#define HOST_TEXT_START_ADDR (u.start_code) -+#define HOST_DATA_START_ADDR (u.start_data) -+#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) - - #endif /* sys/user.h */ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch b/patches/glibc-2.8-20080811/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch deleted file mode 100644 index e13d01f..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch +++ /dev/null @@ -1,33 +0,0 @@ -2007-03-13 Mike Frysinger - - * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Copy Linux's asm-sh/elf.h types. - ---- - sysdeps/unix/sysv/linux/sh/sys/procfs.h | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - -Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/procfs.h -=================================================================== ---- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h -+++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/procfs.h -@@ -29,10 +29,19 @@ - #include - #include - #include --#include - - __BEGIN_DECLS - -+/* -+ * ELF register definitions... -+ */ -+typedef unsigned long elf_greg_t; -+ -+#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t)) -+typedef elf_greg_t elf_gregset_t[ELF_NGREG]; -+ -+typedef struct user_fpu_struct elf_fpregset_t; -+ - struct elf_siginfo - { - int si_signo; /* Signal number. */ diff --git a/patches/glibc-2.8-20080811/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch b/patches/glibc-2.8-20080811/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch deleted file mode 100644 index 74579dc..0000000 --- a/patches/glibc-2.8-20080811/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch +++ /dev/null @@ -1,29 +0,0 @@ - Hack from Debian to hopefully get sandbox working on mips - -<`Kumba> ths: given the SHN_UNDEF thing is a hack, what's the preferred solution? - For fakeroot the simplest trigger is "fakeroot file /bin/ls". - `Kumba: I haven't found a better one yet. - Probably marker symbols around the stub section, and then exclude it from the link map. - This needs a ld change. - ---- - elf/do-lookup.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -Index: glibc-2.8-20080811/elf/do-lookup.h -=================================================================== ---- glibc-2.8-20080811.orig/elf/do-lookup.h -+++ glibc-2.8-20080811/elf/do-lookup.h -@@ -246,6 +246,12 @@ do_lookup_x (const char *undef_name, uin - } - /* FALLTHROUGH */ - case STB_GLOBAL: -+#ifdef __mips__ -+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF -+ symbols, we skip them. */ -+ if (sym->st_shndx == SHN_UNDEF) -+ break; -+#endif - /* Global definition. Just what we need. */ - result->s = sym; - result->m = (struct link_map *) map; diff --git a/patches/glibc-2.8-20080811/generic/glibc-2.5_stdlib_longlong.h b/patches/glibc-2.8-20080811/generic/glibc-2.5_stdlib_longlong.h deleted file mode 100644 index f465c69..0000000 --- a/patches/glibc-2.8-20080811/generic/glibc-2.5_stdlib_longlong.h +++ /dev/null @@ -1,37 +0,0 @@ ---- - stdlib/longlong.h | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -Index: glibc-2.8-20080811/stdlib/longlong.h -=================================================================== ---- glibc-2.8-20080811.orig/stdlib/longlong.h -+++ glibc-2.8-20080811/stdlib/longlong.h -@@ -205,6 +205,14 @@ UDItype __umulsidi3 (USItype, USItype); - "rI" ((USItype) (bh)), \ - "r" ((USItype) (al)), \ - "rI" ((USItype) (bl)) __CLOBBER_CC) -+/* v3m and all higher arches have long multiply support. */ -+#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__) -+#define umul_ppmm(xh, xl, a, b) \ -+ __asm__ ("umull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) -+#define UMUL_TIME 5 -+#define smul_ppmm(xh, xl, a, b) \ -+ __asm__ ("smull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) -+#else - #define umul_ppmm(xh, xl, a, b) \ - {register USItype __t0, __t1, __t2; \ - __asm__ ("%@ Inlined umul_ppmm\n" \ -@@ -226,7 +234,13 @@ UDItype __umulsidi3 (USItype, USItype); - : "r" ((USItype) (a)), \ - "r" ((USItype) (b)) __CLOBBER_CC );} - #define UMUL_TIME 20 -+#endif - #define UDIV_TIME 100 -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) -+#define COUNT_LEADING_ZEROS_0 32 -+#endif -+ - #endif /* __arm__ */ - - #if defined (__hppa) && W_TYPE_SIZE == 32 diff --git a/patches/glibc-2.8-20080811/generic/glibc-configure-apple-as.patch b/patches/glibc-2.8-20080811/generic/glibc-configure-apple-as.patch deleted file mode 100644 index 13b7b23..0000000 --- a/patches/glibc-2.8-20080811/generic/glibc-configure-apple-as.patch +++ /dev/null @@ -1,47 +0,0 @@ -http://in3www.epfl.ch/~schaffne/glibc-configure-apple-as.patch -http://sources.redhat.com/ml/crossgcc/2004-02/msg00151.html - -The following makes it possible to configure glibc-2.3.2 on Mac OS X, -where the assembler but doesn't understand the --version flag. - -Fixes the symptom -checking whether ld is GNU ld... no -checking for /usr/libexec/gcc/darwin/ppc/as... /usr/libexec/gcc/darwin/ppc/as -checking version of /usr/libexec/gcc/darwin/ppc/as... - - ---- - configure | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -Index: glibc-2.8-20080811/configure -=================================================================== ---- glibc-2.8-20080811.orig/configure -+++ glibc-2.8-20080811/configure -@@ -4527,7 +4527,7 @@ else - # Found it, now check the version. - { echo "$as_me:$LINENO: checking version of $AS" >&5 - echo $ECHO_N "checking version of $AS... $ECHO_C" >&6; } -- ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ ac_prog_version=`$AS -v &1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 2.1[3-9]*) -@@ -4538,7 +4538,7 @@ echo $ECHO_N "checking version of $AS... - { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 - echo "${ECHO_T}$ac_prog_version" >&6; } - fi --if test $ac_verc_fail = yes; then -+if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then - AS=: critic_missing="$critic_missing as" - fi - -@@ -4601,7 +4601,7 @@ echo $ECHO_N "checking version of $LD... - { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 - echo "${ECHO_T}$ac_prog_version" >&6; } - fi --if test $ac_verc_fail = yes; then -+if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then - LD=: critic_missing="$critic_missing ld" - fi - diff --git a/patches/glibc-2.8-20080811/generic/glibc-configure-old-gcc.patch b/patches/glibc-2.8-20080811/generic/glibc-configure-old-gcc.patch deleted file mode 100644 index 3de4828..0000000 --- a/patches/glibc-2.8-20080811/generic/glibc-configure-old-gcc.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-2.8-20080811/configure -=================================================================== ---- glibc-2.8-20080811.orig/configure -+++ glibc-2.8-20080811/configure -@@ -4719,7 +4719,7 @@ echo $ECHO_N "checking version of $CC... - { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 - echo "${ECHO_T}$ac_prog_version" >&6; } - fi --if test $ac_verc_fail = yes; then -+if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then - critic_missing="$critic_missing gcc" - fi - diff --git a/patches/glibc-2.8-20080811/generic/make-install-lib-all.patch b/patches/glibc-2.8-20080811/generic/make-install-lib-all.patch deleted file mode 100644 index 0daf7f9..0000000 --- a/patches/glibc-2.8-20080811/generic/make-install-lib-all.patch +++ /dev/null @@ -1,45 +0,0 @@ -# --- T2-COPYRIGHT-NOTE-BEGIN --- -# This copyright note is auto-generated by ./scripts/Create-CopyPatch. -# -# T2 SDE: package/.../glibc32/make-install-lib-all.patch -# Copyright (C) 2004 - 2005 The T2 SDE Project -# -# More information can be found in the files COPYING and README. -# -# This patch file is dual-licensed. It is available under the license the -# patched project is licensed under, as long as it is an OpenSource license -# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms -# of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# --- T2-COPYRIGHT-NOTE-END --- ---- -# Makerules | 8 ++++++++ -# 1 file changed, 8 insertions(+) -# -Index: glibc-2.8-20080811/Makerules -=================================================================== ---- glibc-2.8-20080811.orig/Makerules -+++ glibc-2.8-20080811/Makerules -@@ -853,6 +853,13 @@ endef - installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\ - $(inst_libdir)/$(patsubst %,$(libtype$o),\ - $(libprefix)$(libc-name))) -+ -+install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \ -+ $(inst_slibdir)/libc-$(version).so \ -+ $(inst_libdir)/libc.so \ -+ $(inst_libdir)/libc.a \ -+ install-lib -+ - install: $(installed-libcs) - $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) - $(make-target-directory) -@@ -876,6 +883,7 @@ endef - install-lib.so := $(filter %.so,$(install-lib:%_pic.a=%.so)) - install-lib := $(filter-out %.so %_pic.a,$(install-lib)) - -+ - ifeq (yes,$(build-shared)) - # Find which .so's have versions. - versioned := $(strip $(foreach so,$(install-lib.so),\ diff --git a/patches/glibc-2.8-20080811/generic/series b/patches/glibc-2.8-20080811/generic/series deleted file mode 100644 index 3606ad4..0000000 --- a/patches/glibc-2.8-20080811/generic/series +++ /dev/null @@ -1,30 +0,0 @@ -make-install-lib-all.patch -glibc-configure-apple-as.patch -glibc-configure-old-gcc.patch -configure_in-sane_readelf.diff -configure-sane_readelf.diff - -glibc-2.5_stdlib_longlong.h -#cross_timezone.diff - -gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch -gentoo/0040_all_glibc-i586-chk.patch -gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch -gentoo/1010_all_glibc-queue-header-updates.patch -gentoo/1030_all_glibc-manual-no-perl.patch -gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch -gentoo/1050_all_glibc-posix-awk.patch -gentoo/1055_all_glibc-resolv-dynamic.patch -gentoo/1075_all_glibc-section-comments.patch -gentoo/1080_all_glibc-no-inline-gmon.patch -gentoo/1090_all_glibc-2.3.6-fix-pr631.patch -gentoo/1100_all_glibc-2.3.3-china.patch -gentoo/1103_all_glibc-new-valencian-locale.patch -gentoo/1120_all_glibc-2.5-strict-aliasing.patch -gentoo/1130_all_glibc-2.4-undefine-__i686.patch -gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch -gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch -gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch -gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch -gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch -gentoo/6645_all_glibc-mips_shn_undef-hack.patch diff --git a/patches/glibc-2.8-ports-20080811/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch b/patches/glibc-2.8-ports-20080811/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch deleted file mode 100644 index 4a33972..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch +++ /dev/null @@ -1,28 +0,0 @@ -fix building on arm: - -armv4l-unknown-linux-gnu-gcc ../nptl/sysdeps/unix/sysv/linux/libc-lowlevellock.c -c -std=gnu99 -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -fno-strict-aliasing -mcpu=strongarm110 -pipe -Wstrict-prototypes -fPIC -I../include -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl -I../ports/sysdeps/arm/elf -I../ports/sysdeps/unix/sysv/linux/arm/nptl -I../ports/sysdeps/unix/sysv/linux/arm -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../ports/sysdeps/unix/sysv/linux -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../ports/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../nptl/sysdeps/unix -I../ports/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../ports/sysdeps/arm/fpu -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I../ports -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include-fixed -isystem /usr/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DPIC -DSHARED -DNOT_IN_libc=1 -DIS_IN_rtld=1 -o /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os -MD -MP -MF /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os.dt -MT /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os -In file included from ../nptl/sysdeps/unix/sysv/linux/libc-lowlevellock.c:21: -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c: In function '__lll_lock_wait_private': -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: warning: implicit declaration of function 'THREAD_GETMEM' -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: 'THREAD_SELF' undeclared (first use in this function) -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: (Each undeclared identifier is reported only once -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: for each function it appears in.) -../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: 'header' undeclared (first use in this function) -make[4]: *** [/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os] Error 1 - ---- - sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h | 1 + - 1 file changed, 1 insertion(+) - -Index: glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h -=================================================================== ---- glibc-ports-2.7.orig/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h -+++ glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - #define FUTEX_WAIT 0 - #define FUTEX_WAKE 1 diff --git a/patches/glibc-2.8-ports-20080811/generic/gentoo/6225_all_glibc-2.7-cargs6.patch b/patches/glibc-2.8-ports-20080811/generic/gentoo/6225_all_glibc-2.7-cargs6.patch deleted file mode 100644 index a0d0e93..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/gentoo/6225_all_glibc-2.7-cargs6.patch +++ /dev/null @@ -1,31 +0,0 @@ -fix building on arm: - -(echo '#include '; \ - echo 'PSEUDO (splice, splice, 6)'; \ - echo ' ret'; \ - echo 'PSEUDO_END(splice)'; \ - echo 'libc_hidden_def (splice)'; \ - ) | armv4l-unknown-linux-gnu-gcc -c -I../include -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl -I../ports/sysdeps/arm/elf -I../ports/sysdeps/unix/sysv/linux/arm/nptl -I../ports/sysdeps/unix/sysv/linux/arm -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../ports/sysdeps/unix/sysv/linux -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../ports/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../nptl/sysdeps/unix -I../ports/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../ports/sysdeps/arm/fpu -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I../ports -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include-fixed -isystem /usr/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DASSEMBLER -x assembler-with-cpp -o /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc/splice.o - -: Assembler messages: -:2: Error: bad instruction `docargs_6' -:2: Error: bad instruction `undocargs_6' -make[2]: *** [/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc/splice.o] Error 1 - ---- - sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h | 3 +++ - 1 file changed, 3 insertions(+) - -Index: glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h -=================================================================== ---- glibc-ports-2.7.orig/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h -+++ glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h -@@ -73,6 +73,9 @@ - # define DOCARGS_5 DOCARGS_4 - # define UNDOCARGS_5 UNDOCARGS_4 - -+# define DOCARGS_6 DOCARGS_5 -+# define UNDOCARGS_6 UNDOCARGS_5 -+ - # ifdef IS_IN_libpthread - # define CENABLE bl PLTJMP(__pthread_enable_asynccancel) - # define CDISABLE bl PLTJMP(__pthread_disable_asynccancel) diff --git a/patches/glibc-2.8-ports-20080811/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch b/patches/glibc-2.8-ports-20080811/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch deleted file mode 100644 index 832e84c..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch +++ /dev/null @@ -1,19 +0,0 @@ -http://sourceware.org/ml/libc-alpha/2002-10/msg00392.html - ---- - sysdeps/mips/fpu_control.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-ports-2.7/sysdeps/mips/fpu_control.h -=================================================================== ---- glibc-ports-2.7.orig/sysdeps/mips/fpu_control.h -+++ glibc-ports-2.7/sysdeps/mips/fpu_control.h -@@ -85,7 +85,7 @@ extern fpu_control_t __fpu_control; - #define _FPU_RC_UP 0x2 - #define _FPU_RC_DOWN 0x3 - --#define _FPU_RESERVED 0xfe3c0000 /* Reserved bits in cw */ -+#define _FPU_RESERVED 0xfebc0000 /* Reserved bits in cw */ - - - /* The fdlibm code requires strict IEEE double precision arithmetic, diff --git a/patches/glibc-2.8-ports-20080811/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c b/patches/glibc-2.8-ports-20080811/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c deleted file mode 100644 index ee2a6bf..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c +++ /dev/null @@ -1,33 +0,0 @@ ---- - ports/sysdeps/arm/mp_clz_tab.c | 24 ++++++++++++++++++++++++ - 1 file changed, 24 insertions(+) - -Index: glibc-ports-2.7/ports/sysdeps/arm/mp_clz_tab.c -=================================================================== ---- /dev/null -+++ glibc-ports-2.7/ports/sysdeps/arm/mp_clz_tab.c -@@ -0,0 +1,24 @@ -+/* __clz_tab -- support for longlong.h -+ Copyright (C) 2004 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+/* Nothing required. */ -+#else -+#include -+#endif diff --git a/patches/glibc-2.8-ports-20080811/generic/series b/patches/glibc-2.8-ports-20080811/generic/series deleted file mode 100644 index b8473fc..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/series +++ /dev/null @@ -1,7 +0,0 @@ -sysdeps_mips_mips32_Makefile-bootstrap.diff - -glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c - -gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch -gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch -gentoo/6225_all_glibc-2.7-cargs6.patch diff --git a/patches/glibc-2.8-ports-20080811/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff b/patches/glibc-2.8-ports-20080811/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff deleted file mode 100644 index a43709f..0000000 --- a/patches/glibc-2.8-ports-20080811/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff +++ /dev/null @@ -1,28 +0,0 @@ -From: Marc Kleine-Budde -Subject: Hack around mips args to host-gcc - -originally From: "Steven J dot Hill" -for Crosstool - -In OSELAS.Toolchain we pass -DBOOTSTRAP_GCC in CC. This patch fixes the -header extraction from the glibc, by not passing mips specific flags to -the HOST compiler. - -Signed-off-by: Marc Kleine-Budde - ---- - sysdeps/mips/mips32/Makefile | 4 ++++ - 1 file changed, 4 insertions(+) - -Index: glibc-ports-2.7/sysdeps/mips/mips32/Makefile -=================================================================== ---- glibc-ports-2.7.orig/sysdeps/mips/mips32/Makefile -+++ glibc-ports-2.7/sysdeps/mips/mips32/Makefile -@@ -1,3 +1,7 @@ -+ifeq ($(filter -DBOOTSTRAP_GCC,$(CC)),) - ifeq ($(filter -mabi=32,$(CC)),) - CC += -mabi=32 - endif -+else -+CC += -D_MIPS_SZPTR=32 -+endif diff --git a/patches/glibc-2.8/generic/configure-sane_readelf.diff b/patches/glibc-2.8/generic/configure-sane_readelf.diff new file mode 100644 index 0000000..cce10eb --- /dev/null +++ b/patches/glibc-2.8/generic/configure-sane_readelf.diff @@ -0,0 +1,119 @@ +--- + configure | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 88 insertions(+), 2 deletions(-) + +Index: glibc-2.8-20080811/configure +=================================================================== +--- glibc-2.8-20080811.orig/configure ++++ glibc-2.8-20080811/configure +@@ -5988,6 +5988,92 @@ _ACEOF + fi + fi + ++ # Extract the first word of "$target_alias-readelf", so it can be a program name with args. ++set dummy $target_alias-readelf; ac_word=$2 ++{ echo "$as_me:$LINENO: checking for $ac_word" >&5 ++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++if test "${ac_cv_prog_READELF+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ if test -n "$READELF"; then ++ ac_cv_prog_READELF="$READELF" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ++ ac_cv_prog_READELF="$target_alias-readelf" ++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++done ++IFS=$as_save_IFS ++ ++fi ++fi ++READELF=$ac_cv_prog_READELF ++if test -n "$READELF"; then ++ { echo "$as_me:$LINENO: result: $READELF" >&5 ++echo "${ECHO_T}$READELF" >&6; } ++else ++ { echo "$as_me:$LINENO: result: no" >&5 ++echo "${ECHO_T}no" >&6; } ++fi ++ ++ ++if test -z "$ac_cv_prog_READELF"; then ++ if test "$build" = "$target"; then ++ ac_ct_READELF=$READELF ++ # Extract the first word of "readelf", so it can be a program name with args. ++set dummy readelf; ac_word=$2 ++{ echo "$as_me:$LINENO: checking for $ac_word" >&5 ++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++if test "${ac_cv_prog_ac_ct_READELF+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ if test -n "$ac_ct_READELF"; then ++ ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ++ ac_cv_prog_ac_ct_READELF="readelf" ++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++done ++IFS=$as_save_IFS ++ ++ test -z "$ac_cv_prog_ac_ct_READELF" && ac_cv_prog_ac_ct_READELF="readelf" ++fi ++fi ++ac_ct_READELF=$ac_cv_prog_ac_ct_READELF ++if test -n "$ac_ct_READELF"; then ++ { echo "$as_me:$LINENO: result: $ac_ct_READELF" >&5 ++echo "${ECHO_T}$ac_ct_READELF" >&6; } ++else ++ { echo "$as_me:$LINENO: result: no" >&5 ++echo "${ECHO_T}no" >&6; } ++fi ++ ++ READELF=ac_ct_READELF ++ else ++ READELF="readelf" ++ fi ++else ++ READELF="$ac_cv_prog_READELF" ++fi ++ ++ + { echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5 + echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6; } + if test "${libc_cv_initfini_array+set}" = set; then +@@ -6007,7 +6093,7 @@ EOF + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } + then +- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then ++ if ${READELF} -S conftest | fgrep INIT_ARRAY > /dev/null; then + libc_cv_initfini_array=yes + else + libc_cv_initfini_array=no +@@ -6307,7 +6393,7 @@ EOF + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } + then +- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then ++ if ${READELF} -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then + libc_cv_z_combreloc=yes + else + libc_cv_z_combreloc=no diff --git a/patches/glibc-2.8/generic/configure_in-sane_readelf.diff b/patches/glibc-2.8/generic/configure_in-sane_readelf.diff new file mode 100644 index 0000000..ee7a727 --- /dev/null +++ b/patches/glibc-2.8/generic/configure_in-sane_readelf.diff @@ -0,0 +1,35 @@ +--- + configure.in | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +Index: glibc-2.8-20080811/configure.in +=================================================================== +--- glibc-2.8-20080811.orig/configure.in ++++ glibc-2.8-20080811/configure.in +@@ -1354,6 +1354,8 @@ EOF + fi + fi + ++ AC_CHECK_TARGET_TOOL([READELF],[readelf],[readelf],[$PATH]) ++ + AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support, + libc_cv_initfini_array, [dnl + cat > conftest.c <&AS_MESSAGE_LOG_FD]) + then +- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then ++ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then + libc_cv_initfini_array=yes + else + libc_cv_initfini_array=no +@@ -1550,7 +1552,7 @@ dnl cross-platform since the gcc used ca + dnl introducing new options this is not easily doable. Instead use a tool + dnl which always is cross-platform: readelf. To detect whether -z combreloc + dnl look for a section named .rel.dyn. +- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then ++ if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then + libc_cv_z_combreloc=yes + else + libc_cv_z_combreloc=no diff --git a/patches/glibc-2.8/generic/cross_timezone.diff b/patches/glibc-2.8/generic/cross_timezone.diff new file mode 100644 index 0000000..d85d241 --- /dev/null +++ b/patches/glibc-2.8/generic/cross_timezone.diff @@ -0,0 +1,489 @@ +From: http://trac.cross-lfs.org/browser/branches/clfs-sysroot/patches/glibc-2.6.1-sysdep_cancel-1.patch + +Submitted By: Joe Ciccone +Date: 2006-11-26 +Initial Package Version: 2.5 +Origin: Joe Ciccone +Upstream Status: Unknown +Description: Adds native compile support to the build system then uses that + support to build zic-native, for installing timezone info, + rpcgen-native, for building librpcsvc.a, and localedef-native, + for creating the locale-archive. + +--- + Makeconfig | 13 +++++++++++++ + Makerules | 9 ++++++++- + Rules | 9 ++++++++- + iconv/Makefile | 4 ++++ + iconvdata/Makefile | 18 ++++++++++-------- + include-native/bits/libc-tsd.h | 3 +++ + include-native/config.h | 1 + + include-native/gnu/stubs.h | 1 + + include-native/intl/loadinfo.h | 4 ++++ + include-native/libintl.h | 11 +++++++++++ + include-native/symbol-hacks.h | 1 + + include-native/sys/types.h | 9 +++++++++ + include-native/tls.h | 11 +++++++++++ + locale/Makefile | 9 +++++++++ + localedata/Makefile | 5 +++++ + malloc/Makefile | 5 ----- + sunrpc/Makefile | 23 ++++++++++++++++++----- + timezone/Makefile | 14 ++++++++++---- + 18 files changed, 126 insertions(+), 24 deletions(-) + +Index: glibc-2.7/iconv/Makefile +=================================================================== +--- glibc-2.7.orig/iconv/Makefile ++++ glibc-2.7/iconv/Makefile +@@ -57,6 +57,9 @@ distribute = gconv_builtin.h gconv_int.h + iconvconfig.h + + others = iconv_prog iconvconfig ++ifneq ($(cross-compiling),no) ++others-native = iconvconfig-native ++endif + install-others-programs = $(inst_bindir)/iconv + install-sbin = iconvconfig + +@@ -79,6 +82,7 @@ $(inst_bindir)/iconv: $(objpfx)iconv_pro + + $(objpfx)iconv_prog: $(iconv_prog-modules:%=$(objpfx)%.o) + $(objpfx)iconvconfig: $(iconvconfig-modules:%=$(objpfx)%.o) ++$(objpfx)iconvconfig-native: $(iconvconfig-modules:%=$(objpfx)%-native.o) + + ifneq ($(cross-compiling),yes) + xtests: test-iconvconfig +Index: glibc-2.7/iconvdata/Makefile +=================================================================== +--- glibc-2.7.orig/iconvdata/Makefile ++++ glibc-2.7/iconvdata/Makefile +@@ -315,23 +315,25 @@ $(objpfx)iso8859-7jp.stmp: $(charmaps)/I + + headers: $(addprefix $(objpfx), $(generated-modules:=.h)) + ++ifeq ($(cross-compiling),no) ++iconvconfig-cmd = LC_ALL=C LANGUAGE=C \ ++ $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ ++ $(common-objpfx)iconv/iconvconfig ++else ++iconvconfig-cmd = LC_ALL=C LANGUAGE=C \ ++ $(common-objpfx)iconv/iconvconfig-native ++endif ++ + $(addprefix $(inst_gconvdir)/, $(modules.so)): \ + $(inst_gconvdir)/%: $(objpfx)% $(+force) + $(do-install-program) + $(inst_gconvdir)/gconv-modules: gconv-modules $(+force) + $(do-install) +-ifeq (no,$(cross-compiling)) + # Update the $(prefix)/lib/gconv/gconv-modules.cache file. This is necessary + # if this libc has more gconv modules than the previously installed one. + if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \ +- LC_ALL=C LANGUAGE=C \ +- $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ +- $(common-objpfx)iconv/iconvconfig \ +- $(addprefix --prefix=,$(install_root)); \ ++ $(iconvconfig-cmd) $(addprefix --prefix=,$(install_root)); \ + fi +-else +- @echo '*@*@*@ You should recreate $(inst_gconvdir)/gconv-modules.cache' +-endif + + endif # build-shared = yes + +Index: glibc-2.7/include-native/bits/libc-tsd.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/bits/libc-tsd.h +@@ -0,0 +1,3 @@ ++#ifndef __libc_tsd_define ++#define __libc_tsd_define(A,B) ++#endif +Index: glibc-2.7/include-native/config.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/config.h +@@ -0,0 +1 @@ ++/* Empty */ +Index: glibc-2.7/include-native/gnu/stubs.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/gnu/stubs.h +@@ -0,0 +1 @@ ++/* Empty */ +Index: glibc-2.7/include-native/intl/loadinfo.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/intl/loadinfo.h +@@ -0,0 +1,4 @@ ++#ifndef LOADINFO_H ++#define LOADINFO_H ++struct loaded_l10nfile; ++#endif +Index: glibc-2.7/include-native/libintl.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/libintl.h +@@ -0,0 +1,11 @@ ++#ifndef _ ++#define _(X) (X) ++#endif ++ ++#ifndef N_ ++#define N_(X) (X) ++#endif ++ ++#ifndef _libc_intl_domainname ++#define _libc_intl_domainname "libc" ++#endif +Index: glibc-2.7/include-native/symbol-hacks.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/symbol-hacks.h +@@ -0,0 +1 @@ ++/* Empty */ +Index: glibc-2.7/include-native/tls.h +=================================================================== +--- /dev/null ++++ glibc-2.7/include-native/tls.h +@@ -0,0 +1,11 @@ ++#ifndef _include_tls_h ++#define _include_tls_h 1 ++ ++#if USE_TLS && HAVE___THREAD \ ++ && (!defined NOT_IN_libc || defined IS_IN_libpthread) ++# define USE___THREAD 1 ++#else ++# define USE___THREAD 0 ++#endif ++ ++#endif +Index: glibc-2.7/locale/Makefile +=================================================================== +--- glibc-2.7.orig/locale/Makefile ++++ glibc-2.7/locale/Makefile +@@ -44,6 +44,9 @@ categories = ctype messages monetary num + aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \ + xlocale localename global-locale coll-lookup + others = localedef locale ++ifneq ($(cross-compiling),no) ++others-native = localedef-native ++endif + #others-static = localedef locale + install-bin = localedef locale + extra-objs = $(localedef-modules:=.o) $(localedef-aux:=.o) \ +@@ -81,6 +84,12 @@ $(objpfx)localedef: $(localedef-aux:%=$( + $(objpfx)locale: $(locale-modules:%=$(objpfx)%.o) + $(objpfx)localedef $(objpfx)locale: $(lib-modules:%=$(objpfx)%.o) + ++ifneq ($(cross-compiling),no) ++$(objpfx)localedef-native: $(localedef-modules:%=$(objpfx)%-native.o) ++$(objpfx)localedef-native: $(localedef-aux:%=$(objpfx)%-native.o) ++$(objpfx)localedef-native: $(lib-modules:%=$(objpfx)%-native.o) ++endif ++ + C-translit.h: C-translit.h.in gen-translit.pl + $(PERL) gen-translit.pl < $< > $@.tmp + mv -f $@.tmp $@ +Index: glibc-2.7/localedata/Makefile +=================================================================== +--- glibc-2.7.orig/localedata/Makefile ++++ glibc-2.7/localedata/Makefile +@@ -206,8 +206,13 @@ include SUPPORTED + INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES)) + + # Sometimes the whole collection of locale files should be installed. ++ifeq ($(cross-compiling),no) + LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ + $(common-objpfx)elf/ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef ++else ++LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ ++$(common-objpfx)locale/localedef-native ++endif + install-locales: $(INSTALL-SUPPORTED-LOCALES) + + install-locales-dir: +Index: glibc-2.7/Makeconfig +=================================================================== +--- glibc-2.7.orig/Makeconfig ++++ glibc-2.7/Makeconfig +@@ -445,6 +445,12 @@ ifndef +link-static + $(common-objpfx)libc% $(+postinit),$^) \ + $(link-extra-libs-static) $(link-libc-static) $(+postctor) $(+postinit) + endif ++# Command for linking programs against the host system. ++ifndef +link-native +++link-native = $(BUILD_CC) -g -o $@ $^ \ ++ $(LDFLAGS) $(LDFLAGS-$(@F)) \ ++ $(link-extra-libs) ++endif + # Command for statically linking bounded-pointer programs with the C library. + ifndef +link-bounded + +link-bounded = $(CC) -nostdlib -nostartfiles -static -fbounded-pointers -o $@ \ +@@ -658,6 +664,8 @@ endif # $(+cflags) == "" + $(+sysdep-includes) $(includes) \ + $(patsubst %/,-I%,$(..)) $(libio-include) -I. $(sysincludes) + +++includes-native = -I$(..)include-native -I$(objpfx) -I. ++ + # Since libio has several internal header files, we use a -I instead + # of many little headers in the include directory. + libio-include = -I$(..)libio +@@ -672,10 +680,15 @@ CPPFLAGS = $($(subdir)-CPPFLAGS) $(+incl + $(foreach lib,$(libof-$(basename $(@F))) \ + $(libof-$( ++ ++#ifndef __u_char_defined ++# define __u_char_defined ++#endif ++#ifndef __daddr_t_defined ++# define __daddr_t_defined ++#endif ++ diff --git a/patches/glibc-2.8/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch b/patches/glibc-2.8/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch new file mode 100644 index 0000000..a0e2dbd --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch @@ -0,0 +1,32 @@ +Respect environment CPPFLAGS when we run ./configure so we can inject +random -D things without having to set CFLAGS/ASFLAGS + +--- + Makeconfig | 1 + + config.make.in | 1 + + 2 files changed, 2 insertions(+) + +Index: glibc-2.8-20080811/Makeconfig +=================================================================== +--- glibc-2.8-20080811.orig/Makeconfig ++++ glibc-2.8-20080811/Makeconfig +@@ -673,6 +673,7 @@ CPPFLAGS = $($(subdir)-CPPFLAGS) $(+incl + $(foreach lib,$(libof-$(basename $(@F))) \ + $(libof-$( + + * sysdeps/i386/i586/memcpy_chk.S: New file. + * sysdeps/i386/i586/mempcpy_chk.S: Likewise. + * sysdeps/i386/i586/memset_chk.S: Likewise. + +--- + i386/i586/memcpy_chk.S | 1 + + i386/i586/mempcpy_chk.S | 1 + + i386/i586/memset_chk.S | 1 + + 3 files changed, 3 insertions(+) + +Index: glibc-2.8-20080811/i386/i586/memcpy_chk.S +=================================================================== +--- /dev/null ++++ glibc-2.8-20080811/i386/i586/memcpy_chk.S +@@ -0,0 +1 @@ ++#include +Index: glibc-2.8-20080811/i386/i586/mempcpy_chk.S +=================================================================== +--- /dev/null ++++ glibc-2.8-20080811/i386/i586/mempcpy_chk.S +@@ -0,0 +1 @@ ++#include +Index: glibc-2.8-20080811/i386/i586/memset_chk.S +=================================================================== +--- /dev/null ++++ glibc-2.8-20080811/i386/i586/memset_chk.S +@@ -0,0 +1 @@ ++#include diff --git a/patches/glibc-2.8/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch b/patches/glibc-2.8/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch new file mode 100644 index 0000000..e79e024 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch @@ -0,0 +1,55 @@ +revert cfi additions to clone on i386/x86_64 to workaround problems in +gcc's unwinder code. this is not a bug in glibc, it triggers problems +elsewhere. this cfi code does not gain us a whole lot anyways. + +http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html + +--- + sysdeps/unix/sysv/linux/i386/clone.S | 4 ---- + sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- + 2 files changed, 8 deletions(-) + +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/i386/clone.S +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/i386/clone.S ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/i386/clone.S +@@ -120,9 +120,6 @@ L(pseudo_end): + ret + + L(thread_start): +- cfi_startproc; +- /* Clearing frame pointer is insufficient, use CFI. */ +- cfi_undefined (eip); + /* Note: %esi is zero. */ + movl %esi,%ebp /* terminate the stack frame */ + #ifdef RESET_PID +@@ -155,7 +152,6 @@ L(nomoregetpid): + jmp L(haspid) + .previous + #endif +- cfi_endproc; + + cfi_startproc + PSEUDO_END (BP_SYM (__clone)) +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/x86_64/clone.S +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/x86_64/clone.S ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/x86_64/clone.S +@@ -89,9 +89,6 @@ L(pseudo_end): + ret + + L(thread_start): +- cfi_startproc; +- /* Clearing frame pointer is insufficient, use CFI. */ +- cfi_undefined (rip); + /* Clear the frame pointer. The ABI suggests this be done, to mark + the outermost frame obviously. */ + xorl %ebp, %ebp +@@ -116,7 +113,6 @@ L(thread_start): + /* Call exit with return value from function call. */ + movq %rax, %rdi + call HIDDEN_JUMPTARGET (_exit) +- cfi_endproc; + + cfi_startproc; + PSEUDO_END (BP_SYM (__clone)) diff --git a/patches/glibc-2.8/generic/gentoo/1010_all_glibc-queue-header-updates.patch b/patches/glibc-2.8/generic/gentoo/1010_all_glibc-queue-header-updates.patch new file mode 100644 index 0000000..9110f1c --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1010_all_glibc-queue-header-updates.patch @@ -0,0 +1,89 @@ +grab some updates from FreeBSD + +http://bugs.gentoo.org/201979 + +--- + misc/sys/queue.h | 37 +++++++++++++++++++++++++++++++++++++ + 1 file changed, 37 insertions(+) + +Index: glibc-2.8-20080811/misc/sys/queue.h +=================================================================== +--- glibc-2.8-20080811.orig/misc/sys/queue.h ++++ glibc-2.8-20080811/misc/sys/queue.h +@@ -136,6 +136,11 @@ struct { \ + (var); \ + (var) = ((var)->field.le_next)) + ++#define LIST_FOREACH_SAFE(var, head, field, tvar) \ ++ for ((var) = LIST_FIRST((head)); \ ++ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ ++ (var) = (tvar)) ++ + /* + * List access methods. + */ +@@ -197,6 +202,16 @@ struct { \ + #define SLIST_FOREACH(var, head, field) \ + for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) + ++#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ ++ for ((var) = SLIST_FIRST((head)); \ ++ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ ++ (var) = (tvar)) ++ ++#define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ ++ for ((varp) = &SLIST_FIRST((head)); \ ++ ((var) = *(varp)) != NULL; \ ++ (varp) = &SLIST_NEXT((var), field)) ++ + /* + * Singly-linked List access methods. + */ +@@ -242,6 +257,12 @@ struct { \ + (head)->stqh_last = &(elm)->field.stqe_next; \ + } while (/*CONSTCOND*/0) + ++#define STAILQ_LAST(head, type, field) \ ++ (STAILQ_EMPTY((head)) ? \ ++ NULL : \ ++ ((struct type *)(void *) \ ++ ((char *)((head)->stqh_last) - __offsetof(struct type, field)))) ++ + #define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ + (head)->stqh_last = &(elm)->field.stqe_next; \ +@@ -286,6 +307,11 @@ struct { \ + #define STAILQ_FIRST(head) ((head)->stqh_first) + #define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) + ++#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ ++ for ((var) = STAILQ_FIRST((head)); \ ++ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ ++ (var) = (tvar)) ++ + + /* + * Simple queue definitions. +@@ -437,11 +463,22 @@ struct { \ + (var); \ + (var) = ((var)->field.tqe_next)) + ++#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ ++ for ((var) = TAILQ_FIRST((head)); \ ++ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ ++ (var) = (tvar)) ++ + #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ + for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ + (var); \ + (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) + ++#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ ++ for ((var) = TAILQ_LAST((head), headname); \ ++ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ ++ (var) = (tvar)) ++ ++ + #define TAILQ_CONCAT(head1, head2, field) do { \ + if (!TAILQ_EMPTY(head2)) { \ + *(head1)->tqh_last = (head2)->tqh_first; \ diff --git a/patches/glibc-2.8/generic/gentoo/1030_all_glibc-manual-no-perl.patch b/patches/glibc-2.8/generic/gentoo/1030_all_glibc-manual-no-perl.patch new file mode 100644 index 0000000..5b11ce0 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1030_all_glibc-manual-no-perl.patch @@ -0,0 +1,29 @@ +If we're using a cvs snapshot which updates the source files, and +perl isn't installed yet, then we can't regen the docs. Not a big +deal, so just whine a little and continue on our merry way. + +http://bugs.gentoo.org/60132 + +--- + manual/Makefile | 5 +++++ + 1 file changed, 5 insertions(+) + +Index: glibc-2.8-20080811/manual/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/manual/Makefile ++++ glibc-2.8-20080811/manual/Makefile +@@ -104,9 +104,14 @@ dir-add.texi: xtract-typefun.awk $(texis + libm-err.texi: stamp-libm-err + stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ + $(dir)/libm-test-ulps)) ++ifneq ($(PERL),no) + pwd=`pwd`; \ + $(PERL) $< $$pwd/.. > libm-err-tmp + $(move-if-change) libm-err-tmp libm-err.texi ++else ++ echo "Unable to rebuild math docs, no perl installed" ++ touch libm-err.texi ++endif + touch $@ + + # Generate Texinfo files from the C source for the example programs. diff --git a/patches/glibc-2.8/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch b/patches/glibc-2.8/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch new file mode 100644 index 0000000..636dda6 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch @@ -0,0 +1,74 @@ +#! /bin/sh -e + +# DP: Description: Fix localedef segfault when run under exec-shield, +# PaX or similar. (#231438, #198099) +# DP: Dpatch Author: James Troup +# DP: Patch Author: (probably) Jakub Jelinek +# DP: Upstream status: Unknown +# DP: Status Details: Unknown +# DP: Date: 2004-03-16 + +if [ $# -ne 2 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +--- + locale/programs/3level.h | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) + +Index: glibc-2.8-20080811/locale/programs/3level.h +=================================================================== +--- glibc-2.8-20080811.orig/locale/programs/3level.h ++++ glibc-2.8-20080811/locale/programs/3level.h +@@ -203,6 +203,42 @@ CONCAT(TABLE,_iterate) (struct TABLE *t, + } + } + } ++ ++/* GCC ATM seems to do a poor job with pointers to nested functions passed ++ to inlined functions. Help it a little bit with this hack. */ ++#define wchead_table_iterate(tp, fn) \ ++do \ ++ { \ ++ struct wchead_table *t = (tp); \ ++ uint32_t index1; \ ++ for (index1 = 0; index1 < t->level1_size; index1++) \ ++ { \ ++ uint32_t lookup1 = t->level1[index1]; \ ++ if (lookup1 != ((uint32_t) ~0)) \ ++ { \ ++ uint32_t lookup1_shifted = lookup1 << t->q; \ ++ uint32_t index2; \ ++ for (index2 = 0; index2 < (1 << t->q); index2++) \ ++ { \ ++ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \ ++ if (lookup2 != ((uint32_t) ~0)) \ ++ { \ ++ uint32_t lookup2_shifted = lookup2 << t->p; \ ++ uint32_t index3; \ ++ for (index3 = 0; index3 < (1 << t->p); index3++) \ ++ { \ ++ struct element_t *lookup3 \ ++ = t->level3[index3 + lookup2_shifted]; \ ++ if (lookup3 != NULL) \ ++ fn ((((index1 << t->q) + index2) << t->p) + index3, \ ++ lookup3); \ ++ } \ ++ } \ ++ } \ ++ } \ ++ } \ ++ } while (0) ++ + #endif + + #ifndef NO_FINALIZE diff --git a/patches/glibc-2.8/generic/gentoo/1050_all_glibc-posix-awk.patch b/patches/glibc-2.8/generic/gentoo/1050_all_glibc-posix-awk.patch new file mode 100644 index 0000000..1862c68 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1050_all_glibc-posix-awk.patch @@ -0,0 +1,23 @@ +http://bugs.gentoo.org/202511 + +2007-12-24 Mike Frysinger + + * elf/Makefile ($(objpfx)ld.so): Use POSIX (EF)? in awk. + +--- + elf/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: glibc-2.8-20080811/elf/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/elf/Makefile ++++ glibc-2.8-20080811/elf/Makefile +@@ -307,7 +307,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld + -Wl,-soname=$(rtld-installed-name) -T $@.lds + rm -f $@.lds + readelf -s $@ \ +- | $(AWK) '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }' ++ | $(AWK) '($$7 ~ /^UND(EF)?$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }' + + # interp.c exists just to get this string into the libraries. + CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \ diff --git a/patches/glibc-2.8/generic/gentoo/1055_all_glibc-resolv-dynamic.patch b/patches/glibc-2.8/generic/gentoo/1055_all_glibc-resolv-dynamic.patch new file mode 100644 index 0000000..472a78f --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1055_all_glibc-resolv-dynamic.patch @@ -0,0 +1,44 @@ +ripped from SuSE + +if /etc/resolv.conf is updated, then make sure applications +already running get the updated information. + +http://bugs.gentoo.org/177416 + +--- + resolv/res_libc.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +Index: glibc-2.8-20080811/resolv/res_libc.c +=================================================================== +--- glibc-2.8-20080811.orig/resolv/res_libc.c ++++ glibc-2.8-20080811/resolv/res_libc.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + + /* The following bit is copied from res_data.c (where it is #ifdef'ed +@@ -95,6 +96,20 @@ int + __res_maybe_init (res_state resp, int preinit) + { + if (resp->options & RES_INIT) { ++ static time_t last_mtime, last_check; ++ time_t now; ++ struct stat statbuf; ++ ++ time (&now); ++ if (now != last_check) { ++ last_check = now; ++ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) { ++ last_mtime = statbuf.st_mtime; ++ atomicinclock (lock); ++ atomicinc (__res_initstamp); ++ atomicincunlock (lock); ++ } ++ } + if (__res_initstamp != resp->_u._ext.initstamp) { + if (resp->nscount > 0) { + __res_iclose (resp, true); diff --git a/patches/glibc-2.8/generic/gentoo/1075_all_glibc-section-comments.patch b/patches/glibc-2.8/generic/gentoo/1075_all_glibc-section-comments.patch new file mode 100644 index 0000000..da55cb9 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1075_all_glibc-section-comments.patch @@ -0,0 +1,29 @@ +http://sources.redhat.com/ml/binutils/2004-04/msg00665.html + +fixes building on some architectures (like m68k/arm/cris/etc...) because +it does the right thing + +--- + include/libc-symbols.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +Index: glibc-2.8-20080811/include/libc-symbols.h +=================================================================== +--- glibc-2.8-20080811.orig/include/libc-symbols.h ++++ glibc-2.8-20080811/include/libc-symbols.h +@@ -240,12 +240,12 @@ + # define __make_section_unallocated(section_string) + # endif + +-/* Tacking on "\n\t#" to the section name makes gcc put it's bogus ++/* Tacking on "\n#APP\n\t#" to the section name makes gcc put it's bogus + section attributes on what looks like a comment to the assembler. */ + # ifdef HAVE_SECTION_QUOTES +-# define __sec_comment "\"\n\t#\"" ++# define __sec_comment "\"\n#APP\n\t#\"" + # else +-# define __sec_comment "\n\t#" ++# define __sec_comment "\n#APP\n\t#" + # endif + # define link_warning(symbol, msg) \ + __make_section_unallocated (".gnu.warning." #symbol) \ diff --git a/patches/glibc-2.8/generic/gentoo/1080_all_glibc-no-inline-gmon.patch b/patches/glibc-2.8/generic/gentoo/1080_all_glibc-no-inline-gmon.patch new file mode 100644 index 0000000..623df27 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1080_all_glibc-no-inline-gmon.patch @@ -0,0 +1,38 @@ +http://bugs.gentoo.org/196245 +http://sourceware.org/ml/libc-alpha/2006-05/msg00017.html + +Attached is a patch to add __attribute__ ((noinline)) to +call_gmon_start. + +Without this patch, the sec script that processed initfini.s removes a +part of inlined call_gmon_start, causing undefined label errors. + +This patch solves the problem by forcing gcc not to inline +call_gmon_start with __attribute__ ((noinline)). + +Tested by building for arm-none-lixux-gnueabi. OK to apply? + +Kazu Hirata + +2006-05-07 Kazu Hirata <kazu@codesourcery.com> + + * sysdeps/generic/initfini.c (call_gmon_start): Add + __attribute__ ((noinline)). + +--- + sysdeps/generic/initfini.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: glibc-2.8-20080811/sysdeps/generic/initfini.c +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/generic/initfini.c ++++ glibc-2.8-20080811/sysdeps/generic/initfini.c +@@ -70,7 +70,7 @@ asm ("\n/*@TESTS_END*/"); + /* The beginning of _init: */ + asm ("\n/*@_init_PROLOG_BEGINS*/"); + +-static void ++static void __attribute__ ((noinline)) + call_gmon_start(void) + { + extern void __gmon_start__ (void) __attribute__ ((weak)); /*weak_extern (__gmon_start__);*/ diff --git a/patches/glibc-2.8/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch b/patches/glibc-2.8/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch new file mode 100644 index 0000000..a3a5872 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1090_all_glibc-2.3.6-fix-pr631.patch @@ -0,0 +1,52 @@ +From dank@kegel.com +Wed Jun 15 09:12:43 PDT 2005 + +Fixes + +build-glibc/libc.a(nsswitch.o)(.data+0x64): undefined reference to `_nss_files_getaliasent_r' +build-glibc/libc.a(nsswitch.o)(.data+0x6c): undefined reference to `_nss_files_endaliasent' +... 53 lines deleted ... +build-glibc/libc.a(nsswitch.o)(.data+0x21c): undefined reference to `_nss_files_getspnam_r' +collect2: ld returned 1 exit status +make[2]: *** [/build/gcc-3.4.3-glibc-2.3.5-hdrs-2.6.11.2/i686-unknown-linux-gnu/build-glibc/elf/ldconfig] Error 1 + +when building glibc with --enable-static-nss. + +See http://sources.redhat.com/bugzilla/show_bug.cgi?id=631 + +--- + Makeconfig | 2 +- + elf/Makefile | 7 +++++++ + 2 files changed, 8 insertions(+), 1 deletion(-) + +Index: glibc-2.8-20080811/Makeconfig +=================================================================== +--- glibc-2.8-20080811.orig/Makeconfig ++++ glibc-2.8-20080811/Makeconfig +@@ -509,7 +509,7 @@ endif + + # The static libraries. + ifeq (yes,$(build-static)) +-link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(common-objpfx)libc.a ++link-libc-static = $(common-objpfx)libc.a $(static-gnulib) $(otherlibs) $(common-objpfx)libc.a + else + ifeq (yes,$(build-shared)) + # We can try to link the programs with lib*_pic.a... +Index: glibc-2.8-20080811/elf/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/elf/Makefile ++++ glibc-2.8-20080811/elf/Makefile +@@ -121,6 +121,13 @@ install-others = $(inst_slibdir)/$(rtld- + install-bin-script = ldd + endif + ++ifeq (yes,$(build-static-nss)) ++nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) ++resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv) ++otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ ++ $(resolvobjdir)/libresolv.a ++endif ++ + others = sprof sln + install-bin = sprof + others-static = sln diff --git a/patches/glibc-2.8/generic/gentoo/1100_all_glibc-2.3.3-china.patch b/patches/glibc-2.8/generic/gentoo/1100_all_glibc-2.3.3-china.patch new file mode 100644 index 0000000..3be9ea0 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1100_all_glibc-2.3.3-china.patch @@ -0,0 +1,35 @@ +--- + localedata/locales/zh_TW | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +Index: glibc-2.8-20080811/localedata/locales/zh_TW +=================================================================== +--- glibc-2.8-20080811.orig/localedata/locales/zh_TW ++++ glibc-2.8-20080811/localedata/locales/zh_TW +@@ -1,7 +1,7 @@ + comment_char % + escape_char / + % +-% Chinese language locale for Taiwan R.O.C. ++% Chinese language locale for Taiwan + % charmap: BIG5-CP950 + % + % Original Author: +@@ -17,7 +17,7 @@ escape_char / + % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf + + LC_IDENTIFICATION +-title "Chinese locale for Taiwan R.O.C." ++title "Chinese locale for Taiwan" + source "" + address "" + contact "" +@@ -25,7 +25,7 @@ email "bug-glibc-locales@gnu.org" + tel "" + fax "" + language "Chinese" +-territory "Taiwan R.O.C." ++territory "Taiwan" + revision "0.2" + date "2000-08-02" + % diff --git a/patches/glibc-2.8/generic/gentoo/1103_all_glibc-new-valencian-locale.patch b/patches/glibc-2.8/generic/gentoo/1103_all_glibc-new-valencian-locale.patch new file mode 100644 index 0000000..df9d623 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1103_all_glibc-new-valencian-locale.patch @@ -0,0 +1,122 @@ +http://bugs.gentoo.org/show_bug.cgi?id=131815 +http://sourceware.org/bugzilla/show_bug.cgi?id=2522 + +--- + localedata/SUPPORTED | 2 + localedata/locales/ca_ES@valencia | 96 ++++++++++++++++++++++++++++++++++++++ + 2 files changed, 98 insertions(+) + +Index: glibc-2.8-20080811/localedata/SUPPORTED +=================================================================== +--- glibc-2.8-20080811.orig/localedata/SUPPORTED ++++ glibc-2.8-20080811/localedata/SUPPORTED +@@ -72,6 +72,8 @@ ca_AD/ISO-8859-15 \ + ca_ES.UTF-8/UTF-8 \ + ca_ES/ISO-8859-1 \ + ca_ES@euro/ISO-8859-15 \ ++ca_ES.UTF-8@valencia/UTF-8 \ ++ca_ES@valencia/ISO-8859-15 \ + ca_FR.UTF-8/UTF-8 \ + ca_FR/ISO-8859-15 \ + ca_IT.UTF-8/UTF-8 \ +Index: glibc-2.8-20080811/localedata/locales/ca_ES@valencia +=================================================================== +--- /dev/null ++++ glibc-2.8-20080811/localedata/locales/ca_ES@valencia +@@ -0,0 +1,96 @@ ++comment_char % ++escape_char / ++% ++% Valencian (southern Catalan) locale for Spain with Euro ++% ++% Note that this locale is almost the same as ca_ES@euro. The point of having ++% a separate locale is only for PO translations, which have a lot of social ++% support and are very appreciated by the Valencian-speaking community. ++% ++% Contact: Jordi Mallach ++% Email: jordi@gnu.org ++% Tel: ++% Fax: ++% Language: ca ++% Territory: ES ++% Option: euro ++% Revision: 1.0 ++% Date: 2006-04-06 ++% Application: general ++% Users: general ++% Repertoiremap: mnemonic,ds ++% Charset: ISO-8859-15 ++% Distribution and use is free, also ++% for commercial purposes. ++ ++LC_IDENTIFICATION ++title "Valencian (southern Catalan) locale for Spain with Euro" ++source "" ++address "" ++contact "Jordi Mallach" ++email "jordi@gnu.org" ++tel "" ++fax "" ++language "Catalan" ++territory "Spain" ++revision "1.0" ++date "2006-04-06" ++% ++category "ca_ES@valencia:2006";LC_IDENTIFICATION ++category "ca_ES@valencia:2006";LC_CTYPE ++category "ca_ES@valencia:2006";LC_COLLATE ++category "ca_ES@valencia:2006";LC_MONETARY ++category "ca_ES@valencia:2006";LC_NUMERIC ++category "ca_ES@valencia:2006";LC_TIME ++category "ca_ES@valencia:2006";LC_MESSAGES ++category "ca_ES@valencia:2006";LC_PAPER ++category "ca_ES@valencia:2006";LC_NAME ++category "ca_ES@valencia:2006";LC_ADDRESS ++category "ca_ES@valencia:2006";LC_TELEPHONE ++category "ca_ES@valencia:2006";LC_MEASUREMENT ++ ++END LC_IDENTIFICATION ++ ++LC_CTYPE ++copy "i18n" ++END LC_CTYPE ++ ++LC_COLLATE ++copy "ca_ES" ++END LC_COLLATE ++ ++LC_MONETARY ++copy "ca_ES" ++END LC_MONETARY ++ ++LC_NUMERIC ++copy "ca_ES" ++END LC_NUMERIC ++ ++LC_TIME ++copy "ca_ES" ++END LC_TIME ++ ++LC_MESSAGES ++copy "ca_ES" ++END LC_MESSAGES ++ ++LC_PAPER ++copy "ca_ES" ++END LC_PAPER ++ ++LC_NAME ++copy "ca_ES" ++END LC_NAME ++ ++LC_ADDRESS ++copy "ca_ES" ++END LC_ADDRESS ++ ++LC_TELEPHONE ++copy "ca_ES" ++END LC_TELEPHONE ++ ++LC_MEASUREMENT ++copy "ca_ES" ++END LC_MEASUREMENT diff --git a/patches/glibc-2.8/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch b/patches/glibc-2.8/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch new file mode 100644 index 0000000..a238666 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1120_all_glibc-2.5-strict-aliasing.patch @@ -0,0 +1,91 @@ +workaround strict aliasing warnings on individual files rather than +forcing the whole build with -fno-strict-aliasing + +http://bugs.gentoo.org/155906 + +note that we leave the logout.c and logwtmp.c warnings alone as the +code path that invokes the warning should not be executed when the +warning is applicable. + +--- + libio/Makefile | 4 ++-- + nis/Makefile | 3 +++ + nptl/Makefile | 1 + + nss/Makefile | 2 ++ + sunrpc/Makefile | 2 +- + 5 files changed, 9 insertions(+), 3 deletions(-) + +Index: glibc-2.8-20080811/libio/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/libio/Makefile ++++ glibc-2.8-20080811/libio/Makefile +@@ -91,7 +91,7 @@ CFLAGS-fseeko.c = $(exceptions) + CFLAGS-ftello64.c = $(exceptions) + CFLAGS-ftello.c = $(exceptions) + CFLAGS-fwide.c = $(exceptions) +-CFLAGS-genops.c = $(exceptions) ++CFLAGS-genops.c = $(exceptions) -fno-strict-aliasing + CFLAGS-getc.c = $(exceptions) + CFLAGS-getchar.c = $(exceptions) + CFLAGS-getwc.c = $(exceptions) +@@ -133,7 +133,7 @@ CFLAGS-putwc.c = $(exceptions) + CFLAGS-putwchar.c = $(exceptions) + CFLAGS-rewind.c = $(exceptions) + CFLAGS-wfileops.c = $(exceptions) +-CFLAGS-wgenops.c = $(exceptions) ++CFLAGS-wgenops.c = $(exceptions) -fno-strict-aliasing + CFLAGS-oldiofopen.c = $(exceptions) + CFLAGS-iofopen.c = $(exceptions) + CFLAGS-iofopen64.c = $(exceptions) +Index: glibc-2.8-20080811/nis/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/nis/Makefile ++++ glibc-2.8-20080811/nis/Makefile +@@ -67,6 +67,9 @@ libnss_nisplus-routines := $(addprefix n + nss-nisplus nisplus-initgroups + libnss_nisplus-inhibit-o = $(filter-out .os,$(object-suffixes)) + ++CFLAGS-nis_xdr.c += -fno-strict-aliasing ++CFLAGS-yp_xdr.c += -fno-strict-aliasing ++ + include ../Rules + + +Index: glibc-2.8-20080811/nptl/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/nptl/Makefile ++++ glibc-2.8-20080811/nptl/Makefile +@@ -193,6 +193,7 @@ CFLAGS-tcdrain.c = -fexceptions -fasynch + + CFLAGS-pt-system.c = -fexceptions + ++CFLAGS-unwind-dw2.c += -fno-strict-aliasing + + tests = tst-typesizes \ + tst-attr1 tst-attr2 tst-attr3 \ +Index: glibc-2.8-20080811/nss/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/nss/Makefile ++++ glibc-2.8-20080811/nss/Makefile +@@ -72,6 +72,8 @@ ifneq ($(build-static-nss),yes) + libnss_files-inhibit-o = $(filter-out .os,$(object-suffixes)) + endif + ++CFLAGS-nsswitch.c += -fno-strict-aliasing ++ + include ../Rules + + +Index: glibc-2.8-20080811/sunrpc/Makefile +=================================================================== +--- glibc-2.8-20080811.orig/sunrpc/Makefile ++++ glibc-2.8-20080811/sunrpc/Makefile +@@ -127,7 +127,7 @@ CFLAGS-pmap_rmt.c = -fexceptions + CFLAGS-clnt_perr.c = -fexceptions + CFLAGS-openchild.c = -fexceptions + +-CPPFLAGS += -D_RPC_THREAD_SAFE_ ++CPPFLAGS += -D_RPC_THREAD_SAFE_ -fno-strict-aliasing + + include ../Rules + diff --git a/patches/glibc-2.8/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch b/patches/glibc-2.8/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch new file mode 100644 index 0000000..6a2e833 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/1130_all_glibc-2.4-undefine-__i686.patch @@ -0,0 +1,49 @@ +If gcc is configured to generate i686 code or better by default (like +when using the --with-arch=pentium3 configure option), then the __i686 +macro will always be defined automatically and thus screw up the +compilation of some .S files. +http://bugs.gentoo.org/131108 +http://sourceware.org/ml/libc-alpha/2006-04/msg00090.html + +2006-04-25 Mike Frysinger + + * sysdeps/i386/sysdep.h (__i686): Undefine. + +--- + nptl/sysdeps/pthread/pt-initfini.c | 3 +++ + sysdeps/i386/sysdep.h | 8 ++++++++ + 2 files changed, 11 insertions(+) + +Index: glibc-2.8-20080811/nptl/sysdeps/pthread/pt-initfini.c +=================================================================== +--- glibc-2.8-20080811.orig/nptl/sysdeps/pthread/pt-initfini.c ++++ glibc-2.8-20080811/nptl/sysdeps/pthread/pt-initfini.c +@@ -45,6 +45,9 @@ + /* Embed an #include to pull in the alignment and .end directives. */ + asm ("\n#include \"defs.h\""); + ++/* Embed an #include to pull in asm settings. */ ++asm ("\n#ifdef __i686__\n#include \n#endif"); ++ + /* The initial common code ends here. */ + asm ("\n/*@HEADER_ENDS*/"); + +Index: glibc-2.8-20080811/sysdeps/i386/sysdep.h +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/i386/sysdep.h ++++ glibc-2.8-20080811/sysdeps/i386/sysdep.h +@@ -18,6 +18,14 @@ + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + ++/* ++ * When building for i686 targets or better, gcc automatically defines ++ * '__i686' to '1' for us which causes trouble when using section names ++ * like '__i686.get_pc_thunk.reg'. Since we check for __i686__ in the ++ * code, killing '__i686' shouldn't be a problem. ++ */ ++#undef __i686 ++ + #include + + #ifdef __ASSEMBLER__ diff --git a/patches/glibc-2.8/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch b/patches/glibc-2.8/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch new file mode 100644 index 0000000..eca5d11 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch @@ -0,0 +1,73 @@ + With latest versions of glibc, a lot of apps failed on a PaX enabled + system with: + cannot enable executable stack as shared object requires: Permission denied + + This is due to PaX 'exec-protecting' the stack, and ld.so then trying + to make the stack executable due to some libraries not containing the + PT_GNU_STACK section. Bug #32960. (12 Nov 2003). + + Patch also NPTL. Bug #116086. (20 Dec 2005). + +--- + nptl/allocatestack.c | 3 ++- + sysdeps/unix/sysv/linux/dl-execstack.c | 19 ++++++++++++++++--- + 2 files changed, 18 insertions(+), 4 deletions(-) + +Index: glibc-2.8-20080811/nptl/allocatestack.c +=================================================================== +--- glibc-2.8-20080811.orig/nptl/allocatestack.c ++++ glibc-2.8-20080811/nptl/allocatestack.c +@@ -299,7 +299,8 @@ change_stack_perm (struct pthread *pd + # error "Define either _STACK_GROWS_DOWN or _STACK_GROWS_UP" + #endif + if (mprotect (stack, len, PROT_READ | PROT_WRITE | PROT_EXEC) != 0) +- return errno; ++ if (errno != EACCES) /* PAX is enabled */ ++ return errno; + + return 0; + } +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/dl-execstack.c +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/dl-execstack.c ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/dl-execstack.c +@@ -63,7 +63,10 @@ _dl_make_stack_executable (void **stack_ + else + # endif + { +- result = errno; ++ if (errno == EACCES) /* PAX is enabled */ ++ result = 0; ++ else ++ result = errno; + goto out; + } + } +@@ -89,7 +92,12 @@ _dl_make_stack_executable (void **stack_ + page -= size; + else + { +- if (errno != ENOMEM) /* Unexpected failure mode. */ ++ if (errno == EACCES) /* PAX is enabled */ ++ { ++ result = 0; ++ goto out; ++ } ++ else if (errno != ENOMEM) /* Unexpected failure mode. */ + { + result = errno; + goto out; +@@ -115,7 +123,12 @@ _dl_make_stack_executable (void **stack_ + page += size; + else + { +- if (errno != ENOMEM) /* Unexpected failure mode. */ ++ if (errno == EACCES) /* PAX is enabled */ ++ { ++ result = 0; ++ goto out; ++ } ++ else if (errno != ENOMEM) /* Unexpected failure mode. */ + { + result = errno; + goto out; diff --git a/patches/glibc-2.8/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch b/patches/glibc-2.8/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch new file mode 100644 index 0000000..e4e2c26 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch @@ -0,0 +1,35 @@ +--- + elf/elf.h | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +Index: glibc-2.8-20080811/elf/elf.h +=================================================================== +--- glibc-2.8-20080811.orig/elf/elf.h ++++ glibc-2.8-20080811/elf/elf.h +@@ -571,6 +571,7 @@ typedef struct + #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ + #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ + #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ ++#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ + #define PT_LOSUNW 0x6ffffffa + #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ + #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ +@@ -584,6 +585,18 @@ typedef struct + #define PF_X (1 << 0) /* Segment is executable */ + #define PF_W (1 << 1) /* Segment is writable */ + #define PF_R (1 << 2) /* Segment is readable */ ++#define PF_PAGEEXEC (1 << 4) /* Enable PAGEEXEC */ ++#define PF_NOPAGEEXEC (1 << 5) /* Disable PAGEEXEC */ ++#define PF_SEGMEXEC (1 << 6) /* Enable SEGMEXEC */ ++#define PF_NOSEGMEXEC (1 << 7) /* Disable SEGMEXEC */ ++#define PF_MPROTECT (1 << 8) /* Enable MPROTECT */ ++#define PF_NOMPROTECT (1 << 9) /* Disable MPROTECT */ ++#define PF_RANDEXEC (1 << 10) /* Enable RANDEXEC */ ++#define PF_NORANDEXEC (1 << 11) /* Disable RANDEXEC */ ++#define PF_EMUTRAMP (1 << 12) /* Enable EMUTRAMP */ ++#define PF_NOEMUTRAMP (1 << 13) /* Disable EMUTRAMP */ ++#define PF_RANDMMAP (1 << 14) /* Enable RANDMMAP */ ++#define PF_NORANDMMAP (1 << 15) /* Disable RANDMMAP */ + #define PF_MASKOS 0x0ff00000 /* OS-specific */ + #define PF_MASKPROC 0xf0000000 /* Processor-specific */ + diff --git a/patches/glibc-2.8/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch b/patches/glibc-2.8/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch new file mode 100644 index 0000000..3ba4378 --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch @@ -0,0 +1,42 @@ +http://sources.redhat.com/ml/libc-alpha/2003-06/msg00027.html +http://www.m17n.org/linux-sh/ml/linux-sh/2003-05/msg00010.html + +http://rpm.sh-linux.org/rpm-2004/target/SRPMS/glibc-2.3.3-27.12.src.rpm + +http://bugs.gentoo.org/100696 + +--- + sysdeps/unix/sysv/linux/sh/Versions | 1 + + sysdeps/unix/sysv/linux/sh/sysdep.S | 10 ++++++++++ + 2 files changed, 11 insertions(+) + +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/Versions +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/Versions ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/Versions +@@ -2,6 +2,7 @@ libc { + GLIBC_2.2 { + # functions used in other libraries + __xstat64; __fxstat64; __lxstat64; ++ __fpscr_values; + + # a* + alphasort64; +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sysdep.S +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sysdep.S ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sysdep.S +@@ -32,3 +32,13 @@ ENTRY (__syscall_error) + + #define __syscall_error __syscall_error_1 + #include ++ ++ .data ++ .align 3 ++ .globl ___fpscr_values ++ .type ___fpscr_values, @object ++ .size ___fpscr_values, 8 ++___fpscr_values: ++ .long 0 ++ .long 0x80000 ++weak_alias (___fpscr_values, __fpscr_values) diff --git a/patches/glibc-2.8/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch b/patches/glibc-2.8/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch new file mode 100644 index 0000000..54b51cc --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch @@ -0,0 +1,76 @@ +2007-03-13 Mike Frysinger + + * sysdeps/unix/sysv/linux/sh/sys/user.h: Copy Linux's asm-sh/user.h. + +--- + sysdeps/unix/sysv/linux/sh/sys/user.h | 56 ++++++++++++++++++++++++++++++++-- + 1 file changed, 53 insertions(+), 3 deletions(-) + +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/user.h +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sys/user.h ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/user.h +@@ -19,10 +19,60 @@ + #ifndef _SYS_USER_H + #define _SYS_USER_H 1 + +-#include ++#include ++#include + +-#include ++/* ++ * Core file format: The core file is written in such a way that gdb ++ * can understand it and provide useful information to the user (under ++ * linux we use the `trad-core' bfd). The file contents are as follows: ++ * ++ * upage: 1 page consisting of a user struct that tells gdb ++ * what is present in the file. Directly after this is a ++ * copy of the task_struct, which is currently not used by gdb, ++ * but it may come in handy at some point. All of the registers ++ * are stored as part of the upage. The upage should always be ++ * only one page long. ++ * data: The data segment follows next. We use current->end_text to ++ * current->brk to pick up all of the user variables, plus any memory ++ * that may have been sbrk'ed. No attempt is made to determine if a ++ * page is demand-zero or if a page is totally unused, we just cover ++ * the entire range. All of the addresses are rounded in such a way ++ * that an integral number of pages is written. ++ * stack: We need the stack information in order to get a meaningful ++ * backtrace. We need to write the data from usp to ++ * current->start_stack, so we round each of these in order to be able ++ * to write an integer number of pages. ++ */ + +-#undef start_thread ++struct user_fpu_struct { ++ unsigned long fp_regs[16]; ++ unsigned long xfp_regs[16]; ++ unsigned long fpscr; ++ unsigned long fpul; ++}; ++ ++struct user { ++ struct pt_regs regs; /* entire machine state */ ++ struct user_fpu_struct fpu; /* Math Co-processor registers */ ++ int u_fpvalid; /* True if math co-processor being used */ ++ size_t u_tsize; /* text size (pages) */ ++ size_t u_dsize; /* data size (pages) */ ++ size_t u_ssize; /* stack size (pages) */ ++ unsigned long start_code; /* text starting address */ ++ unsigned long start_data; /* data starting address */ ++ unsigned long start_stack; /* stack starting address */ ++ long int signal; /* signal causing core dump */ ++ struct regs * u_ar0; /* help gdb find registers */ ++ struct user_fpu_struct* u_fpstate; /* Math Co-processor pointer */ ++ unsigned long magic; /* identifies a core file */ ++ char u_comm[32]; /* user command name */ ++}; ++ ++#define NBPG getpagesize() ++#define UPAGES 1 ++#define HOST_TEXT_START_ADDR (u.start_code) ++#define HOST_DATA_START_ADDR (u.start_data) ++#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) + + #endif /* sys/user.h */ diff --git a/patches/glibc-2.8/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch b/patches/glibc-2.8/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch new file mode 100644 index 0000000..e13d01f --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch @@ -0,0 +1,33 @@ +2007-03-13 Mike Frysinger + + * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Copy Linux's asm-sh/elf.h types. + +--- + sysdeps/unix/sysv/linux/sh/sys/procfs.h | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +Index: glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/procfs.h +=================================================================== +--- glibc-2.8-20080811.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h ++++ glibc-2.8-20080811/sysdeps/unix/sysv/linux/sh/sys/procfs.h +@@ -29,10 +29,19 @@ + #include + #include + #include +-#include + + __BEGIN_DECLS + ++/* ++ * ELF register definitions... ++ */ ++typedef unsigned long elf_greg_t; ++ ++#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t)) ++typedef elf_greg_t elf_gregset_t[ELF_NGREG]; ++ ++typedef struct user_fpu_struct elf_fpregset_t; ++ + struct elf_siginfo + { + int si_signo; /* Signal number. */ diff --git a/patches/glibc-2.8/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch b/patches/glibc-2.8/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch new file mode 100644 index 0000000..74579dc --- /dev/null +++ b/patches/glibc-2.8/generic/gentoo/6645_all_glibc-mips_shn_undef-hack.patch @@ -0,0 +1,29 @@ + Hack from Debian to hopefully get sandbox working on mips + +<`Kumba> ths: given the SHN_UNDEF thing is a hack, what's the preferred solution? + For fakeroot the simplest trigger is "fakeroot file /bin/ls". + `Kumba: I haven't found a better one yet. + Probably marker symbols around the stub section, and then exclude it from the link map. + This needs a ld change. + +--- + elf/do-lookup.h | 6 ++++++ + 1 file changed, 6 insertions(+) + +Index: glibc-2.8-20080811/elf/do-lookup.h +=================================================================== +--- glibc-2.8-20080811.orig/elf/do-lookup.h ++++ glibc-2.8-20080811/elf/do-lookup.h +@@ -246,6 +246,12 @@ do_lookup_x (const char *undef_name, uin + } + /* FALLTHROUGH */ + case STB_GLOBAL: ++#ifdef __mips__ ++ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF ++ symbols, we skip them. */ ++ if (sym->st_shndx == SHN_UNDEF) ++ break; ++#endif + /* Global definition. Just what we need. */ + result->s = sym; + result->m = (struct link_map *) map; diff --git a/patches/glibc-2.8/generic/glibc-2.5_stdlib_longlong.h b/patches/glibc-2.8/generic/glibc-2.5_stdlib_longlong.h new file mode 100644 index 0000000..f465c69 --- /dev/null +++ b/patches/glibc-2.8/generic/glibc-2.5_stdlib_longlong.h @@ -0,0 +1,37 @@ +--- + stdlib/longlong.h | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +Index: glibc-2.8-20080811/stdlib/longlong.h +=================================================================== +--- glibc-2.8-20080811.orig/stdlib/longlong.h ++++ glibc-2.8-20080811/stdlib/longlong.h +@@ -205,6 +205,14 @@ UDItype __umulsidi3 (USItype, USItype); + "rI" ((USItype) (bh)), \ + "r" ((USItype) (al)), \ + "rI" ((USItype) (bl)) __CLOBBER_CC) ++/* v3m and all higher arches have long multiply support. */ ++#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__) ++#define umul_ppmm(xh, xl, a, b) \ ++ __asm__ ("umull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) ++#define UMUL_TIME 5 ++#define smul_ppmm(xh, xl, a, b) \ ++ __asm__ ("smull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) ++#else + #define umul_ppmm(xh, xl, a, b) \ + {register USItype __t0, __t1, __t2; \ + __asm__ ("%@ Inlined umul_ppmm\n" \ +@@ -226,7 +234,13 @@ UDItype __umulsidi3 (USItype, USItype); + : "r" ((USItype) (a)), \ + "r" ((USItype) (b)) __CLOBBER_CC );} + #define UMUL_TIME 20 ++#endif + #define UDIV_TIME 100 ++#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) ++#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) ++#define COUNT_LEADING_ZEROS_0 32 ++#endif ++ + #endif /* __arm__ */ + + #if defined (__hppa) && W_TYPE_SIZE == 32 diff --git a/patches/glibc-2.8/generic/glibc-configure-apple-as.patch b/patches/glibc-2.8/generic/glibc-configure-apple-as.patch new file mode 100644 index 0000000..13b7b23 --- /dev/null +++ b/patches/glibc-2.8/generic/glibc-configure-apple-as.patch @@ -0,0 +1,47 @@ +http://in3www.epfl.ch/~schaffne/glibc-configure-apple-as.patch +http://sources.redhat.com/ml/crossgcc/2004-02/msg00151.html + +The following makes it possible to configure glibc-2.3.2 on Mac OS X, +where the assembler but doesn't understand the --version flag. + +Fixes the symptom +checking whether ld is GNU ld... no +checking for /usr/libexec/gcc/darwin/ppc/as... /usr/libexec/gcc/darwin/ppc/as +checking version of /usr/libexec/gcc/darwin/ppc/as... + + +--- + configure | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +Index: glibc-2.8-20080811/configure +=================================================================== +--- glibc-2.8-20080811.orig/configure ++++ glibc-2.8-20080811/configure +@@ -4527,7 +4527,7 @@ else + # Found it, now check the version. + { echo "$as_me:$LINENO: checking version of $AS" >&5 + echo $ECHO_N "checking version of $AS... $ECHO_C" >&6; } +- ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` ++ ac_prog_version=`$AS -v &1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` + case $ac_prog_version in + '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; + 2.1[3-9]*) +@@ -4538,7 +4538,7 @@ echo $ECHO_N "checking version of $AS... + { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 + echo "${ECHO_T}$ac_prog_version" >&6; } + fi +-if test $ac_verc_fail = yes; then ++if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then + AS=: critic_missing="$critic_missing as" + fi + +@@ -4601,7 +4601,7 @@ echo $ECHO_N "checking version of $LD... + { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 + echo "${ECHO_T}$ac_prog_version" >&6; } + fi +-if test $ac_verc_fail = yes; then ++if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then + LD=: critic_missing="$critic_missing ld" + fi + diff --git a/patches/glibc-2.8/generic/glibc-configure-old-gcc.patch b/patches/glibc-2.8/generic/glibc-configure-old-gcc.patch new file mode 100644 index 0000000..3de4828 --- /dev/null +++ b/patches/glibc-2.8/generic/glibc-configure-old-gcc.patch @@ -0,0 +1,17 @@ +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: glibc-2.8-20080811/configure +=================================================================== +--- glibc-2.8-20080811.orig/configure ++++ glibc-2.8-20080811/configure +@@ -4719,7 +4719,7 @@ echo $ECHO_N "checking version of $CC... + { echo "$as_me:$LINENO: result: $ac_prog_version" >&5 + echo "${ECHO_T}$ac_prog_version" >&6; } + fi +-if test $ac_verc_fail = yes; then ++if test $ac_verc_fail = yes -a -z "$enable_hacker_mode"; then + critic_missing="$critic_missing gcc" + fi + diff --git a/patches/glibc-2.8/generic/make-install-lib-all.patch b/patches/glibc-2.8/generic/make-install-lib-all.patch new file mode 100644 index 0000000..0daf7f9 --- /dev/null +++ b/patches/glibc-2.8/generic/make-install-lib-all.patch @@ -0,0 +1,45 @@ +# --- T2-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# T2 SDE: package/.../glibc32/make-install-lib-all.patch +# Copyright (C) 2004 - 2005 The T2 SDE Project +# +# More information can be found in the files COPYING and README. +# +# This patch file is dual-licensed. It is available under the license the +# patched project is licensed under, as long as it is an OpenSource license +# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms +# of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# --- T2-COPYRIGHT-NOTE-END --- +--- +# Makerules | 8 ++++++++ +# 1 file changed, 8 insertions(+) +# +Index: glibc-2.8-20080811/Makerules +=================================================================== +--- glibc-2.8-20080811.orig/Makerules ++++ glibc-2.8-20080811/Makerules +@@ -853,6 +853,13 @@ endef + installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\ + $(inst_libdir)/$(patsubst %,$(libtype$o),\ + $(libprefix)$(libc-name))) ++ ++install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \ ++ $(inst_slibdir)/libc-$(version).so \ ++ $(inst_libdir)/libc.so \ ++ $(inst_libdir)/libc.a \ ++ install-lib ++ + install: $(installed-libcs) + $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) + $(make-target-directory) +@@ -876,6 +883,7 @@ endef + install-lib.so := $(filter %.so,$(install-lib:%_pic.a=%.so)) + install-lib := $(filter-out %.so %_pic.a,$(install-lib)) + ++ + ifeq (yes,$(build-shared)) + # Find which .so's have versions. + versioned := $(strip $(foreach so,$(install-lib.so),\ diff --git a/patches/glibc-2.8/generic/series b/patches/glibc-2.8/generic/series new file mode 100644 index 0000000..3606ad4 --- /dev/null +++ b/patches/glibc-2.8/generic/series @@ -0,0 +1,30 @@ +make-install-lib-all.patch +glibc-configure-apple-as.patch +glibc-configure-old-gcc.patch +configure_in-sane_readelf.diff +configure-sane_readelf.diff + +glibc-2.5_stdlib_longlong.h +#cross_timezone.diff + +gentoo/0030_all_glibc-respect-env-CPPFLAGS.patch +gentoo/0040_all_glibc-i586-chk.patch +gentoo/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch +gentoo/1010_all_glibc-queue-header-updates.patch +gentoo/1030_all_glibc-manual-no-perl.patch +gentoo/1040_all_2.3.3-localedef-fix-trampoline.patch +gentoo/1050_all_glibc-posix-awk.patch +gentoo/1055_all_glibc-resolv-dynamic.patch +gentoo/1075_all_glibc-section-comments.patch +gentoo/1080_all_glibc-no-inline-gmon.patch +gentoo/1090_all_glibc-2.3.6-fix-pr631.patch +gentoo/1100_all_glibc-2.3.3-china.patch +gentoo/1103_all_glibc-new-valencian-locale.patch +gentoo/1120_all_glibc-2.5-strict-aliasing.patch +gentoo/1130_all_glibc-2.4-undefine-__i686.patch +gentoo/3000_all_2.3.6-dl_execstack-PaX-support.patch +gentoo/3010_all_2.3.3_pre20040117-pt_pax.patch +gentoo/6400_all_sh-glibc-2.3.2-fpscr_values.patch +gentoo/6415_all_sh-glibc-2.5-no-asm-user-header.patch +gentoo/6416_all_sh-glibc-2.5-no-asm-elf-header.patch +gentoo/6645_all_glibc-mips_shn_undef-hack.patch diff --git a/patches/glibc-ports-2.8/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch b/patches/glibc-ports-2.8/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch new file mode 100644 index 0000000..4a33972 --- /dev/null +++ b/patches/glibc-ports-2.8/generic/gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch @@ -0,0 +1,28 @@ +fix building on arm: + +armv4l-unknown-linux-gnu-gcc ../nptl/sysdeps/unix/sysv/linux/libc-lowlevellock.c -c -std=gnu99 -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -fno-strict-aliasing -mcpu=strongarm110 -pipe -Wstrict-prototypes -fPIC -I../include -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl -I../ports/sysdeps/arm/elf -I../ports/sysdeps/unix/sysv/linux/arm/nptl -I../ports/sysdeps/unix/sysv/linux/arm -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../ports/sysdeps/unix/sysv/linux -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../ports/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../nptl/sysdeps/unix -I../ports/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../ports/sysdeps/arm/fpu -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I../ports -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include-fixed -isystem /usr/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DPIC -DSHARED -DNOT_IN_libc=1 -DIS_IN_rtld=1 -o /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os -MD -MP -MF /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os.dt -MT /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os +In file included from ../nptl/sysdeps/unix/sysv/linux/libc-lowlevellock.c:21: +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c: In function '__lll_lock_wait_private': +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: warning: implicit declaration of function 'THREAD_GETMEM' +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: 'THREAD_SELF' undeclared (first use in this function) +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: (Each undeclared identifier is reported only once +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: for each function it appears in.) +../nptl/sysdeps/unix/sysv/linux/lowlevellock.c:34: error: 'header' undeclared (first use in this function) +make[4]: *** [/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/nptl/rtld-libc-lowlevellock.os] Error 1 + +--- + sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h | 1 + + 1 file changed, 1 insertion(+) + +Index: glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h +=================================================================== +--- glibc-ports-2.7.orig/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h ++++ glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #define FUTEX_WAIT 0 + #define FUTEX_WAKE 1 diff --git a/patches/glibc-ports-2.8/generic/gentoo/6225_all_glibc-2.7-cargs6.patch b/patches/glibc-ports-2.8/generic/gentoo/6225_all_glibc-2.7-cargs6.patch new file mode 100644 index 0000000..a0d0e93 --- /dev/null +++ b/patches/glibc-ports-2.8/generic/gentoo/6225_all_glibc-2.7-cargs6.patch @@ -0,0 +1,31 @@ +fix building on arm: + +(echo '#include '; \ + echo 'PSEUDO (splice, splice, 6)'; \ + echo ' ret'; \ + echo 'PSEUDO_END(splice)'; \ + echo 'libc_hidden_def (splice)'; \ + ) | armv4l-unknown-linux-gnu-gcc -c -I../include -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc -I/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl -I../ports/sysdeps/arm/elf -I../ports/sysdeps/unix/sysv/linux/arm/nptl -I../ports/sysdeps/unix/sysv/linux/arm -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../ports/sysdeps/unix/sysv/linux -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../ports/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../nptl/sysdeps/unix -I../ports/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../ports/sysdeps/arm/fpu -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I../ports -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include -isystem /usr/lib/gcc/armv4l-unknown-linux-gnu/4.1.2/include-fixed -isystem /usr/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DASSEMBLER -x assembler-with-cpp -o /var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc/splice.o - +: Assembler messages: +:2: Error: bad instruction `docargs_6' +:2: Error: bad instruction `undocargs_6' +make[2]: *** [/var/tmp/portage/sys-libs/glibc-2.7-r1/work/build-default-armv4l-unknown-linux-gnu-nptl/misc/splice.o] Error 1 + +--- + sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h | 3 +++ + 1 file changed, 3 insertions(+) + +Index: glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h +=================================================================== +--- glibc-ports-2.7.orig/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h ++++ glibc-ports-2.7/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h +@@ -73,6 +73,9 @@ + # define DOCARGS_5 DOCARGS_4 + # define UNDOCARGS_5 UNDOCARGS_4 + ++# define DOCARGS_6 DOCARGS_5 ++# define UNDOCARGS_6 UNDOCARGS_5 ++ + # ifdef IS_IN_libpthread + # define CENABLE bl PLTJMP(__pthread_enable_asynccancel) + # define CDISABLE bl PLTJMP(__pthread_disable_asynccancel) diff --git a/patches/glibc-ports-2.8/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch b/patches/glibc-ports-2.8/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch new file mode 100644 index 0000000..832e84c --- /dev/null +++ b/patches/glibc-ports-2.8/generic/gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch @@ -0,0 +1,19 @@ +http://sourceware.org/ml/libc-alpha/2002-10/msg00392.html + +--- + sysdeps/mips/fpu_control.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: glibc-ports-2.7/sysdeps/mips/fpu_control.h +=================================================================== +--- glibc-ports-2.7.orig/sysdeps/mips/fpu_control.h ++++ glibc-ports-2.7/sysdeps/mips/fpu_control.h +@@ -85,7 +85,7 @@ extern fpu_control_t __fpu_control; + #define _FPU_RC_UP 0x2 + #define _FPU_RC_DOWN 0x3 + +-#define _FPU_RESERVED 0xfe3c0000 /* Reserved bits in cw */ ++#define _FPU_RESERVED 0xfebc0000 /* Reserved bits in cw */ + + + /* The fdlibm code requires strict IEEE double precision arithmetic, diff --git a/patches/glibc-ports-2.8/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c b/patches/glibc-ports-2.8/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c new file mode 100644 index 0000000..ee2a6bf --- /dev/null +++ b/patches/glibc-ports-2.8/generic/glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c @@ -0,0 +1,33 @@ +--- + ports/sysdeps/arm/mp_clz_tab.c | 24 ++++++++++++++++++++++++ + 1 file changed, 24 insertions(+) + +Index: glibc-ports-2.7/ports/sysdeps/arm/mp_clz_tab.c +=================================================================== +--- /dev/null ++++ glibc-ports-2.7/ports/sysdeps/arm/mp_clz_tab.c +@@ -0,0 +1,24 @@ ++/* __clz_tab -- support for longlong.h ++ Copyright (C) 2004 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307 USA. */ ++ ++#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) ++/* Nothing required. */ ++#else ++#include ++#endif diff --git a/patches/glibc-ports-2.8/generic/series b/patches/glibc-ports-2.8/generic/series new file mode 100644 index 0000000..b8473fc --- /dev/null +++ b/patches/glibc-ports-2.8/generic/series @@ -0,0 +1,7 @@ +sysdeps_mips_mips32_Makefile-bootstrap.diff + +glibc-2.5_ports_sysdeps_arm_mp_clz_tab.c + +gentoo/6605_all_glibc-2.4-fpu-cw-mips.patch +gentoo/6224_all_glibc-2.7-lowlevellock-includes.patch +gentoo/6225_all_glibc-2.7-cargs6.patch diff --git a/patches/glibc-ports-2.8/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff b/patches/glibc-ports-2.8/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff new file mode 100644 index 0000000..a43709f --- /dev/null +++ b/patches/glibc-ports-2.8/generic/sysdeps_mips_mips32_Makefile-bootstrap.diff @@ -0,0 +1,28 @@ +From: Marc Kleine-Budde +Subject: Hack around mips args to host-gcc + +originally From: "Steven J dot Hill" +for Crosstool + +In OSELAS.Toolchain we pass -DBOOTSTRAP_GCC in CC. This patch fixes the +header extraction from the glibc, by not passing mips specific flags to +the HOST compiler. + +Signed-off-by: Marc Kleine-Budde + +--- + sysdeps/mips/mips32/Makefile | 4 ++++ + 1 file changed, 4 insertions(+) + +Index: glibc-ports-2.7/sysdeps/mips/mips32/Makefile +=================================================================== +--- glibc-ports-2.7.orig/sysdeps/mips/mips32/Makefile ++++ glibc-ports-2.7/sysdeps/mips/mips32/Makefile +@@ -1,3 +1,7 @@ ++ifeq ($(filter -DBOOTSTRAP_GCC,$(CC)),) + ifeq ($(filter -mabi=32,$(CC)),) + CC += -mabi=32 + endif ++else ++CC += -D_MIPS_SZPTR=32 ++endif -- cgit v1.2.3