diff options
Diffstat (limited to 'openwrt/toolchain')
150 files changed, 0 insertions, 59143 deletions
diff --git a/openwrt/toolchain/Config.in b/openwrt/toolchain/Config.in deleted file mode 100644 index 75400bc20c..0000000000 --- a/openwrt/toolchain/Config.in +++ /dev/null @@ -1,61 +0,0 @@ -# - -menu "Toolchain Options" - -source "toolchain/uClibc/Config.in" -source "toolchain/binutils/Config.in" -source "toolchain/gcc/Config.in" - -if CONFIG_DEVEL -comment "Common Toolchain Options" -endif -if !CONFIG_DEVEL -comment "Using defaults" -endif - -config BR2_ENABLE_MULTILIB - bool "Enable multilib support?" if CONFIG_DEVEL - default n - help - If you want multilib enabled, enable this... - -config BR2_LARGEFILE - bool "Enable large file (files > 2 GB) support?" if CONFIG_DEVEL - depends on !BR2_cris - default y - help - Enable large file (files > 2 GB) support - -config BR2_SOFT_FLOAT - bool "Use software floating point by default" if CONFIG_DEVEL - default n - depends on BR2_arm || BR2_mips || BR2_powerpc - help - If your target CPU does not have a Floating Point Unit (FPU) or a - kernel FPU emulator, but you still wish to support floating point - functions, then everything will need to be compiled with soft floating - point support (-msoft-float). - - Most people will answer N. - -config BR2_TARGET_OPTIMIZATION - string "Target Optimizations" if CONFIG_DEVEL - default "-Os -pipe -march=i486 -funit-at-a-time" if BR2_i386 - default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time" if BR2_mipsel || BR2_mips - default "-Os -pipe -mcpu=xscale -mno-thumb-interwork -mno-thumb -funit-at-a-time" if BR2_armeb - default "-Os -pipe -funit-at-a-time" - help - Optimizations to use when building for the target host. - -# Might be worth experimenting with for gcc 3.4.x. -#GCC_WITH_CPU:= -#GCC_WITH_ARCH:= -#GCC_WITH_TUNE:= - -#GCC_WITH_CPU:=--with-cpu= -#GCC_WITH_ARCH:=--with-arch= -#GCC_WITH_TUNE:=--with-tune= - - -endmenu - diff --git a/openwrt/toolchain/Makefile b/openwrt/toolchain/Makefile deleted file mode 100644 index c99116db6c..0000000000 --- a/openwrt/toolchain/Makefile +++ /dev/null @@ -1,57 +0,0 @@ -# Main makefile for the toolchain -include $(TOPDIR)/rules.mk -TARGETS:=sed utils binutils gcc uClibc ipkg-utils gdb libnotimpl - -TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS)) -TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS)) - -all: install -install: $(TARGETS_INSTALL) -clean: $(TARGETS_CLEAN) - -uClibc-prepare: kernel-headers-prepare sed-install utils-install -binutils-prepare: uClibc-prepare -gcc-prepare: binutils-install -uClibc-compile: gcc-prepare -gcc-compile: uClibc-install - -TOOLCHAIN_STAMP_DIR:=$(STAGING_DIR)/stampfiles - -$(TOOLCHAIN_STAMP_DIR): - mkdir -p $(TOOLCHAIN_STAMP_DIR) - -$(STAGING_DIR): - @mkdir -p $(STAGING_DIR)/lib - @mkdir -p $(STAGING_DIR)/include - @mkdir -p $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME) - @ln -sf ../lib $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib - -$(TOOL_BUILD_DIR): - @mkdir -p $(TOOL_BUILD_DIR) - -%-prepare: $(TOOLCHAIN_STAMP_DIR) $(STAGING_DIR) $(TOOL_BUILD_DIR) - @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \ - $(TRACE) toolchain/$(patsubst %-prepare,%,$@)/prepare; \ - $(MAKE) -C $(patsubst %-prepare,%,$@) prepare $(MAKE_TRACE); \ - } - @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ - -%-compile: %-prepare - @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \ - $(TRACE) toolchain/$(patsubst %-compile,%,$@)/compile; \ - $(MAKE) -C $(patsubst %-compile,%,$@) compile $(MAKE_TRACE); \ - } - @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ - -%-install: %-compile - @[ -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ ] || { \ - $(TRACE) toolchain/$(patsubst %-install,%,$@)/install; \ - $(MAKE) -C $(patsubst %-install,%,$@) install $(MAKE_TRACE); \ - } - @touch $(TOOLCHAIN_STAMP_DIR)/.toolchain_$@ - -%-clean: - $(TRACE) toolchain/$(patsubst %-clean,%,$@)/clean - @$(MAKE) -C $(patsubst %-clean,%,$@) clean $(MAKE_TRACE) - @rm -f $(TOOLCHAIN_STAMP_DIR)/.toolchain_$(patsubst %-clean,%,$@)-* - diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.15.94.0.2/100-uclibc-conf.patch deleted file mode 100644 index dc21386f42..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/100-uclibc-conf.patch +++ /dev/null @@ -1,749 +0,0 @@ -diff -ur binutils-2.15.94.0.2.orig/bfd/config.bfd binutils-2.15.94.0.2/bfd/config.bfd ---- binutils-2.15.94.0.2.orig/bfd/config.bfd 2004-12-22 15:00:57.219024360 -0500 -+++ binutils-2.15.94.0.2/bfd/config.bfd 2004-12-22 15:01:18.982715776 -0500 -@@ -140,7 +140,7 @@ - targ_defvec=ecoffalpha_little_vec - targ_selvecs=bfd_elf64_alpha_vec - ;; -- alpha*-*-linux-gnu* | alpha*-*-elf*) -+ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*) - targ_defvec=bfd_elf64_alpha_vec - targ_selvecs=ecoffalpha_little_vec - ;; -@@ -150,7 +150,7 @@ - alpha*-*-*) - targ_defvec=ecoffalpha_little_vec - ;; -- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) -+ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) - targ_defvec=bfd_elf64_ia64_little_vec - targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" - ;; -@@ -227,7 +227,7 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- armeb-*-elf | arm*b-*-linux-gnu*) -+ armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*) - targ_defvec=bfd_elf32_bigarm_vec - targ_selvecs=bfd_elf32_littlearm_vec - ;; -@@ -235,8 +235,8 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \ -- arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \ -+ arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \ -+ arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \ - arm*-*-eabi* ) - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec -@@ -381,7 +381,7 @@ - ;; - - #ifdef BFD64 -- hppa*64*-*-linux-gnu*) -+ hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) - targ_defvec=bfd_elf64_hppa_linux_vec - targ_selvecs=bfd_elf64_hppa_vec - ;; -@@ -392,7 +392,7 @@ - ;; - #endif - -- hppa*-*-linux-gnu*) -+ hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) - targ_defvec=bfd_elf32_hppa_linux_vec - targ_selvecs=bfd_elf32_hppa_vec - ;; -@@ -525,7 +525,7 @@ - targ_selvecs=bfd_elf32_i386_vec - targ_underscore=yes - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) - targ_defvec=bfd_elf32_i386_vec - targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" - targ64_selvecs=bfd_elf64_x86_64_vec -@@ -539,7 +539,7 @@ - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" - ;; -- x86_64-*-linux-gnu*) -+ x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" - ;; -@@ -715,7 +715,7 @@ - targ_selvecs=bfd_elf32_m68k_vec - targ_underscore=yes - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) - targ_defvec=bfd_elf32_m68k_vec - targ_selvecs=m68klinux_vec - ;; -@@ -1001,7 +1001,8 @@ - ;; - #endif - powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ -- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ -+ powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \ -+ powerpc-*-rtems* | \ - powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*) - targ_defvec=bfd_elf32_powerpc_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" -@@ -1038,8 +1039,8 @@ - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" - ;; - powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ -- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ -- powerpcle-*-rtems*) -+ powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\ -+ powerpcle-*-vxworks* | powerpcle-*-rtems*) - targ_defvec=bfd_elf32_powerpcle_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" - targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec" -@@ -1209,7 +1210,7 @@ - targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" - targ_underscore=yes - ;; -- sparc-*-linux-gnu*) -+ sparc-*-linux-gnu* | sparc-*-linux-uclibc*) - targ_defvec=bfd_elf32_sparc_vec - targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" - ;; -@@ -1256,7 +1257,7 @@ - targ_defvec=sunos_big_vec - targ_underscore=yes - ;; -- sparc64-*-linux-gnu*) -+ sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) - targ_defvec=bfd_elf64_sparc_vec - targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" - ;; -@@ -1325,7 +1326,7 @@ - targ_underscore=yes - ;; - -- vax-*-linux-gnu*) -+ vax-*-linux-gnu* | vax-*-linux-uclibc*) - targ_defvec=bfd_elf32_vax_vec - ;; - -diff -ur binutils-2.15.94.0.2.orig/bfd/configure binutils-2.15.94.0.2/bfd/configure ---- binutils-2.15.94.0.2.orig/bfd/configure 2004-12-22 15:00:57.221024056 -0500 -+++ binutils-2.15.94.0.2/bfd/configure 2004-12-22 15:01:18.996713648 -0500 -@@ -3583,6 +3583,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -9914,7 +9919,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -9978,7 +9983,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386mach3.h"' - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' - ;; -@@ -10016,7 +10021,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -10150,7 +10155,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-gnu* | vax-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; -diff -ur binutils-2.15.94.0.2.orig/bfd/configure.in binutils-2.15.94.0.2/bfd/configure.in ---- binutils-2.15.94.0.2.orig/bfd/configure.in 2004-12-22 15:00:57.223023752 -0500 -+++ binutils-2.15.94.0.2/bfd/configure.in 2004-12-22 15:01:18.998713344 -0500 -@@ -163,7 +163,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -248,7 +248,7 @@ - TRAD_HEADER='"hosts/i386mach3.h"' - ;; - changequote(,)dnl -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) - changequote([,])dnl - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' -@@ -289,7 +289,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-gnu* | m68*-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -375,7 +375,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-gnu* | vax-*-linux-uclibc*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; -diff -ur binutils-2.15.94.0.2.orig/binutils/configure binutils-2.15.94.0.2/binutils/configure ---- binutils-2.15.94.0.2.orig/binutils/configure 2004-12-22 15:00:57.351004296 -0500 -+++ binutils-2.15.94.0.2/binutils/configure 2004-12-22 15:01:19.002712736 -0500 -@@ -1575,6 +1575,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -ur binutils-2.15.94.0.2.orig/configure binutils-2.15.94.0.2/configure ---- binutils-2.15.94.0.2.orig/configure 2004-12-22 15:00:57.321008856 -0500 -+++ binutils-2.15.94.0.2/configure 2004-12-22 15:01:19.007711976 -0500 -@@ -1352,6 +1352,18 @@ - i[3456789]86-*-coff | i[3456789]86-*-elf) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; -+ i[3456789]86-*-linux-uclibc*) -+ # This section makes it possible to build newlib natively on linux. -+ # If we are using a cross compiler then don't configure newlib. -+ if test x${is_cross_compiler} != xno ; then -+ noconfigdirs="$noconfigdirs target-newlib" -+ fi -+ noconfigdirs="$noconfigdirs target-libgloss" -+ # If we are not using a cross compiler, do configure newlib. -+ # Note however, that newlib will only be configured in this situation -+ # if the --with-newlib option has been given, because otherwise -+ # 'target-newlib' will appear in skipdirs. -+ ;; - i[3456789]86-*-linux*) - # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's - # not build java stuff by default. -diff -ur binutils-2.15.94.0.2.orig/configure.in binutils-2.15.94.0.2/configure.in ---- binutils-2.15.94.0.2.orig/configure.in 2004-12-22 15:00:57.321008856 -0500 -+++ binutils-2.15.94.0.2/configure.in 2004-12-22 15:01:19.010711520 -0500 -@@ -561,6 +561,18 @@ - i[[3456789]]86-*-coff | i[[3456789]]86-*-elf) - noconfigdirs="$noconfigdirs ${libgcj}" - ;; -+ i[[3456789]]86-*-linux-uclibc*) -+ # This section makes it possible to build newlib natively on linux. -+ # If we are using a cross compiler then don't configure newlib. -+ if test x${is_cross_compiler} != xno ; then -+ noconfigdirs="$noconfigdirs target-newlib" -+ fi -+ noconfigdirs="$noconfigdirs target-libgloss" -+ # If we are not using a cross compiler, do configure newlib. -+ # Note however, that newlib will only be configured in this situation -+ # if the --with-newlib option has been given, because otherwise -+ # 'target-newlib' will appear in skipdirs. -+ ;; - i[[3456789]]86-*-linux*) - # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's - # not build java stuff by default. -diff -ur binutils-2.15.94.0.2.orig/gas/configure binutils-2.15.94.0.2/gas/configure ---- binutils-2.15.94.0.2.orig/gas/configure 2004-12-22 15:00:57.461987424 -0500 -+++ binutils-2.15.94.0.2/gas/configure 2004-12-22 15:01:19.019710152 -0500 -@@ -3420,6 +3420,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -4256,6 +4261,7 @@ - alpha*-*-osf*) fmt=ecoff ;; - alpha*-*-linuxecoff*) fmt=ecoff ;; - alpha*-*-linux-gnu*) fmt=elf em=linux ;; -+ alpha*-*-linux-uclibc*) fmt=elf em=linux ;; - alpha*-*-netbsd*) fmt=elf em=nbsd ;; - alpha*-*-openbsd*) fmt=elf em=obsd ;; - -@@ -4272,6 +4278,7 @@ - arm-*-linux*aout*) fmt=aout em=linux ;; - arm*-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;; - arm*-*-linux-gnu*) fmt=elf em=linux ;; -+ arm*-*-linux-uclibc*) fmt=elf em=linux ;; - arm*-*-uclinux*) fmt=elf em=linux ;; - arm-*-netbsdelf*) fmt=elf em=nbsd ;; - arm-*-*n*bsd*) fmt=aout em=nbsd ;; -@@ -4285,6 +4292,7 @@ - - cris-*-linux-gnu* | crisv32-*-linux-gnu*) - fmt=multi bfd_gas=yes em=linux ;; -+ cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;; - cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;; - - crx-*-elf*) fmt=elf ;; -@@ -4344,7 +4352,9 @@ - i386-*-linux*oldld) fmt=aout em=linux ;; - i386-*-linux*coff*) fmt=coff em=linux ;; - i386-*-linux-gnu*) fmt=elf em=linux ;; -+ i386-*-linux-uclibc*) fmt=elf em=linux ;; - x86_64-*-linux-gnu*) fmt=elf em=linux ;; -+ x86_64-*-linux-uclibc*) fmt=elf em=linux ;; - i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - i386-*-sysv[45]*) fmt=elf ;; - i386-*-solaris*) fmt=elf ;; -@@ -4404,6 +4414,7 @@ - ia64-*-elf*) fmt=elf ;; - ia64-*-aix*) fmt=elf em=ia64aix ;; - ia64-*-linux-gnu*) fmt=elf em=linux ;; -+ ia64-*-linux-uclibc*) fmt=elf em=linux ;; - ia64-*-hpux*) fmt=elf em=hpux ;; - ia64-*-netbsd*) fmt=elf em=nbsd ;; - -@@ -4431,6 +4442,7 @@ - m68k-*-hpux*) fmt=hp300 em=hp300 ;; - m68k-*-linux*aout*) fmt=aout em=linux ;; - m68k-*-linux-gnu*) fmt=elf em=linux ;; -+ m68k-*-linux-uclibc*) fmt=elf em=linux ;; - m68k-*-uclinux*) fmt=elf ;; - m68k-*-gnu*) fmt=elf ;; - m68k-*-lynxos*) fmt=coff em=lynx ;; -@@ -4505,6 +4517,7 @@ - ppc-*-beos*) fmt=coff ;; - ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; - ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; -+ ppc-*-linux-uclibc* | \ - ppc-*-linux-gnu*) fmt=elf em=linux - case "$endian" in - big) ;; -@@ -4532,7 +4545,9 @@ - ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - - s390x-*-linux-gnu*) fmt=elf em=linux ;; -+ s390x-*-linux-uclibc*) fmt=elf em=linux ;; - s390-*-linux-gnu*) fmt=elf em=linux ;; -+ s390-*-linux-uclibc*) fmt=elf em=linux ;; - s390-*-tpf*) fmt=elf ;; - - sh*-*-linux*) fmt=elf em=linux -@@ -4568,6 +4583,7 @@ - sparc-*-coff) fmt=coff ;; - sparc-*-linux*aout*) fmt=aout em=linux ;; - sparc-*-linux-gnu*) fmt=elf em=linux ;; -+ sparc-*-linux-uclibc*) fmt=elf em=linux ;; - sparc-*-lynxos*) fmt=coff em=lynx ;; - sparc-fujitsu-none) fmt=aout ;; - sparc-*-elf) fmt=elf ;; -diff -ur binutils-2.15.94.0.2.orig/gas/configure.in binutils-2.15.94.0.2/gas/configure.in ---- binutils-2.15.94.0.2.orig/gas/configure.in 2004-12-22 15:00:57.461987424 -0500 -+++ binutils-2.15.94.0.2/gas/configure.in 2004-12-22 15:01:19.022709696 -0500 -@@ -202,6 +202,7 @@ - alpha*-*-osf*) fmt=ecoff ;; - alpha*-*-linuxecoff*) fmt=ecoff ;; - alpha*-*-linux-gnu*) fmt=elf em=linux ;; -+ alpha*-*-linux-uclibc*) fmt=elf em=linux ;; - alpha*-*-netbsd*) fmt=elf em=nbsd ;; - alpha*-*-openbsd*) fmt=elf em=obsd ;; - -@@ -218,6 +219,7 @@ - arm-*-linux*aout*) fmt=aout em=linux ;; - arm*-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;; - arm*-*-linux-gnu*) fmt=elf em=linux ;; -+ arm*-*-linux-uclibc*) fmt=elf em=linux ;; - arm*-*-uclinux*) fmt=elf em=linux ;; - arm-*-netbsdelf*) fmt=elf em=nbsd ;; - arm-*-*n*bsd*) fmt=aout em=nbsd ;; -@@ -231,6 +233,7 @@ - - cris-*-linux-gnu* | crisv32-*-linux-gnu*) - fmt=multi bfd_gas=yes em=linux ;; -+ cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;; - cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;; - - crx-*-elf*) fmt=elf ;; -@@ -290,7 +293,9 @@ - i386-*-linux*oldld) fmt=aout em=linux ;; - i386-*-linux*coff*) fmt=coff em=linux ;; - i386-*-linux-gnu*) fmt=elf em=linux ;; -+ i386-*-linux-uclibc*) fmt=elf em=linux ;; - x86_64-*-linux-gnu*) fmt=elf em=linux ;; -+ x86_64-*-linux-uclibc*) fmt=elf em=linux ;; - i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - changequote(,)dnl - i386-*-sysv[45]*) fmt=elf ;; -@@ -343,6 +348,7 @@ - ia64-*-elf*) fmt=elf ;; - ia64-*-aix*) fmt=elf em=ia64aix ;; - ia64-*-linux-gnu*) fmt=elf em=linux ;; -+ ia64-*-linux-uclibc*) fmt=elf em=linux ;; - ia64-*-hpux*) fmt=elf em=hpux ;; - ia64-*-netbsd*) fmt=elf em=nbsd ;; - -@@ -370,6 +376,7 @@ - m68k-*-hpux*) fmt=hp300 em=hp300 ;; - m68k-*-linux*aout*) fmt=aout em=linux ;; - m68k-*-linux-gnu*) fmt=elf em=linux ;; -+ m68k-*-linux-uclibc*) fmt=elf em=linux ;; - m68k-*-uclinux*) fmt=elf ;; - m68k-*-gnu*) fmt=elf ;; - m68k-*-lynxos*) fmt=coff em=lynx ;; -@@ -441,6 +448,7 @@ - ppc-*-beos*) fmt=coff ;; - ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; - ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; -+ ppc-*-linux-uclibc* | \ - ppc-*-linux-gnu*) fmt=elf em=linux - case "$endian" in - big) ;; -@@ -461,7 +469,9 @@ - ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - - s390x-*-linux-gnu*) fmt=elf em=linux ;; -+ s390x-*-linux-uclibc*) fmt=elf em=linux ;; - s390-*-linux-gnu*) fmt=elf em=linux ;; -+ s390-*-linux-uclibc*) fmt=elf em=linux ;; - s390-*-tpf*) fmt=elf ;; - - sh*-*-linux*) fmt=elf em=linux -@@ -493,6 +503,7 @@ - sparc-*-coff) fmt=coff ;; - sparc-*-linux*aout*) fmt=aout em=linux ;; - sparc-*-linux-gnu*) fmt=elf em=linux ;; -+ sparc-*-linux-uclibc*) fmt=elf em=linux ;; - sparc-*-lynxos*) fmt=coff em=lynx ;; - sparc-fujitsu-none) fmt=aout ;; - sparc-*-elf) fmt=elf ;; -diff -ur binutils-2.15.94.0.2.orig/gprof/configure binutils-2.15.94.0.2/gprof/configure ---- binutils-2.15.94.0.2.orig/gprof/configure 2004-12-22 15:00:57.949913248 -0500 -+++ binutils-2.15.94.0.2/gprof/configure 2004-12-22 15:01:19.030708480 -0500 -@@ -3418,6 +3418,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -ur binutils-2.15.94.0.2.orig/ld/configure binutils-2.15.94.0.2/ld/configure ---- binutils-2.15.94.0.2.orig/ld/configure 2004-12-22 15:00:58.032900632 -0500 -+++ binutils-2.15.94.0.2/ld/configure 2004-12-22 15:01:19.035707720 -0500 -@@ -1579,6 +1579,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -ur binutils-2.15.94.0.2.orig/ld/configure.tgt binutils-2.15.94.0.2/ld/configure.tgt ---- binutils-2.15.94.0.2.orig/ld/configure.tgt 2004-12-22 15:00:58.033900480 -0500 -+++ binutils-2.15.94.0.2/ld/configure.tgt 2004-12-22 15:01:19.036707568 -0500 -@@ -32,6 +32,7 @@ - targ_extra_libpath=$targ_extra_emuls ;; - cris-*-linux-gnu* | cris-*-linux-gnu*) - targ_emul=crislinux ;; -+cris-*-linux-uclibc*) targ_emul=crislinux ;; - cris-*-* | crisv32-*-*) targ_emul=criself - targ_extra_emuls="crisaout crislinux" - targ_extra_libpath=$targ_extra_emuls ;; -@@ -62,14 +63,16 @@ - tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'` - tdir_sun4=sparc-sun-sunos4 - ;; --sparc64-*-linux-gnu*) targ_emul=elf64_sparc -+sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) \ -+ targ_emul=elf64_sparc - targ_extra_emuls="elf32_sparc sparclinux sun4" - targ_extra_libpath=elf32_sparc - tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'` - tdir_sparclinux=${tdir_elf32_sparc}aout - tdir_sun4=sparc-sun-sunos4 - ;; --sparc*-*-linux-gnu*) targ_emul=elf32_sparc -+sparc*-*-linux-gnu* | sparc*-*-linux-uclibc*) \ -+ targ_emul=elf32_sparc - targ_extra_emuls="sparclinux elf64_sparc sun4" - targ_extra_libpath=elf64_sparc - tdir_sparclinux=${targ_alias}aout -@@ -121,7 +124,9 @@ - m32r*le-*-elf*) targ_emul=m32rlelf ;; - m32r*-*-elf*) targ_emul=m32relf ;; - m32r*le-*-linux-gnu*) targ_emul=m32rlelf_linux ;; -+m32r*le-*-linux-uclibc*) targ_emul=m32rlelf_linux ;; - m32r*-*-linux-gnu*) targ_emul=m32relf_linux ;; -+m32r*-*-linux-uclibc*) targ_emul=m32relf_linux ;; - m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf - targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;; - m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf -@@ -132,7 +137,7 @@ - m68*-apple-aux*) targ_emul=m68kaux ;; - maxq-*-coff) targ_emul=maxqcoff;; - *-tandem-none) targ_emul=st2000 ;; --i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;; -+i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*) targ_emul=elf32i370 ;; - i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;; - i[3-7]86-*-vsta) targ_emul=vsta ;; - i[3-7]86-go32-rtems*) targ_emul=i386go32 ;; -@@ -156,14 +161,16 @@ - tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'` - ;; - i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;; --i[3-7]86-*-linux-gnu*) targ_emul=elf_i386 -+i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) \ -+ targ_emul=elf_i386 - targ_extra_emuls=i386linux - if test x${want64} = xtrue; then - targ_extra_emuls="$targ_extra_emuls elf_x86_64" - fi - tdir_i386linux=${targ_alias}aout - ;; --x86_64-*-linux-gnu*) targ_emul=elf_x86_64 -+x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) \ -+ targ_emul=elf_x86_64 - targ_extra_emuls="elf_i386 i386linux" - targ_extra_libpath=elf_i386 - tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'` -@@ -263,11 +270,14 @@ - arm-*-kaos*) targ_emul=armelf ;; - arm9e-*-elf) targ_emul=armelf ;; - arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;; -+arm*b-*-linux-uclibc*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;; - arm*-*-linux-gnueabi) targ_emul=armelf_linux_eabi ;; - arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; -+arm*-*-linux-uclibc*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - arm*-*-conix*) targ_emul=armelf ;; --thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; -+thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*) \ -+ targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - strongarm-*-coff) targ_emul=armcoff ;; - strongarm-*-elf) targ_emul=armelf ;; - strongarm-*-kaos*) targ_emul=armelf ;; -@@ -371,7 +381,8 @@ - targ_extra_emuls=m68kelf - tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'` - ;; --m68k-*-linux-gnu*) targ_emul=m68kelf -+m68k-*-linux-gnu* | m68k-*-linux-uclibc*) \ -+ targ_emul=m68kelf - targ_extra_emuls=m68klinux - tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'` - ;; -@@ -388,9 +399,9 @@ - m68*-*-psos*) targ_emul=m68kpsos ;; - m68*-*-rtemscoff*) targ_emul=m68kcoff ;; - m68*-*-rtems*) targ_emul=m68kelf ;; --hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;; -+hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) targ_emul=hppa64linux ;; - hppa*64*-*) targ_emul=elf64hppa ;; --hppa*-*-linux-gnu*) targ_emul=hppalinux ;; -+hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) targ_emul=hppalinux ;; - hppa*-*-*elf*) targ_emul=hppaelf ;; - hppa*-*-lites*) targ_emul=hppaelf ;; - hppa*-*-netbsd*) targ_emul=hppanbsd ;; -@@ -403,6 +414,7 @@ - targ_emul=vaxnbsd - targ_extra_emuls=elf32vax ;; - vax-*-linux-gnu*) targ_emul=elf32vax ;; -+vax-*-linux-uclibc*) targ_emul=elf32vax ;; - mips*-*-pe) targ_emul=mipspe ; - targ_extra_ofiles="deffilep.o pe-dll.o" ;; - mips*-dec-ultrix*) targ_emul=mipslit ;; -@@ -436,16 +448,16 @@ - mips*-*-vxworks*) targ_emul=elf32ebmip - targ_extra_emuls="elf32elmip" ;; - mips*-*-windiss) targ_emul=elf32mipswindiss ;; --mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32 -+mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*) targ_emul=elf32ltsmipn32 - targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" - ;; --mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32 -+mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*) targ_emul=elf32btsmipn32 - targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" - ;; --mips*el-*-linux-gnu*) targ_emul=elf32ltsmip -+mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*) targ_emul=elf32ltsmip - targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip" - ;; --mips*-*-linux-gnu*) targ_emul=elf32btsmip -+mips*-*-linux-gnu* | mips*-*-linux-uclibc*) targ_emul=elf32btsmip - targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip" - ;; - mips*-*-lnews*) targ_emul=mipslnews ;; -@@ -468,6 +480,10 @@ - alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha - tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'` - ;; -+alpha*-*-linux-uclibc*) targ_emul=elf64alpha targ_extra_emuls=alpha -+ # The following needs to be checked... -+ tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'` -+ ;; - alpha*-*-osf*) targ_emul=alpha ;; - alpha*-*-gnu*) targ_emul=elf64alpha ;; - alpha*-*-netware*) targ_emul=alpha ;; -diff -ur binutils-2.15.94.0.2.orig/ld/emultempl/elf32.em binutils-2.15.94.0.2/ld/emultempl/elf32.em ---- binutils-2.15.94.0.2.orig/ld/emultempl/elf32.em 2004-12-22 15:00:58.044898808 -0500 -+++ binutils-2.15.94.0.2/ld/emultempl/elf32.em 2004-12-22 15:01:19.038707264 -0500 -@@ -65,7 +65,7 @@ - - if [ "x${USE_LIBPATH}" = xyes ] ; then - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-gnu* | *-*-linux-uclibc*) - cat >>e${EMULATION_NAME}.c <<EOF - #include <glob.h> - EOF -@@ -337,7 +337,7 @@ - - EOF - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-gnu* | *-*-linux-uclibc*) - cat >>e${EMULATION_NAME}.c <<EOF - { - struct bfd_link_needed_list *l; -@@ -510,7 +510,7 @@ - - EOF - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-gnu* | *-*-linux-uclibc*) - cat >>e${EMULATION_NAME}.c <<EOF - /* For a native linker, check the file /etc/ld.so.conf for directories - in which we may find shared libraries. /etc/ld.so.conf is really -@@ -894,7 +894,7 @@ - EOF - if [ "x${USE_LIBPATH}" = xyes ] ; then - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-gnu* | *-*-linux-uclibc*) - cat >>e${EMULATION_NAME}.c <<EOF - if (gld${EMULATION_NAME}_check_ld_so_conf (l->name, force)) - break; -diff -ur binutils-2.15.94.0.2.orig/libiberty/configure binutils-2.15.94.0.2/libiberty/configure ---- binutils-2.15.94.0.2.orig/libiberty/configure 2004-12-22 15:00:59.263713520 -0500 -+++ binutils-2.15.94.0.2/libiberty/configure 2004-12-22 15:03:55.744884304 -0500 -@@ -3682,6 +3682,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -ur binutils-2.15.94.0.2.orig/libtool.m4 binutils-2.15.94.0.2/libtool.m4 ---- binutils-2.15.94.0.2.orig/libtool.m4 2004-12-22 15:00:57.329007640 -0500 -+++ binutils-2.15.94.0.2/libtool.m4 2004-12-22 15:01:19.039707112 -0500 -@@ -645,6 +645,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -ur binutils-2.15.94.0.2.orig/ltconfig binutils-2.15.94.0.2/ltconfig ---- binutils-2.15.94.0.2.orig/ltconfig 2004-12-22 15:00:57.330007488 -0500 -+++ binutils-2.15.94.0.2/ltconfig 2004-12-22 15:01:19.041706808 -0500 -@@ -603,6 +603,7 @@ - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in - linux-gnu*) ;; -+linux-uclibc*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac - -@@ -1270,6 +1271,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -ur binutils-2.15.94.0.2.orig/opcodes/configure binutils-2.15.94.0.2/opcodes/configure ---- binutils-2.15.94.0.2.orig/opcodes/configure 2004-12-22 15:00:59.334702728 -0500 -+++ binutils-2.15.94.0.2/opcodes/configure 2004-12-22 15:01:19.053704984 -0500 -@@ -3587,6 +3587,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.15.94.0.2/300-001_ld_makefile_patch.patch deleted file mode 100644 index b25d5b7e21..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am binutils-2.14.90.0.6/ld/Makefile.am ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.am 2003-09-10 23:12:09.000000000 +0100 -@@ -19,7 +19,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in binutils-2.14.90.0.6/ld/Makefile.in ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.in 2003-09-10 23:12:09.000000000 +0100 -@@ -128,7 +128,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.15.94.0.2/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.15.94.0.2/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/300-120_mips_xgot_multigot_workaround.patch b/openwrt/toolchain/binutils/2.15.94.0.2/300-120_mips_xgot_multigot_workaround.patch deleted file mode 100644 index ae2033d069..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/300-120_mips_xgot_multigot_workaround.patch +++ /dev/null @@ -1,39 +0,0 @@ -#! /bin/sh -e -## 120_mips_xgot_multigot_workaround.dpatch -## -## DP: Description: Make multigot/xgot handling mutually exclusive. -## DP: Author: Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> -## DP: Upstream status: Not submitted -## DP: Date: 2004-09-17 - -if [ $# -lt 1 ]; then - echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" - -case "$1" in - -patch) patch -p1 ${patch_opts} < $0;; - -unpatch) patch -R -p1 ${patch_opts} < $0;; - *) - echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c binutils-2.15/bfd/elfxx-mips.c ---- /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:41:37.156466673 +0100 -+++ binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:42:15.998362861 +0100 -@@ -5883,6 +5883,8 @@ - s->size += i * MIPS_ELF_GOT_SIZE (output_bfd); - - if (s->size > MIPS_ELF_GOT_MAX_SIZE (output_bfd) -+ && g->global_gotno <= (MIPS_ELF_GOT_MAX_SIZE (output_bfd) -+ / MIPS_ELF_GOT_SIZE (output_bfd)) - && ! mips_elf_multi_got (output_bfd, info, g, s, local_gotno)) - return FALSE; - diff --git a/openwrt/toolchain/binutils/2.15.94.0.2/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.15.94.0.2/702-binutils-skip-comments.patch deleted file mode 100644 index 804a17e006..0000000000 --- a/openwrt/toolchain/binutils/2.15.94.0.2/702-binutils-skip-comments.patch +++ /dev/null @@ -1,101 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -1,6 +1,6 @@ - /* read.c - read a source file - - Copyright 1986, 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, -- 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+ 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. - - This file is part of GAS, the GNU Assembler. - -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/2.16.1/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.16.1/100-uclibc-conf.patch deleted file mode 100644 index 7c0a72693f..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/100-uclibc-conf.patch +++ /dev/null @@ -1,586 +0,0 @@ -diff -ur binutils-2.15.97.orig/bfd/config.bfd binutils-2.15.97/bfd/config.bfd ---- binutils-2.15.97.orig/bfd/config.bfd 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/bfd/config.bfd 2005-04-29 20:53:50.000000000 -0400 -@@ -140,7 +140,7 @@ - targ_defvec=ecoffalpha_little_vec - targ_selvecs=bfd_elf64_alpha_vec - ;; -- alpha*-*-linux-gnu* | alpha*-*-elf*) -+ alpha*-*-linux-* | alpha*-*-elf*) - targ_defvec=bfd_elf64_alpha_vec - targ_selvecs=ecoffalpha_little_vec - ;; -@@ -150,7 +150,7 @@ - alpha*-*-*) - targ_defvec=ecoffalpha_little_vec - ;; -- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) -+ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) - targ_defvec=bfd_elf64_ia64_little_vec - targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" - ;; -@@ -227,7 +227,7 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- armeb-*-elf | arm*b-*-linux-gnu*) -+ armeb-*-elf | arm*b-*-linux-*) - targ_defvec=bfd_elf32_bigarm_vec - targ_selvecs=bfd_elf32_littlearm_vec - ;; -@@ -235,7 +235,7 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \ -+ arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ - arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \ - arm*-*-eabi* ) - targ_defvec=bfd_elf32_littlearm_vec -@@ -385,7 +385,7 @@ - ;; - - #ifdef BFD64 -- hppa*64*-*-linux-gnu*) -+ hppa*64*-*-linux-*) - targ_defvec=bfd_elf64_hppa_linux_vec - targ_selvecs=bfd_elf64_hppa_vec - ;; -@@ -396,7 +396,7 @@ - ;; - #endif - -- hppa*-*-linux-gnu*) -+ hppa*-*-linux-*) - targ_defvec=bfd_elf32_hppa_linux_vec - targ_selvecs=bfd_elf32_hppa_vec - ;; -@@ -529,7 +529,7 @@ - targ_selvecs=bfd_elf32_i386_vec - targ_underscore=yes - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - targ_defvec=bfd_elf32_i386_vec - targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" - targ64_selvecs=bfd_elf64_x86_64_vec -@@ -543,7 +543,7 @@ - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" - ;; -- x86_64-*-linux-gnu*) -+ x86_64-*-linux-*) - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" - ;; -@@ -719,7 +719,7 @@ - targ_selvecs=bfd_elf32_m68k_vec - targ_underscore=yes - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-*) - targ_defvec=bfd_elf32_m68k_vec - targ_selvecs=m68klinux_vec - ;; -@@ -1005,7 +1005,7 @@ - ;; - #endif - powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ -- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ -+ powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ - powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*) - targ_defvec=bfd_elf32_powerpc_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" -@@ -1042,7 +1042,7 @@ - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" - ;; - powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ -- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ -+ powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks* |\ - powerpcle-*-rtems*) - targ_defvec=bfd_elf32_powerpcle_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" -@@ -1213,7 +1213,7 @@ - targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" - targ_underscore=yes - ;; -- sparc-*-linux-gnu*) -+ sparc-*-linux-*) - targ_defvec=bfd_elf32_sparc_vec - targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" - ;; -@@ -1260,7 +1260,7 @@ - targ_defvec=sunos_big_vec - targ_underscore=yes - ;; -- sparc64-*-linux-gnu*) -+ sparc64-*-linux-*) - targ_defvec=bfd_elf64_sparc_vec - targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" - ;; -@@ -1329,7 +1329,7 @@ - targ_underscore=yes - ;; - -- vax-*-linux-gnu*) -+ vax-*-linux-*) - targ_defvec=bfd_elf32_vax_vec - ;; - -diff -ur binutils-2.15.97.orig/bfd/configure binutils-2.15.97/bfd/configure ---- binutils-2.15.97.orig/bfd/configure 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/bfd/configure 2005-04-29 20:53:50.000000000 -0400 -@@ -9918,7 +9918,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -9982,7 +9982,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386mach3.h"' - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' - ;; -@@ -10020,7 +10020,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -10154,7 +10154,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; -diff -ur binutils-2.15.97.orig/bfd/configure.in binutils-2.15.97/bfd/configure.in ---- binutils-2.15.97.orig/bfd/configure.in 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/bfd/configure.in 2005-04-29 20:53:50.000000000 -0400 -@@ -163,7 +163,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -248,7 +248,7 @@ - TRAD_HEADER='"hosts/i386mach3.h"' - ;; - changequote(,)dnl -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - changequote([,])dnl - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' -@@ -289,7 +289,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -375,7 +375,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; -diff -ur binutils-2.15.97.orig/gas/configure binutils-2.15.97/gas/configure ---- binutils-2.15.97.orig/gas/configure 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/gas/configure 2005-04-29 20:53:50.000000000 -0400 -@@ -4462,7 +4462,7 @@ - _ACEOF - - ;; -- ppc-*-linux-gnu*) -+ ppc-*-linux-*) - case "$endian" in - big) ;; - *) { { echo "$as_me:$LINENO: error: GNU/Linux must be configured big endian" >&5 -diff -ur binutils-2.15.97.orig/gas/configure.in binutils-2.15.97/gas/configure.in ---- binutils-2.15.97.orig/gas/configure.in 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/gas/configure.in 2005-04-29 20:53:50.000000000 -0400 -@@ -161,7 +161,7 @@ - AC_DEFINE(AIX_WEAK_SUPPORT, 1, - [Define if using AIX 5.2 value for C_WEAKEXT.]) - ;; -- ppc-*-linux-gnu*) -+ ppc-*-linux-*) - case "$endian" in - big) ;; - *) AC_MSG_ERROR(GNU/Linux must be configured big endian) ;; -diff -ur binutils-2.15.97.orig/gas/configure.tgt binutils-2.15.97/gas/configure.tgt ---- binutils-2.15.97.orig/gas/configure.tgt 2005-04-29 20:48:14.000000000 -0400 -+++ binutils-2.15.97/gas/configure.tgt 2005-04-29 20:53:50.000000000 -0400 -@@ -100,7 +100,7 @@ - alpha-*-*vms*) fmt=evax ;; - alpha-*-osf*) fmt=ecoff ;; - alpha-*-linuxecoff*) fmt=ecoff ;; -- alpha-*-linux-gnu*) fmt=elf em=linux ;; -+ alpha-*-linux-*) fmt=elf em=linux ;; - alpha-*-netbsd*) fmt=elf em=nbsd ;; - alpha-*-openbsd*) fmt=elf em=obsd ;; - -@@ -116,7 +116,7 @@ - arm-*-conix*) fmt=elf ;; - arm-*-linux*aout*) fmt=aout em=linux ;; - arm-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;; -- arm-*-linux-gnu*) fmt=elf em=linux ;; -+ arm-*-linux-*) fmt=elf em=linux ;; - arm-*-uclinux*) fmt=elf em=linux ;; - arm-*-netbsdelf*) fmt=elf em=nbsd ;; - arm-*-*n*bsd*) fmt=aout em=nbsd ;; -@@ -128,7 +128,7 @@ - - avr-*-*) fmt=elf ;; - -- cris-*-linux-gnu* | crisv32-*-linux-gnu*) -+ cris-*-linux-* | crisv32-*-linux-*) - fmt=multi bfd_gas=yes em=linux ;; - cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;; - -@@ -192,7 +192,7 @@ - i386-*-linux*aout*) fmt=aout em=linux ;; - i386-*-linux*oldld) fmt=aout em=linux ;; - i386-*-linux*coff*) fmt=coff em=linux ;; -- i386-*-linux-gnu*) fmt=elf em=linux ;; -+ i386-*-linux-*) fmt=elf em=linux ;; - i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - i386-*-sysv[45]*) fmt=elf ;; - i386-*-solaris*) fmt=elf ;; -@@ -238,7 +238,7 @@ - - ia64-*-elf*) fmt=elf ;; - ia64-*-aix*) fmt=elf em=ia64aix ;; -- ia64-*-linux-gnu*) fmt=elf em=linux ;; -+ ia64-*-linux-*) fmt=elf em=linux ;; - ia64-*-hpux*) fmt=elf em=hpux ;; - ia64-*-netbsd*) fmt=elf em=nbsd ;; - -@@ -265,7 +265,7 @@ - m68k-*-rtems*) fmt=elf ;; - m68k-*-hpux*) fmt=hp300 em=hp300 ;; - m68k-*-linux*aout*) fmt=aout em=linux ;; -- m68k-*-linux-gnu*) fmt=elf em=linux ;; -+ m68k-*-linux-*) fmt=elf em=linux ;; - m68k-*-uclinux*) fmt=elf ;; - m68k-*-gnu*) fmt=elf ;; - m68k-*-netbsdelf*) fmt=elf em=nbsd ;; -@@ -332,7 +332,7 @@ - ppc-*-beos*) fmt=coff ;; - ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; - ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; -- ppc-*-linux-gnu*) fmt=elf em=linux ;; -+ ppc-*-linux-*) fmt=elf em=linux ;; - ppc-*-solaris*) fmt=elf ;; - ppc-*-rtems*) fmt=elf ;; - ppc-*-macos*) fmt=coff em=macos ;; -@@ -340,7 +340,7 @@ - ppc-*-kaos*) fmt=elf ;; - ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; - -- s390-*-linux-gnu*) fmt=elf em=linux ;; -+ s390-*-linux-*) fmt=elf em=linux ;; - s390-*-tpf*) fmt=elf ;; - - sh*-*-linux*) fmt=elf em=linux -@@ -369,7 +369,7 @@ - sparc-*-aout | sparc*-*-vxworks*) fmt=aout em=sparcaout ;; - sparc-*-coff) fmt=coff ;; - sparc-*-linux*aout*) fmt=aout em=linux ;; -- sparc-*-linux-gnu*) fmt=elf em=linux ;; -+ sparc-*-linux-*) fmt=elf em=linux ;; - sparc-fujitsu-none) fmt=aout ;; - sparc-*-elf) fmt=elf ;; - sparc-*-sysv4*) fmt=elf ;; -@@ -398,7 +398,7 @@ - vax-*-netbsdelf*) fmt=elf em=nbsd ;; - vax-*-netbsd*) fmt=aout em=nbsd ;; - vax-*-bsd* | vax-*-ultrix*) fmt=aout ;; -- vax-*-linux-gnu*) fmt=elf em=linux bfd_gas=yes ;; -+ vax-*-linux-*) fmt=elf em=linux bfd_gas=yes ;; - - w65-*-*) fmt=coff ;; - -diff -ur binutils-2.15.97.orig/ld/configure.host binutils-2.15.97/ld/configure.host ---- binutils-2.15.97.orig/ld/configure.host 2005-04-29 20:48:15.000000000 -0400 -+++ binutils-2.15.97/ld/configure.host 2005-04-29 20:53:50.000000000 -0400 -@@ -83,7 +83,7 @@ - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]\*,ld-linux,g"` - ;; - --arm*-*-linux-gnu*) -+arm*-*-linux-*) - HOSTING_CRT0='-p '`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]\*,ld-linux,g"` - ;; - -@@ -141,7 +141,7 @@ - HOSTING_LIBS="$HOSTING_LIBS"' -lcygwin -L/usr/lib/w32api -luser32 -lkernel32 -ladvapi32 -lshell32 `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi`' - ;; - --ia64-*-linux-gnu*) -+ia64-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]*\*,ld-linux-ia64,g"` - ;; - -@@ -155,11 +155,11 @@ - HOSTING_LIBS='-L/usr/lib32 '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o ; else ${CC} -print-file-name=crtend.o; fi` /usr/lib32/crtn.o -init __do_global_ctors -fini __do_global_dtors' - ;; - --mips*-*-linux-gnu*) -+mips*-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"` - ;; - --m68*-*-linux-gnu*) -+m68*-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"` - ;; - -@@ -183,19 +183,19 @@ - HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi`' - ;; - --powerpc64*-*-linux-gnu*) -+powerpc64*-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld64.so.1,"` - ;; - --powerpc*-*-linux-gnu*) -+powerpc*-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"` - ;; - --s390x-*-linux-gnu*) -+s390x-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld64.so.1,"` - ;; - --s390-*-linux-gnu*) -+s390-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"` - ;; - -@@ -209,15 +209,15 @@ - HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/crtn.o ]; then echo ../gcc/crtn.o; else ${CC} -print-file-name=crtn.o; fi`' - ;; - --sparc-*-linux-gnu*) -+sparc-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld-linux.so.2,"` - ;; - --sparc64-*-linux-gnu*) -+sparc64-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld-linux.so.2,"` - ;; - --x86_64-*-linux-gnu*) -+x86_64-*-linux-*) - HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld-linux-x86-64.so.2,"` - ;; - -diff -ur binutils-2.15.97.orig/ld/configure.tgt binutils-2.15.97/ld/configure.tgt ---- binutils-2.15.97.orig/ld/configure.tgt 2005-04-29 20:48:15.000000000 -0400 -+++ binutils-2.15.97/ld/configure.tgt 2005-04-29 20:53:50.000000000 -0400 -@@ -30,7 +30,7 @@ - cris-*-*aout*) targ_emul=crisaout - targ_extra_emuls="criself crislinux" - targ_extra_libpath=$targ_extra_emuls ;; --cris-*-linux-gnu* | cris-*-linux-gnu*) -+cris-*-linux-* | crisv32-*-linux-*) - targ_emul=crislinux ;; - cris-*-* | crisv32-*-*) targ_emul=criself - targ_extra_emuls="crisaout crislinux" -@@ -62,14 +62,14 @@ - tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'` - tdir_sun4=sparc-sun-sunos4 - ;; --sparc64-*-linux-gnu*) targ_emul=elf64_sparc -+sparc64-*-linux-*) targ_emul=elf64_sparc - targ_extra_emuls="elf32_sparc sparclinux sun4" - targ_extra_libpath=elf32_sparc - tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'` - tdir_sparclinux=${tdir_elf32_sparc}aout - tdir_sun4=sparc-sun-sunos4 - ;; --sparc*-*-linux-gnu*) targ_emul=elf32_sparc -+sparc*-*-linux-*) targ_emul=elf32_sparc - targ_extra_emuls="sparclinux elf64_sparc sun4" - targ_extra_libpath=elf64_sparc - tdir_sparclinux=${targ_alias}aout -@@ -119,8 +119,8 @@ - ia64-*-aix*) targ_emul=elf64_aix ;; - m32r*le-*-elf*) targ_emul=m32rlelf ;; - m32r*-*-elf*) targ_emul=m32relf ;; --m32r*le-*-linux-gnu*) targ_emul=m32rlelf_linux ;; --m32r*-*-linux-gnu*) targ_emul=m32relf_linux ;; -+m32r*le-*-linux-*) targ_emul=m32rlelf_linux ;; -+m32r*-*-linux-*) targ_emul=m32relf_linux ;; - m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf - targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;; - m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf -@@ -131,7 +131,7 @@ - m68*-apple-aux*) targ_emul=m68kaux ;; - maxq-*-coff) targ_emul=maxqcoff;; - *-tandem-none) targ_emul=st2000 ;; --i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;; -+i370-*-elf* | i370-*-linux-*) targ_emul=elf32i370 ;; - i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;; - i[3-7]86-*-vsta) targ_emul=vsta ;; - i[3-7]86-go32-rtems*) targ_emul=i386go32 ;; -@@ -155,14 +155,14 @@ - tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'` - ;; - i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;; --i[3-7]86-*-linux-gnu*) targ_emul=elf_i386 -+i[3-7]86-*-linux-*) targ_emul=elf_i386 - targ_extra_emuls=i386linux - if test x${want64} = xtrue; then - targ_extra_emuls="$targ_extra_emuls elf_x86_64" - fi - tdir_i386linux=${targ_alias}aout - ;; --x86_64-*-linux-gnu*) targ_emul=elf_x86_64 -+x86_64-*-linux-*) targ_emul=elf_x86_64 - targ_extra_emuls="elf_i386 i386linux" - targ_extra_libpath=elf_i386 - tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'` -@@ -262,13 +262,13 @@ - arm-*-kaos*) targ_emul=armelf ;; - arm9e-*-elf) targ_emul=armelf ;; - arm*b-*-linux-gnueabi) targ_emul=armelfb_linux_eabi ;; --arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;; -+arm*b-*-linux-*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;; - arm*-*-linux-gnueabi) targ_emul=armelf_linux_eabi ;; --arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; -+arm*-*-linux-*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - arm-*-vxworks) targ_emul=armelf_vxworks ;; - arm*-*-conix*) targ_emul=armelf ;; --thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; -+thumb-*-linux-* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;; - strongarm-*-coff) targ_emul=armcoff ;; - strongarm-*-elf) targ_emul=armelf ;; - strongarm-*-kaos*) targ_emul=armelf ;; -@@ -372,7 +372,7 @@ - targ_extra_emuls=m68kelf - tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'` - ;; --m68k-*-linux-gnu*) targ_emul=m68kelf -+m68k-*-linux-*) targ_emul=m68kelf - targ_extra_emuls=m68klinux - tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'` - ;; -@@ -388,9 +388,9 @@ - m68*-*-psos*) targ_emul=m68kpsos ;; - m68*-*-rtemscoff*) targ_emul=m68kcoff ;; - m68*-*-rtems*) targ_emul=m68kelf ;; --hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;; -+hppa*64*-*-linux-*) targ_emul=hppa64linux ;; - hppa*64*-*) targ_emul=elf64hppa ;; --hppa*-*-linux-gnu*) targ_emul=hppalinux ;; -+hppa*-*-linux-*) targ_emul=hppalinux ;; - hppa*-*-*elf*) targ_emul=hppaelf ;; - hppa*-*-lites*) targ_emul=hppaelf ;; - hppa*-*-netbsd*) targ_emul=hppanbsd ;; -@@ -402,7 +402,7 @@ - vax-*-netbsdaout* | vax-*-netbsd*) - targ_emul=vaxnbsd - targ_extra_emuls=elf32vax ;; --vax-*-linux-gnu*) targ_emul=elf32vax ;; -+vax-*-linux-*) targ_emul=elf32vax ;; - mips*-*-pe) targ_emul=mipspe ; - targ_extra_ofiles="deffilep.o pe-dll.o" ;; - mips*-dec-ultrix*) targ_emul=mipslit ;; -@@ -436,18 +436,18 @@ - mips*-*-vxworks*) targ_emul=elf32ebmip - targ_extra_emuls="elf32elmip" ;; - mips*-*-windiss) targ_emul=elf32mipswindiss ;; --mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32 -+mips64*el-*-linux-*) targ_emul=elf32ltsmipn32 - targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" - targ_extra_libpath="elf32ltsmip elf64ltsmip" - ;; --mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32 -+mips64*-*-linux-*) targ_emul=elf32btsmipn32 - targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" - targ_extra_libpath="elf32btsmip elf64btsmip" - ;; --mips*el-*-linux-gnu*) targ_emul=elf32ltsmip -+mips*el-*-linux-*) targ_emul=elf32ltsmip - targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip" - ;; --mips*-*-linux-gnu*) targ_emul=elf32btsmip -+mips*-*-linux-*) targ_emul=elf32btsmip - targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip" - ;; - mips*-*-lnews*) targ_emul=mipslnews ;; -@@ -467,7 +467,7 @@ - alpha*-*-linuxecoff*) targ_emul=alpha targ_extra_emuls=elf64alpha - tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'` - ;; --alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha -+alpha*-*-linux-*) targ_emul=elf64alpha targ_extra_emuls=alpha - tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'` - ;; - alpha*-*-osf*) targ_emul=alpha ;; -diff -ur binutils-2.15.97.orig/ld/emultempl/elf32.em binutils-2.15.97/ld/emultempl/elf32.em ---- binutils-2.15.97.orig/ld/emultempl/elf32.em 2005-04-29 20:48:15.000000000 -0400 -+++ binutils-2.15.97/ld/emultempl/elf32.em 2005-04-29 20:53:50.000000000 -0400 -@@ -65,7 +65,7 @@ - - if [ "x${USE_LIBPATH}" = xyes ] ; then - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-*) - cat >>e${EMULATION_NAME}.c <<EOF - #ifdef HAVE_GLOB - #include <glob.h> -@@ -350,7 +350,7 @@ - - EOF - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-*) - cat >>e${EMULATION_NAME}.c <<EOF - { - struct bfd_link_needed_list *l; -@@ -522,7 +522,7 @@ - - EOF - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-*) - cat >>e${EMULATION_NAME}.c <<EOF - /* For a native linker, check the file /etc/ld.so.conf for directories - in which we may find shared libraries. /etc/ld.so.conf is really -@@ -932,7 +932,7 @@ - EOF - if [ "x${USE_LIBPATH}" = xyes ] ; then - case ${target} in -- *-*-linux-gnu*) -+ *-*-linux-*) - cat >>e${EMULATION_NAME}.c <<EOF - if (gld${EMULATION_NAME}_check_ld_so_conf (l->name, force)) - break; diff --git a/openwrt/toolchain/binutils/2.16.1/110-uclibc-libtool-conf.patch b/openwrt/toolchain/binutils/2.16.1/110-uclibc-libtool-conf.patch deleted file mode 100644 index ec38caa125..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/110-uclibc-libtool-conf.patch +++ /dev/null @@ -1,218 +0,0 @@ -diff -urN binutils-2.16.90.0.2-dist/bfd/configure binutils-2.16.90.0.2/bfd/configure ---- binutils-2.16.90.0.2-dist/bfd/configure 2005-04-29 12:50:24.000000000 -0500 -+++ binutils-2.16.90.0.2/bfd/configure 2005-04-30 11:34:59.246377032 -0500 -@@ -3584,6 +3584,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/binutils/configure binutils-2.16.90.0.2/binutils/configure ---- binutils-2.16.90.0.2-dist/binutils/configure 2005-04-29 12:50:26.000000000 -0500 -+++ binutils-2.16.90.0.2/binutils/configure 2005-04-30 11:35:28.900868864 -0500 -@@ -1577,6 +1577,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/configure binutils-2.16.90.0.2/configure ---- binutils-2.16.90.0.2-dist/configure 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure 2005-04-30 11:31:12.525843792 -0500 -@@ -1111,7 +1111,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -diff -urN binutils-2.16.90.0.2-dist/configure.in binutils-2.16.90.0.2/configure.in ---- binutils-2.16.90.0.2-dist/configure.in 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure.in 2005-04-30 11:29:51.643139832 -0500 -@@ -328,7 +328,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -diff -urN binutils-2.16.90.0.2-dist/gas/configure binutils-2.16.90.0.2/gas/configure ---- binutils-2.16.90.0.2-dist/gas/configure 2005-04-29 12:50:27.000000000 -0500 -+++ binutils-2.16.90.0.2/gas/configure 2005-04-30 11:35:21.097055224 -0500 -@@ -3421,6 +3421,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/gas/testsuite/gas/sh/basic.exp binutils-2.16.90.0.2/gas/testsuite/gas/sh/basic.exp ---- binutils-2.16.90.0.2-dist/gas/testsuite/gas/sh/basic.exp 2005-04-09 14:03:14.000000000 -0500 -+++ binutils-2.16.90.0.2/gas/testsuite/gas/sh/basic.exp 2005-04-30 11:41:57.301822944 -0500 -@@ -20,7 +20,7 @@ - - # Written by Cygnus Support. - --if [istarget "sh*-*-linux-gnu"] { -+if {[istarget "sh*-*-linux-gnu"] || [istarget "sh*-*-linux-uclibc"]} { - global ASFLAGS - set ASFLAGS "$ASFLAGS -big" - } -diff -urN binutils-2.16.90.0.2-dist/gprof/configure binutils-2.16.90.0.2/gprof/configure ---- binutils-2.16.90.0.2-dist/gprof/configure 2005-04-29 12:50:29.000000000 -0500 -+++ binutils-2.16.90.0.2/gprof/configure 2005-04-30 11:35:36.880655752 -0500 -@@ -3419,6 +3419,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/ld/configure binutils-2.16.90.0.2/ld/configure ---- binutils-2.16.90.0.2-dist/ld/configure 2005-04-29 12:50:30.000000000 -0500 -+++ binutils-2.16.90.0.2/ld/configure 2005-04-30 11:46:15.974498720 -0500 -@@ -1581,6 +1581,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/ld/testsuite/ld-sh/sh.exp binutils-2.16.90.0.2/ld/testsuite/ld-sh/sh.exp ---- binutils-2.16.90.0.2-dist/ld/testsuite/ld-sh/sh.exp 2005-04-09 14:03:29.000000000 -0500 -+++ binutils-2.16.90.0.2/ld/testsuite/ld-sh/sh.exp 2005-04-30 11:45:07.890849008 -0500 -@@ -62,7 +62,7 @@ - - set testsrec "SH relaxing to S-records" - --if [istarget sh*-linux-gnu] { -+if {[istarget sh*-linux-gnu] || [istarget sh*-*-linux-uclibc]} { - # This target needs the explicit entry address. - catch "exec $objdump -x tmpdir/sh1 | grep start\\ address | sed s/start\\ address//" entry_addr - set srec_relax_arg "-Ttext $entry_addr -relax --oformat srec tmpdir/sh1.o" -@@ -117,7 +117,7 @@ - return - } - --if [istarget sh*-linux-gnu] { -+if {[istarget sh*-linux-gnu] || [istarget sh*-*-linux-uclibc]} { - exec sed -e s/_main/main/ -e s/_trap/trap/ -e s/_stack/stack/ \ - < $srcdir/$subdir/start.s >tmpdir/start.s - } else { -diff -urN binutils-2.16.90.0.2-dist/ld/testsuite/ld-srec/srec.exp binutils-2.16.90.0.2/ld/testsuite/ld-srec/srec.exp ---- binutils-2.16.90.0.2-dist/ld/testsuite/ld-srec/srec.exp 2005-04-29 12:50:30.000000000 -0500 -+++ binutils-2.16.90.0.2/ld/testsuite/ld-srec/srec.exp 2005-04-30 11:44:26.358162936 -0500 -@@ -385,7 +385,7 @@ - setup_xfail "v850*-*-elf" - - # The S-record linker doesn't handle Alpha Elf relaxation. --setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*" -+setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*" "alpha*-*-linux-uclibc*" - setup_xfail "alpha*-*-netbsd*" - - # The S-record linker hasn't any hope of coping with HPPA relocs. -@@ -424,7 +424,7 @@ - setup_xfail "thumb-*-*" - setup_xfail "powerpc*-*-eabi*" - setup_xfail "v850*-*-elf" --setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*" -+setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*" "alpha*-*-linux-uclibc*" - setup_xfail "alpha*-*-netbsd*" - setup_xfail "hppa*-*-*" - setup_xfail "ia64-*-*" -diff -urN binutils-2.16.90.0.2-dist/libtool.m4 binutils-2.16.90.0.2/libtool.m4 ---- binutils-2.16.90.0.2-dist/libtool.m4 2004-07-27 23:36:06.000000000 -0500 -+++ binutils-2.16.90.0.2/libtool.m4 2005-04-30 11:35:54.062043784 -0500 -@@ -645,6 +645,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN binutils-2.16.90.0.2-dist/ltconfig binutils-2.16.90.0.2/ltconfig ---- binutils-2.16.90.0.2-dist/ltconfig 2004-11-22 14:33:30.000000000 -0600 -+++ binutils-2.16.90.0.2/ltconfig 2005-04-30 11:22:10.594229920 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1270,6 +1271,23 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -urN binutils-2.16.90.0.2-dist/opcodes/configure binutils-2.16.90.0.2/opcodes/configure ---- binutils-2.16.90.0.2-dist/opcodes/configure 2005-04-29 12:50:31.000000000 -0500 -+++ binutils-2.16.90.0.2/opcodes/configure 2005-04-30 11:17:07.168357664 -0500 -@@ -3588,6 +3588,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' diff --git a/openwrt/toolchain/binutils/2.16.1/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.16.1/300-001_ld_makefile_patch.patch deleted file mode 100644 index b25d5b7e21..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am binutils-2.14.90.0.6/ld/Makefile.am ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.am 2003-09-10 23:12:09.000000000 +0100 -@@ -19,7 +19,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in binutils-2.14.90.0.6/ld/Makefile.in ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.in 2003-09-10 23:12:09.000000000 +0100 -@@ -128,7 +128,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ diff --git a/openwrt/toolchain/binutils/2.16.1/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.16.1/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.16.1/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.16.1/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.16.1/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.16.1/702-binutils-skip-comments.patch deleted file mode 100644 index 9ef7a7c9ec..0000000000 --- a/openwrt/toolchain/binutils/2.16.1/702-binutils-skip-comments.patch +++ /dev/null @@ -1,93 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch deleted file mode 100644 index c7e2c63efc..0000000000 --- a/openwrt/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch +++ /dev/null @@ -1,240 +0,0 @@ -diff -urN binutils-2.16.90.0.2-dist/bfd/configure binutils-2.16.90.0.2/bfd/configure ---- binutils-2.16.90.0.2-dist/bfd/configure 2005-04-29 12:50:24.000000000 -0500 -+++ binutils-2.16.90.0.2/bfd/configure 2005-04-30 11:34:59.246377032 -0500 -@@ -3584,6 +3584,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/binutils/configure binutils-2.16.90.0.2/binutils/configure ---- binutils-2.16.90.0.2-dist/binutils/configure 2005-04-29 12:50:26.000000000 -0500 -+++ binutils-2.16.90.0.2/binutils/configure 2005-04-30 11:35:28.900868864 -0500 -@@ -1577,6 +1577,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/configure binutils-2.16.90.0.2/configure ---- binutils-2.16.90.0.2-dist/configure 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure 2005-04-30 11:31:12.525843792 -0500 -@@ -1111,7 +1111,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -1207,7 +1207,7 @@ - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -1495,7 +1495,7 @@ - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[3456789]86-*-vsta) ;; # don't add gprof back in - i[3456789]86-*-go32*) ;; # don't add gprof back in -diff -urN binutils-2.16.90.0.2-dist/configure.in binutils-2.16.90.0.2/configure.in ---- binutils-2.16.90.0.2-dist/configure.in 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure.in 2005-04-30 11:29:51.643139832 -0500 -@@ -328,7 +328,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -424,7 +424,7 @@ - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -712,7 +712,7 @@ - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[[3456789]]86-*-vsta) ;; # don't add gprof back in - i[[3456789]]86-*-go32*) ;; # don't add gprof back in -diff -urN binutils-2.16.90.0.2-dist/gas/configure binutils-2.16.90.0.2/gas/configure ---- binutils-2.16.90.0.2-dist/gas/configure 2005-04-29 12:50:27.000000000 -0500 -+++ binutils-2.16.90.0.2/gas/configure 2005-04-30 11:35:21.097055224 -0500 -@@ -3421,6 +3421,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/gprof/configure binutils-2.16.90.0.2/gprof/configure ---- binutils-2.16.90.0.2-dist/gprof/configure 2005-04-29 12:50:29.000000000 -0500 -+++ binutils-2.16.90.0.2/gprof/configure 2005-04-30 11:35:36.880655752 -0500 -@@ -3419,6 +3419,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/ld/configure binutils-2.16.90.0.2/ld/configure ---- binutils-2.16.90.0.2-dist/ld/configure 2005-04-29 12:50:30.000000000 -0500 -+++ binutils-2.16.90.0.2/ld/configure 2005-04-30 11:46:15.974498720 -0500 -@@ -1581,6 +1581,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/libtool.m4 binutils-2.16.90.0.2/libtool.m4 ---- binutils-2.16.90.0.2-dist/libtool.m4 2004-07-27 23:36:06.000000000 -0500 -+++ binutils-2.16.90.0.2/libtool.m4 2005-04-30 11:35:54.062043784 -0500 -@@ -645,6 +645,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN binutils-2.16.90.0.2-dist/ltconfig binutils-2.16.90.0.2/ltconfig ---- binutils-2.16.90.0.2-dist/ltconfig 2004-11-22 14:33:30.000000000 -0600 -+++ binutils-2.16.90.0.2/ltconfig 2005-04-30 11:22:10.594229920 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1270,6 +1271,23 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -urN binutils-2.16.90.0.2-dist/opcodes/configure binutils-2.16.90.0.2/opcodes/configure ---- binutils-2.16.90.0.2-dist/opcodes/configure 2005-04-29 12:50:31.000000000 -0500 -+++ binutils-2.16.90.0.2/opcodes/configure 2005-04-30 11:17:07.168357664 -0500 -@@ -3588,6 +3588,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2.orig/config.sub binutils-2.16.90.0.2/config.sub ---- binutils-2.16.90.0.2.orig/config.sub 2005-04-29 20:50:23.000000000 +0300 -+++ binutils-2.16.90.0.2/config.sub 2005-05-02 13:34:38.400457452 +0300 -@@ -265,7 +265,7 @@ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ -- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ -+ | sh | sh[1234]* | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b \ -@@ -340,7 +340,7 @@ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ -- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ -+ | sh-* | sh[1234]*-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ - | sparclite-* \ -@@ -891,9 +891,6 @@ - basic_machine=sh-hitachi - os=-hms - ;; -- sh64) -- basic_machine=sh64-unknown -- ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks -@@ -1093,7 +1090,7 @@ - we32k) - basic_machine=we32k-att - ;; -- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) -+ sh2* | sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sh64) diff --git a/openwrt/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch deleted file mode 100644 index b25d5b7e21..0000000000 --- a/openwrt/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am binutils-2.14.90.0.6/ld/Makefile.am ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.am 2003-09-10 23:12:09.000000000 +0100 -@@ -19,7 +19,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in binutils-2.14.90.0.6/ld/Makefile.in ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in 2003-08-21 16:28:48.000000000 +0100 -+++ binutils-2.14.90.0.6/ld/Makefile.in 2003-09-10 23:12:09.000000000 +0100 -@@ -128,7 +128,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ diff --git a/openwrt/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch deleted file mode 100644 index 9ef7a7c9ec..0000000000 --- a/openwrt/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch +++ /dev/null @@ -1,93 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/2.16.91.0.1/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.16.91.0.1/100-uclibc-conf.patch deleted file mode 100644 index c7e2c63efc..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.1/100-uclibc-conf.patch +++ /dev/null @@ -1,240 +0,0 @@ -diff -urN binutils-2.16.90.0.2-dist/bfd/configure binutils-2.16.90.0.2/bfd/configure ---- binutils-2.16.90.0.2-dist/bfd/configure 2005-04-29 12:50:24.000000000 -0500 -+++ binutils-2.16.90.0.2/bfd/configure 2005-04-30 11:34:59.246377032 -0500 -@@ -3584,6 +3584,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/binutils/configure binutils-2.16.90.0.2/binutils/configure ---- binutils-2.16.90.0.2-dist/binutils/configure 2005-04-29 12:50:26.000000000 -0500 -+++ binutils-2.16.90.0.2/binutils/configure 2005-04-30 11:35:28.900868864 -0500 -@@ -1577,6 +1577,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/configure binutils-2.16.90.0.2/configure ---- binutils-2.16.90.0.2-dist/configure 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure 2005-04-30 11:31:12.525843792 -0500 -@@ -1111,7 +1111,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -1207,7 +1207,7 @@ - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -1495,7 +1495,7 @@ - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[3456789]86-*-vsta) ;; # don't add gprof back in - i[3456789]86-*-go32*) ;; # don't add gprof back in -diff -urN binutils-2.16.90.0.2-dist/configure.in binutils-2.16.90.0.2/configure.in ---- binutils-2.16.90.0.2-dist/configure.in 2005-04-29 12:50:23.000000000 -0500 -+++ binutils-2.16.90.0.2/configure.in 2005-04-30 11:29:51.643139832 -0500 -@@ -328,7 +328,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -424,7 +424,7 @@ - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -712,7 +712,7 @@ - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[[3456789]]86-*-vsta) ;; # don't add gprof back in - i[[3456789]]86-*-go32*) ;; # don't add gprof back in -diff -urN binutils-2.16.90.0.2-dist/gas/configure binutils-2.16.90.0.2/gas/configure ---- binutils-2.16.90.0.2-dist/gas/configure 2005-04-29 12:50:27.000000000 -0500 -+++ binutils-2.16.90.0.2/gas/configure 2005-04-30 11:35:21.097055224 -0500 -@@ -3421,6 +3421,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/gprof/configure binutils-2.16.90.0.2/gprof/configure ---- binutils-2.16.90.0.2-dist/gprof/configure 2005-04-29 12:50:29.000000000 -0500 -+++ binutils-2.16.90.0.2/gprof/configure 2005-04-30 11:35:36.880655752 -0500 -@@ -3419,6 +3419,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/ld/configure binutils-2.16.90.0.2/ld/configure ---- binutils-2.16.90.0.2-dist/ld/configure 2005-04-29 12:50:30.000000000 -0500 -+++ binutils-2.16.90.0.2/ld/configure 2005-04-30 11:46:15.974498720 -0500 -@@ -1581,6 +1581,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2-dist/libtool.m4 binutils-2.16.90.0.2/libtool.m4 ---- binutils-2.16.90.0.2-dist/libtool.m4 2004-07-27 23:36:06.000000000 -0500 -+++ binutils-2.16.90.0.2/libtool.m4 2005-04-30 11:35:54.062043784 -0500 -@@ -645,6 +645,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN binutils-2.16.90.0.2-dist/ltconfig binutils-2.16.90.0.2/ltconfig ---- binutils-2.16.90.0.2-dist/ltconfig 2004-11-22 14:33:30.000000000 -0600 -+++ binutils-2.16.90.0.2/ltconfig 2005-04-30 11:22:10.594229920 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1270,6 +1271,23 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -urN binutils-2.16.90.0.2-dist/opcodes/configure binutils-2.16.90.0.2/opcodes/configure ---- binutils-2.16.90.0.2-dist/opcodes/configure 2005-04-29 12:50:31.000000000 -0500 -+++ binutils-2.16.90.0.2/opcodes/configure 2005-04-30 11:17:07.168357664 -0500 -@@ -3588,6 +3588,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN binutils-2.16.90.0.2.orig/config.sub binutils-2.16.90.0.2/config.sub ---- binutils-2.16.90.0.2.orig/config.sub 2005-04-29 20:50:23.000000000 +0300 -+++ binutils-2.16.90.0.2/config.sub 2005-05-02 13:34:38.400457452 +0300 -@@ -265,7 +265,7 @@ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ -- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ -+ | sh | sh[1234]* | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b \ -@@ -340,7 +340,7 @@ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ -- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ -+ | sh-* | sh[1234]*-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ - | sparclite-* \ -@@ -891,9 +891,6 @@ - basic_machine=sh-hitachi - os=-hms - ;; -- sh64) -- basic_machine=sh64-unknown -- ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks -@@ -1093,7 +1090,7 @@ - we32k) - basic_machine=we32k-att - ;; -- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) -+ sh2* | sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sh64) diff --git a/openwrt/toolchain/binutils/2.16.91.0.1/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.16.91.0.1/300-001_ld_makefile_patch.patch deleted file mode 100644 index 04a7e61e25..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.1/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ ---- binutils-2.16.91.0.1/ld/Makefile.am -+++ binutils-2.16.91.0.1/ld/Makefile.am -@@ -20,7 +20,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ ---- binutils-2.16.91.0.1/ld/Makefile.in -+++ binutils-2.16.91.0.1/ld/Makefile.in -@@ -268,7 +268,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/openwrt/toolchain/binutils/2.16.91.0.1/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.16.91.0.1/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.1/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.16.91.0.1/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.16.91.0.1/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.1/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.16.91.0.1/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.16.91.0.1/702-binutils-skip-comments.patch deleted file mode 100644 index 9ef7a7c9ec..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.1/702-binutils-skip-comments.patch +++ /dev/null @@ -1,93 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/2.16.91.0.2/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.16.91.0.2/100-uclibc-conf.patch deleted file mode 100644 index 85fc30930e..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.2/100-uclibc-conf.patch +++ /dev/null @@ -1,230 +0,0 @@ -diff -Nurp binutils-2.16.91.0.2.orig/bfd/configure binutils-2.16.91.0.2/bfd/configure ---- binutils-2.16.91.0.2.orig/bfd/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/bfd/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3585,6 +3585,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/binutils/configure binutils-2.16.91.0.2/binutils/configure ---- binutils-2.16.91.0.2.orig/binutils/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/binutils/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3420,6 +3420,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/configure binutils-2.16.91.0.2/configure ---- binutils-2.16.91.0.2.orig/configure 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -1130,7 +1130,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -1235,7 +1235,7 @@ case "${target}" in - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -1530,7 +1530,7 @@ case "${target}" in - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[3456789]86-*-vsta) ;; # don't add gprof back in - i[3456789]86-*-go32*) ;; # don't add gprof back in -diff -Nurp binutils-2.16.91.0.2.orig/configure.in binutils-2.16.91.0.2/configure.in ---- binutils-2.16.91.0.2.orig/configure.in 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/configure.in 2005-08-02 00:17:47.000000000 -0400 -@@ -341,7 +341,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -446,7 +446,7 @@ case "${target}" in - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -741,7 +741,7 @@ case "${target}" in - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[[3456789]]86-*-vsta) ;; # don't add gprof back in - i[[3456789]]86-*-go32*) ;; # don't add gprof back in -diff -Nurp binutils-2.16.91.0.2.orig/gas/configure binutils-2.16.91.0.2/gas/configure ---- binutils-2.16.91.0.2.orig/gas/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/gas/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3421,6 +3421,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/gprof/configure binutils-2.16.91.0.2/gprof/configure ---- binutils-2.16.91.0.2.orig/gprof/configure 2005-04-29 13:50:29.000000000 -0400 -+++ binutils-2.16.91.0.2/gprof/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3419,6 +3419,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/ld/configure binutils-2.16.91.0.2/ld/configure ---- binutils-2.16.91.0.2.orig/ld/configure 2005-06-22 16:53:35.000000000 -0400 -+++ binutils-2.16.91.0.2/ld/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3422,6 +3422,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/libtool.m4 binutils-2.16.91.0.2/libtool.m4 ---- binutils-2.16.91.0.2.orig/libtool.m4 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/libtool.m4 2005-08-02 00:17:47.000000000 -0400 -@@ -645,6 +645,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -Nurp binutils-2.16.91.0.2.orig/ltconfig binutils-2.16.91.0.2/ltconfig ---- binutils-2.16.91.0.2.orig/ltconfig 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/ltconfig 2005-08-02 00:17:47.000000000 -0400 -@@ -602,6 +602,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)- - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1270,6 +1271,23 @@ linux-gnu*) - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -Nurp binutils-2.16.91.0.2.orig/opcodes/configure binutils-2.16.91.0.2/opcodes/configure ---- binutils-2.16.91.0.2.orig/opcodes/configure 2005-07-20 15:27:28.000000000 -0400 -+++ binutils-2.16.91.0.2/opcodes/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3588,6 +3588,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/config.sub binutils-2.16.91.0.2/config.sub ---- binutils-2.16.91.0.2.orig/config.sub 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/config.sub 2005-08-02 00:18:58.000000000 -0400 -@@ -268,7 +268,7 @@ case $basic_machine in - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ -- | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ -+ | sh | sh[1234]* | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b \ -@@ -348,7 +348,7 @@ case $basic_machine in - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ -- | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \ -+ | sh-* | sh[1234]*-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ - | sparclite-* \ -@@ -1102,7 +1102,7 @@ case $basic_machine in - we32k) - basic_machine=we32k-att - ;; -- sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) -+ sh[1234]* | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sparc | sparcv8 | sparcv9 | sparcv9b) diff --git a/openwrt/toolchain/binutils/2.16.91.0.2/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.16.91.0.2/300-001_ld_makefile_patch.patch deleted file mode 100644 index 04a7e61e25..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.2/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ ---- binutils-2.16.91.0.1/ld/Makefile.am -+++ binutils-2.16.91.0.1/ld/Makefile.am -@@ -20,7 +20,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ ---- binutils-2.16.91.0.1/ld/Makefile.in -+++ binutils-2.16.91.0.1/ld/Makefile.in -@@ -268,7 +268,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/openwrt/toolchain/binutils/2.16.91.0.2/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.16.91.0.2/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.2/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.16.91.0.2/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.16.91.0.2/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.2/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.16.91.0.2/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.16.91.0.2/702-binutils-skip-comments.patch deleted file mode 100644 index 9ef7a7c9ec..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.2/702-binutils-skip-comments.patch +++ /dev/null @@ -1,93 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/2.16.91.0.6/100-uclibc-conf.patch b/openwrt/toolchain/binutils/2.16.91.0.6/100-uclibc-conf.patch deleted file mode 100644 index 4c72f330f1..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.6/100-uclibc-conf.patch +++ /dev/null @@ -1,200 +0,0 @@ -diff -Nurp binutils-2.16.91.0.2.orig/bfd/configure binutils-2.16.91.0.2/bfd/configure ---- binutils-2.16.91.0.2.orig/bfd/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/bfd/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3585,6 +3585,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/binutils/configure binutils-2.16.91.0.2/binutils/configure ---- binutils-2.16.91.0.2.orig/binutils/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/binutils/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3420,6 +3420,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/configure binutils-2.16.91.0.2/configure ---- binutils-2.16.91.0.2.orig/configure 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -1130,7 +1130,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -1235,7 +1235,7 @@ case "${target}" in - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -1530,7 +1530,7 @@ case "${target}" in - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[3456789]86-*-vsta) ;; # don't add gprof back in - i[3456789]86-*-go32*) ;; # don't add gprof back in -diff -Nurp binutils-2.16.91.0.2.orig/configure.in binutils-2.16.91.0.2/configure.in ---- binutils-2.16.91.0.2.orig/configure.in 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/configure.in 2005-08-02 00:17:47.000000000 -0400 -@@ -341,7 +341,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) -@@ -446,7 +446,7 @@ case "${target}" in - am33_2.0-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; -- sh-*-linux*) -+ sh*-*-linux*) - noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" - ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) -@@ -741,7 +741,7 @@ case "${target}" in - romp-*-*) - noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${host}" in - i[[3456789]]86-*-vsta) ;; # don't add gprof back in - i[[3456789]]86-*-go32*) ;; # don't add gprof back in -diff -Nurp binutils-2.16.91.0.2.orig/gas/configure binutils-2.16.91.0.2/gas/configure ---- binutils-2.16.91.0.2.orig/gas/configure 2005-07-20 15:27:27.000000000 -0400 -+++ binutils-2.16.91.0.2/gas/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3421,6 +3421,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/gprof/configure binutils-2.16.91.0.2/gprof/configure ---- binutils-2.16.91.0.2.orig/gprof/configure 2005-04-29 13:50:29.000000000 -0400 -+++ binutils-2.16.91.0.2/gprof/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3419,6 +3419,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/ld/configure binutils-2.16.91.0.2/ld/configure ---- binutils-2.16.91.0.2.orig/ld/configure 2005-06-22 16:53:35.000000000 -0400 -+++ binutils-2.16.91.0.2/ld/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3422,6 +3422,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -Nurp binutils-2.16.91.0.2.orig/libtool.m4 binutils-2.16.91.0.2/libtool.m4 ---- binutils-2.16.91.0.2.orig/libtool.m4 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/libtool.m4 2005-08-02 00:17:47.000000000 -0400 -@@ -645,6 +645,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -Nurp binutils-2.16.91.0.2.orig/ltconfig binutils-2.16.91.0.2/ltconfig ---- binutils-2.16.91.0.2.orig/ltconfig 2005-07-20 15:27:26.000000000 -0400 -+++ binutils-2.16.91.0.2/ltconfig 2005-08-02 00:17:47.000000000 -0400 -@@ -602,6 +602,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)- - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1270,6 +1271,23 @@ linux-gnu*) - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no -diff -Nurp binutils-2.16.91.0.2.orig/opcodes/configure binutils-2.16.91.0.2/opcodes/configure ---- binutils-2.16.91.0.2.orig/opcodes/configure 2005-07-20 15:27:28.000000000 -0400 -+++ binutils-2.16.91.0.2/opcodes/configure 2005-08-02 00:17:47.000000000 -0400 -@@ -3588,6 +3588,11 @@ linux-gnu*) - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' diff --git a/openwrt/toolchain/binutils/2.16.91.0.6/300-001_ld_makefile_patch.patch b/openwrt/toolchain/binutils/2.16.91.0.6/300-001_ld_makefile_patch.patch deleted file mode 100644 index 04a7e61e25..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.6/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -e -## 001_ld_makefile_patch.dpatch -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Description: correct where ld scripts are installed -## DP: Author: Chris Chimelis <chris@debian.org> -## DP: Upstream status: N/A -## DP: Date: ?? - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ ---- binutils-2.16.91.0.1/ld/Makefile.am -+++ binutils-2.16.91.0.1/ld/Makefile.am -@@ -20,7 +20,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ ---- binutils-2.16.91.0.1/ld/Makefile.in -+++ binutils-2.16.91.0.1/ld/Makefile.in -@@ -268,7 +268,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/openwrt/toolchain/binutils/2.16.91.0.6/300-006_better_file_error.patch b/openwrt/toolchain/binutils/2.16.91.0.6/300-006_better_file_error.patch deleted file mode 100644 index f337611edf..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.6/300-006_better_file_error.patch +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -e -## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Specify which filename is causing an error if the filename is a -## DP: directory. (#45832) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c ---- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100 -+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100 -@@ -150,6 +150,13 @@ - { - bfd *nbfd; - const bfd_target *target_vec; -+ struct stat s; -+ -+ if (stat (filename, &s) == 0) -+ if (S_ISDIR(s.st_mode)) { -+ bfd_set_error (bfd_error_file_not_recognized); -+ return NULL; -+ } - - nbfd = _bfd_new_bfd (); - if (nbfd == NULL) diff --git a/openwrt/toolchain/binutils/2.16.91.0.6/300-012_check_ldrunpath_length.patch b/openwrt/toolchain/binutils/2.16.91.0.6/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 498651a90c..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.6/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -e -## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for -## DP: cases where -rpath isn't specified. (#151024) - -if [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch}" - -case "$1" in - -patch) patch $patch_opts -p1 < $0;; - -unpatch) patch $patch_opts -p1 -R < $0;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em ---- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100 -+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100 -@@ -692,6 +692,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -871,6 +873,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - if (! (bfd_elf_size_dynamic_sections - (output_bfd, command_line.soname, rpath, - command_line.filter_shlib, diff --git a/openwrt/toolchain/binutils/2.16.91.0.6/702-binutils-skip-comments.patch b/openwrt/toolchain/binutils/2.16.91.0.6/702-binutils-skip-comments.patch deleted file mode 100644 index 9ef7a7c9ec..0000000000 --- a/openwrt/toolchain/binutils/2.16.91.0.6/702-binutils-skip-comments.patch +++ /dev/null @@ -1,93 +0,0 @@ -Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html -Fixes -localealias.s:544: Error: junk at end of line, first unrecognized character is `,' -when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 - -Paths adjusted to match crosstool's patcher. - -Message-Id: m3n052qw2g.fsf@whitebox.m5r.de -From: Andreas Schwab <schwab at suse dot de> -To: Nathan Sidwell <nathan at codesourcery dot com> -Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com -Date: Fri, 23 Apr 2004 22:27:19 +0200 -Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line - -Nathan Sidwell <nathan@codesourcery.com> writes: - -> Index: read.c -> =================================================================== -> RCS file: /cvs/src/src/gas/read.c,v -> retrieving revision 1.76 -> diff -c -3 -p -r1.76 read.c -> *** read.c 12 Mar 2004 17:48:12 -0000 1.76 -> --- read.c 18 Mar 2004 09:56:05 -0000 -> *************** read_a_source_file (char *name) -> *** 1053,1059 **** -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! ignore_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook -> --- 1053,1059 ---- -> #endif -> input_line_pointer--; -> /* Report unknown char as ignored. */ -> ! demand_empty_rest_of_line (); -> } -> -> #ifdef md_after_pass_hook - -This means that the unknown character is no longer ignored, despite the -comment. As a side effect a line starting with a line comment character -not followed by APP in NO_APP mode now triggers an error instead of just a -warning, breaking builds of glibc on m68k-linux. Earlier in -read_a_source_file where #APP is handled there is another comment that -claims that unknown comments are ignored, when in fact they aren't (only -the initial line comment character is skipped). - -Note that the presence of #APP will mess up the line counters, but -that appears to be difficult to fix. - -Andreas. - -2004-04-23 Andreas Schwab <schwab@suse.de> - - * read.c (read_a_source_file): Ignore unknown text after line - comment character. Fix misleading comment. - ---- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200 -+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200 -@@ -950,10 +950,14 @@ read_a_source_file (char *name) - unsigned int new_length; - char *tmp_buf = 0; - -- bump_line_counters (); - s = input_line_pointer; - if (strncmp (s, "APP\n", 4)) -- continue; /* We ignore it */ -+ { -+ /* We ignore it */ -+ ignore_rest_of_line (); -+ continue; -+ } -+ bump_line_counters (); - s += 4; - - sb_new (&sbuf); -@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) - continue; - #endif - input_line_pointer--; -- /* Report unknown char as ignored. */ -+ /* Report unknown char as error. */ - demand_empty_rest_of_line (); - } - - --- -Andreas Schwab, SuSE Labs, schwab@suse.de -SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany -Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 -"And now for something completely different." diff --git a/openwrt/toolchain/binutils/Config.in b/openwrt/toolchain/binutils/Config.in deleted file mode 100644 index 7874638841..0000000000 --- a/openwrt/toolchain/binutils/Config.in +++ /dev/null @@ -1,40 +0,0 @@ -# Choose binutils version. - -if CONFIG_DEVEL - comment "Binutils Options" -endif - -choice - prompt "Binutils Version" if CONFIG_DEVEL - default BR2_BINUTILS_VERSION_2_16_1 - help - Select the version of binutils you wish to use. - - config BR2_BINUTILS_VERSION_2_15_94_0_2 - bool "binutils 2.15.94.0.2" - - config BR2_BINUTILS_VERSION_2_16_1 - bool "binutils 2.16.1" - - config BR2_BINUTILS_VERSION_2_16_90_0_3 - bool "binutils 2.16.90.0.3" - - config BR2_BINUTILS_VERSION_2_16_91_0_1 - bool "binutils 2.16.91.0.1" - - config BR2_BINUTILS_VERSION_2_16_91_0_2 - bool "binutils 2.16.91.0.2" - - config BR2_BINUTILS_VERSION_2_16_91_0_6 - bool "binutils 2.16.91.0.6" - -endchoice - -config BR2_BINUTILS_VERSION - string - default "2.15.94.0.2" if BR2_BINUTILS_VERSION_2_15_94_0_2 - default "2.16.1" if BR2_BINUTILS_VERSION_2_16_1 || !CONFIG_DEVEL - default "2.16.90.0.3" if BR2_BINUTILS_VERSION_2_16_90_0_3 - default "2.16.91.0.1" if BR2_BINUTILS_VERSION_2_16_91_0_1 - default "2.16.91.0.2" if BR2_BINUTILS_VERSION_2_16_91_0_2 - default "2.16.91.0.6" if BR2_BINUTILS_VERSION_2_16_91_0_6 diff --git a/openwrt/toolchain/binutils/Makefile b/openwrt/toolchain/binutils/Makefile deleted file mode 100644 index 1b205715e3..0000000000 --- a/openwrt/toolchain/binutils/Makefile +++ /dev/null @@ -1,106 +0,0 @@ -include $(TOPDIR)/rules.mk - -############################################################# -# -# build binutils for use on the host system -# -############################################################# -BINUTILS_VERSION:=$(strip $(subst ",, $(BR2_BINUTILS_VERSION))) -#" - -BINUTILS_SITE:=http://www.fr.kernel.org/pub/linux/devel/binutils \ - http://www.fi.kernel.org/pub/linux/devel/binutils \ - http://ftp.kernel.org/pub/linux/devel/binutils \ - http://www.de.kernel.org/pub/linux/devel/binutils - -BINUTILS_STABLE_SITE:=http://ftp.gnu.org/gnu/binutils/ \ - ftp://gatekeeper.dec.com/pub/GNU/ \ - ftp://ftp.uu.net/archive/systems/gnu/ \ - ftp://ftp.eu.uu.net/pub/gnu/ \ - ftp://ftp.funet.fi/pub/gnu/prep/ \ - ftp://ftp.leo.org/pub/comp/os/unix/gnu/ - -ifeq ($(BINUTILS_VERSION),2.16.1) -BINUTILS_SITE:=$(BINUTILS_STABLE_SITE) -endif - -BINUTILS_SOURCE:=binutils-$(BINUTILS_VERSION).tar.bz2 -BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-$(BINUTILS_VERSION) -BINUTILS_CAT:=bzcat - -BINUTILS_DIR1:=$(TOOL_BUILD_DIR)/binutils-$(BINUTILS_VERSION)-build - -$(DL_DIR)/$(BINUTILS_SOURCE): - mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(BINUTILS_SOURCE) x $(BINUTILS_SITE) - -$(BINUTILS_DIR)/.unpacked: $(DL_DIR)/$(BINUTILS_SOURCE) - mkdir -p $(TOOL_BUILD_DIR) - $(BINUTILS_CAT) $(DL_DIR)/$(BINUTILS_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - touch $(BINUTILS_DIR)/.unpacked - -$(BINUTILS_DIR)/.patched: $(BINUTILS_DIR)/.unpacked - # Apply appropriate binutils patches. - $(SCRIPT_DIR)/patch-kernel.sh $(BINUTILS_DIR) ./all \*.patch - $(SCRIPT_DIR)/patch-kernel.sh $(BINUTILS_DIR) ./$(BINUTILS_VERSION) \*.patch - touch $(BINUTILS_DIR)/.patched - -$(BINUTILS_DIR1)/.configured: $(BINUTILS_DIR)/.patched - mkdir -p $(BINUTILS_DIR1) - (cd $(BINUTILS_DIR1); \ - $(BINUTILS_DIR)/configure \ - --prefix=$(STAGING_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --disable-werror \ - $(DISABLE_NLS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) ); - touch $(BINUTILS_DIR1)/.configured - -$(BINUTILS_DIR1)/binutils/objdump: $(BINUTILS_DIR1)/.configured - $(MAKE) -C $(BINUTILS_DIR1) all - -# Make install will put gettext data in staging_dir/share/locale. -# Unfortunatey, it isn't configureable. -$(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-ld: $(BINUTILS_DIR1)/binutils/objdump - $(MAKE) -C $(BINUTILS_DIR1) install - - -############################################################# -# -# build binutils for use on the target system -# -############################################################# -BINUTILS_DIR2:=$(BUILD_DIR)/binutils-$(BINUTILS_VERSION)-target -$(BINUTILS_DIR2)/.configured: $(BINUTILS_DIR)/.patched - mkdir -p $(BINUTILS_DIR2) - (cd $(BINUTILS_DIR2); \ - PATH=$(TARGET_PATH) \ - CFLAGS="$(TARGET_CFLAGS)" \ - CFLAGS_FOR_BUILD="-O2 -g" \ - $(BINUTILS_DIR)/configure \ - --prefix=/usr \ - --exec-prefix=/usr \ - --build=$(GNU_HOST_NAME) \ - --host=$(REAL_GNU_TARGET_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - $(DISABLE_NLS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) ); - touch $(BINUTILS_DIR2)/.configured - -$(BINUTILS_DIR2)/binutils/objdump: $(BINUTILS_DIR2)/.configured - PATH=$(TARGET_PATH) \ - $(MAKE) -C $(BINUTILS_DIR2) all - -source: $(DL_DIR)/$(BINUTILS_SOURCE) -prepare: $(BINUTILS_DIR)/.patched -compile: $(BINUTILS_DIR1)/binutils/objdump -install: $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-ld -clean: - rm -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)* - rm -rf $(BINUTILS_DIR) $(BINUTILS_DIR1) - - diff --git a/openwrt/toolchain/binutils/all/400-mips-ELF_MAXPAGESIZE-4k.patch b/openwrt/toolchain/binutils/all/400-mips-ELF_MAXPAGESIZE-4k.patch deleted file mode 100644 index a8ae110e86..0000000000 --- a/openwrt/toolchain/binutils/all/400-mips-ELF_MAXPAGESIZE-4k.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN binutils-2.14.90.0.8.test/bfd/elf32-mips.c binutils-2.14.90.0.8/bfd/elf32-mips.c ---- binutils-2.14.90.0.8.test/bfd/elf32-mips.c 2004-01-14 22:07:43.000000000 +0100 -+++ binutils-2.14.90.0.8/bfd/elf32-mips.c 2005-03-03 23:44:00.000000000 +0100 -@@ -1611,7 +1611,7 @@ - - /* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses - page sizes of up to that limit, so we need to respect it. */ --#define ELF_MAXPAGESIZE 0x10000 -+#define ELF_MAXPAGESIZE 0x1000 - #define elf32_bed elf32_tradbed - - /* Include the target file again for this target. */ diff --git a/openwrt/toolchain/gcc/3.4.4/100-uclibc-conf.patch b/openwrt/toolchain/gcc/3.4.4/100-uclibc-conf.patch deleted file mode 100644 index 29e4c802e2..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/100-uclibc-conf.patch +++ /dev/null @@ -1,442 +0,0 @@ -diff -urN gcc-3.4.1-dist/boehm-gc/configure gcc-3.4.1/boehm-gc/configure ---- gcc-3.4.1-dist/boehm-gc/configure 2004-07-01 14:14:03.000000000 -0500 -+++ gcc-3.4.1/boehm-gc/configure 2004-08-12 16:22:57.000000000 -0500 -@@ -1947,6 +1947,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN gcc-3.4.1-dist/boehm-gc/ltconfig gcc-3.4.1/boehm-gc/ltconfig ---- gcc-3.4.1-dist/boehm-gc/ltconfig 2002-11-20 09:59:06.000000000 -0600 -+++ gcc-3.4.1/boehm-gc/ltconfig 2004-08-12 15:54:42.000000000 -0500 -@@ -1981,6 +1981,23 @@ - fi - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' -+ file_magic_cmd=/usr/bin/file -+ file_magic_test_file=`echo /lib/libuClibc-*.so` -+ -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - version_type=sunos - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-01-31 00:18:11.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-12 15:54:42.000000000 -0500 -@@ -81,6 +81,18 @@ - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s" - - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC "%{h*} %{version:-v} \ -+ %{b} %{Wl,*:%*} \ -+ %{static:-Bstatic} \ -+ %{shared:-shared} \ -+ %{symbolic:-Bsymbolic} \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \ -+ -X \ -+ %{mbig-endian:-EB}" \ -+ SUBTARGET_EXTRA_LINK_SPEC -+#else - #define LINK_SPEC "%{h*} %{version:-v} \ - %{b} %{Wl,*:%*} \ - %{static:-Bstatic} \ -@@ -91,6 +103,7 @@ - -X \ - %{mbig-endian:-EB}" \ - SUBTARGET_EXTRA_LINK_SPEC -+#endif - - #define TARGET_OS_CPP_BUILTINS() LINUX_TARGET_OS_CPP_BUILTINS() - -diff -urN gcc-3.4.1-dist/gcc/config/cris/linux.h gcc-3.4.1/gcc/config/cris/linux.h ---- gcc-3.4.1-dist/gcc/config/cris/linux.h 2003-11-28 21:08:09.000000000 -0600 -+++ gcc-3.4.1/gcc/config/cris/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -79,6 +79,25 @@ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -93,6 +112,8 @@ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - -diff -urN gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc gcc-3.4.1/gcc/config/cris/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/cris/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,3 @@ -+T_CFLAGS = -DUSE_UCLIBC -+TARGET_LIBGCC2_CFLAGS += -fPIC -+CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS) -diff -urN gcc-3.4.1-dist/gcc/config/i386/linux.h gcc-3.4.1/gcc/config/i386/linux.h ---- gcc-3.4.1-dist/gcc/config/i386/linux.h 2003-11-28 21:08:10.000000000 -0600 -+++ gcc-3.4.1/gcc/config/i386/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -118,6 +118,15 @@ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \ - %{static:-static}}}" - #else -+#if defined USE_UCLIBC -+#define LINK_SPEC "-m elf_i386 %{shared:-shared} \ -+ %{!shared: \ -+ %{!ibcs: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}}}" -+#else - #define LINK_SPEC "-m elf_i386 %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ -@@ -126,6 +135,7 @@ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}}}" - #endif -+#endif - - /* A C statement (sans semicolon) to output to the stdio stream - FILE the assembler definition of uninitialized global DECL named -diff -urN gcc-3.4.1-dist/gcc/config/mips/linux.h gcc-3.4.1/gcc/config/mips/linux.h ---- gcc-3.4.1-dist/gcc/config/mips/linux.h 2004-06-15 20:42:24.000000000 -0500 -+++ gcc-3.4.1/gcc/config/mips/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -109,6 +109,17 @@ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC \ -+ "%(endian_spec) \ -+ %{shared:-shared} \ -+ %{!shared: \ -+ %{!ibcs: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}}}" -+#else - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ -@@ -118,6 +129,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ - %{static:-static}}}" -+#endif - - #undef SUBTARGET_ASM_SPEC - #define SUBTARGET_ASM_SPEC "\ -diff -urN gcc-3.4.1-dist/gcc/config/rs6000/linux.h gcc-3.4.1/gcc/config/rs6000/linux.h ---- gcc-3.4.1-dist/gcc/config/rs6000/linux.h 2004-02-25 09:11:19.000000000 -0600 -+++ gcc-3.4.1/gcc/config/rs6000/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -61,7 +61,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" -diff -urN gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h gcc-3.4.1/gcc/config/rs6000/sysv4.h ---- gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h 2004-06-10 01:39:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/rs6000/sysv4.h 2004-08-12 15:54:43.000000000 -0500 -@@ -947,6 +947,7 @@ - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1124,6 +1125,10 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1290,6 +1295,7 @@ - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ -diff -urN gcc-3.4.1-dist/gcc/config/sh/linux.h gcc-3.4.1/gcc/config/sh/linux.h ---- gcc-3.4.1-dist/gcc/config/sh/linux.h 2004-01-11 20:29:13.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -73,12 +73,21 @@ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define SUBTARGET_LINK_SPEC \ -+ "%{shared:-shared} \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}" -+#else - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}" -+#endif - - #undef LIB_SPEC - #define LIB_SPEC \ -diff -urN gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc gcc-3.4.1/gcc/config/sh/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,13 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+TARGET_LIBGCC2_CFLAGS = -fpic -DNO_FPSCR_VALUES -+LIB1ASMFUNCS_CACHE = _ic_invalidate -+ -+LIB2FUNCS_EXTRA= -+ -+MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4 -+MULTILIB_DIRNAMES= -+MULTILIB_MATCHES = -+MULTILIB_EXCEPTIONS= -+ -+EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o -diff -urN gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc gcc-3.4.1/gcc/config/sh/t-sh64-uclibc ---- gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/t-sh64-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,13 @@ -+EXTRA_MULTILIB_PARTS= crt1.o crti.o crtn.o crtbegin.o crtend.o -+ -+LIB1ASMFUNCS = \ -+ _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \ -+ _shcompact_call_trampoline _shcompact_return_trampoline \ -+ _shcompact_incoming_args _ic_invalidate _nested_trampoline \ -+ _push_pop_shmedia_regs \ -+ _udivdi3 _divdi3 _umoddi3 _moddi3 -+ -+MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu -+MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64 -+MULTILIB_MATCHES= -+MULTILIB_EXCEPTIONS= -diff -urN gcc-3.4.1-dist/gcc/config/t-linux-uclibc gcc-3.4.1/gcc/config/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,15 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+# Compile crtbeginS.o and crtendS.o with pic. -+CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC -+# Compile libgcc2.a with pic. -+TARGET_LIBGCC2_CFLAGS = -fPIC -+ -+# Override t-slibgcc-elf-ver to export some libgcc symbols with -+# the symbol versions that glibc used. -+#SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver -+ -+# Use unwind-dw2-fde -+LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \ -+ $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c -+LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-04-21 10:12:35.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-12 15:59:46.000000000 -0500 -@@ -664,6 +664,12 @@ - extra_parts="" - use_collect2=yes - ;; -+arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc -+ tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux" -+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" -+ gnu_ld=yes -+ ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" - tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux" -@@ -725,6 +731,10 @@ - tmake_file="cris/t-cris cris/t-elfmulti" - gas=yes - ;; -+cris-*-linux-uclibc*) -+ tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" -+ tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc" -+ ;; - cris-*-linux*) - tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" - tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux" -@@ -988,6 +998,11 @@ - thread_file='single' - fi - ;; -+i[34567]86-*-linux*uclibc*) # Intel 80386's running GNU/Linux -+ # with ELF format using uClibc -+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h" -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc i386/t-crtstuff" -+ ;; - i[34567]86-*-linux*) # Intel 80386's running GNU/Linux - # with ELF format using glibc 2 - # aka GNU/Linux C library 6 -@@ -1547,6 +1562,16 @@ - gnu_ld=yes - gas=yes - ;; -+mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc -+ tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" -+ case ${target} in -+ mipsisa32*-*) -+ target_cpu_default="MASK_SOFT_FLOAT" -+ tm_defines="MIPS_ISA_DEFAULT=32" -+ ;; -+ esac -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc" -+ ;; - mips*-*-linux*) # Linux MIPS, either endian. - tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" - case ${target} in -@@ -1764,6 +1789,10 @@ - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm" - ;; -+powerpc-*-linux-uclibc*) -+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h" -+ tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm" -+ ;; - powerpc-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm" -@@ -1916,7 +1945,7 @@ - tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h" - ;; - sh-*-linux* | sh[2346lbe]*-*-linux*) -- tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux" -+ tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver" - case ${target} in - sh*be-*-* | sh*eb-*-*) ;; - *) -@@ -1924,9 +1953,17 @@ - tmake_file="${tmake_file} sh/t-le" - ;; - esac -- tmake_file="${tmake_file} sh/t-linux" -+ case ${target} in -+ *-*-linux-uclibc*) tmake_file="${tmake_file} t-linux-uclibc sh/t-linux-uclibc" ;; -+ *) tmake_file="${tmake_file} t-linux sh/t-linux" ;; -+ esac - tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h" - case ${target} in -+ sh64*-*-linux-uclibc*) -+ tmake_file="${tmake_file} sh/t-sh64-uclibc" -+ tm_file="${tm_file} sh/sh64.h" -+ extra_headers="shmedia.h ushmedia.h sshmedia.h" -+ ;; - sh64*) - tmake_file="${tmake_file} sh/t-sh64" - tm_file="${tm_file} sh/sh64.h" -diff -urN gcc-3.4.1-dist/libtool.m4 gcc-3.4.1/libtool.m4 ---- gcc-3.4.1-dist/libtool.m4 2004-05-18 04:08:37.000000000 -0500 -+++ gcc-3.4.1/libtool.m4 2004-08-12 15:54:43.000000000 -0500 -@@ -689,6 +689,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN gcc-3.4.1-dist/ltconfig gcc-3.4.1/ltconfig ---- gcc-3.4.1-dist/ltconfig 2004-03-05 15:05:41.000000000 -0600 -+++ gcc-3.4.1/ltconfig 2004-08-12 15:55:48.000000000 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1262,6 +1263,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no diff --git a/openwrt/toolchain/gcc/3.4.4/200-uclibc-locale.patch b/openwrt/toolchain/gcc/3.4.4/200-uclibc-locale.patch deleted file mode 100644 index 3fc4900b06..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/200-uclibc-locale.patch +++ /dev/null @@ -1,3246 +0,0 @@ -diff -urN gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 gcc-3.4.2/libstdc++-v3/acinclude.m4 ---- gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 2004-07-15 12:42:45.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/acinclude.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -996,7 +996,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1012,6 +1012,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1138,6 +1141,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 gcc-3.4.2/libstdc++-v3/aclocal.m4 ---- gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 2004-08-13 15:44:03.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/aclocal.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -1025,6 +1025,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1151,6 +1154,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,59 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h 2004-09-10 10:48:08.000000000 -0500 -@@ -0,0 +1,115 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, const int __size, const char* __fmt, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = 0; -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,698 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ ; -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,183 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = strlen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = strlen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_S_get_c_locale()); -+#endif -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_out[__i]); -+ _M_data->_M_atoms_out[__i] = btowc(uc); -+ } -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_in[__j]); -+ _M_data->_M_atoms_in[__j] = btowc(uc); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = wcslen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = wcslen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc 2004-09-10 10:48:00.000000000 -0500 -@@ -0,0 +1,356 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_FMT, __cloc)); -+ _M_data->_M_date_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_FMT, __cloc)); -+ _M_data->_M_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT, __cloc)); -+ _M_data->_M_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_T_FMT, __cloc)); -+ _M_data->_M_date_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_T_FMT, __cloc)); -+ _M_data->_M_date_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc)); -+ _M_data->_M_am = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WAM_STR, __cloc)); -+ _M_data->_M_pm = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WPM_STR, __cloc)); -+ _M_data->_M_am_pm_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc)); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_1, __cloc)); -+ _M_data->_M_day2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_2, __cloc)); -+ _M_data->_M_day3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_3, __cloc)); -+ _M_data->_M_day4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_4, __cloc)); -+ _M_data->_M_day5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_5, __cloc)); -+ _M_data->_M_day6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_6, __cloc)); -+ _M_data->_M_day7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_7, __cloc)); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_1, __cloc)); -+ _M_data->_M_aday2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_2, __cloc)); -+ _M_data->_M_aday3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_3, __cloc)); -+ _M_data->_M_aday4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_4, __cloc)); -+ _M_data->_M_aday5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_5, __cloc)); -+ _M_data->_M_aday6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_6, __cloc)); -+ _M_data->_M_aday7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_7, __cloc)); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_1, __cloc)); -+ _M_data->_M_month02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_2, __cloc)); -+ _M_data->_M_month03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_3, __cloc)); -+ _M_data->_M_month04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_4, __cloc)); -+ _M_data->_M_month05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_5, __cloc)); -+ _M_data->_M_month06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_6, __cloc)); -+ _M_data->_M_month07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_7, __cloc)); -+ _M_data->_M_month08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_8, __cloc)); -+ _M_data->_M_month09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_9, __cloc)); -+ _M_data->_M_month10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_10, __cloc)); -+ _M_data->_M_month11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_11, __cloc)); -+ _M_data->_M_month12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_12, __cloc)); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_1, __cloc)); -+ _M_data->_M_amonth02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_2, __cloc)); -+ _M_data->_M_amonth03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_3, __cloc)); -+ _M_data->_M_amonth04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_4, __cloc)); -+ _M_data->_M_amonth05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_5, __cloc)); -+ _M_data->_M_amonth06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_6, __cloc)); -+ _M_data->_M_amonth07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_7, __cloc)); -+ _M_data->_M_amonth08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_8, __cloc)); -+ _M_data->_M_amonth09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_9, __cloc)); -+ _M_data->_M_amonth10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_10, __cloc)); -+ _M_data->_M_amonth11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_11, __cloc)); -+ _M_data->_M_amonth12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_12, __cloc)); -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,58 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure gcc-3.4.2/libstdc++-v3/configure ---- gcc-3.4.2-dist/libstdc++-v3/configure 2004-08-13 15:44:04.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure 2004-09-10 10:47:40.000000000 -0500 -@@ -3878,6 +3878,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5545,6 +5550,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ xlinux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" -@@ -5759,6 +5767,77 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure.host gcc-3.4.2/libstdc++-v3/configure.host ---- gcc-3.4.2-dist/libstdc++-v3/configure.host 2004-08-27 14:52:30.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure.host 2004-09-10 10:47:40.000000000 -0500 -@@ -217,6 +217,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 gcc-3.4.2/libstdc++-v3/crossconfig.m4 ---- gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 2004-07-06 20:23:49.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/crossconfig.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -138,6 +138,99 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!]) -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -152,7 +245,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:52:12.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/3.4.4/300-libstdc++-pic.patch b/openwrt/toolchain/gcc/3.4.4/300-libstdc++-pic.patch deleted file mode 100644 index c030ba6205..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/300-libstdc++-pic.patch +++ /dev/null @@ -1,47 +0,0 @@ -# DP: Build and install libstdc++_pic.a library. - ---- gcc/libstdc++-v3/src/Makefile.am~ 2003-02-28 09:21:05.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.am 2003-02-28 09:28:50.000000000 +0100 -@@ -224,6 +224,10 @@ - @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@ - - -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Added bits to build debug library. - if GLIBCPP_BUILD_DEBUG - all-local: build_debug - ---- gcc/libstdc++-v3/src/Makefile.in~ 2004-02-21 09:55:48.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.in 2004-02-21 09:59:34.000000000 +0100 -@@ -585,7 +585,7 @@ - - install-data-am: install-data-local - --install-exec-am: install-toolexeclibLTLIBRARIES -+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local - - install-info: install-info-am - -@@ -618,6 +618,7 @@ - distclean-tags distdir dvi dvi-am info info-am install \ - install-am install-data install-data-am install-data-local \ - install-exec install-exec-am install-info install-info-am \ -+ install-exec-local \ - install-man install-strip install-toolexeclibLTLIBRARIES \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ -@@ -707,6 +708,11 @@ - install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) -+ -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/openwrt/toolchain/gcc/3.4.4/601-gcc34-arm-ldm.patch b/openwrt/toolchain/gcc/3.4.4/601-gcc34-arm-ldm.patch deleted file mode 100644 index 142052fdf0..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/601-gcc34-arm-ldm.patch +++ /dev/null @@ -1,119 +0,0 @@ ---- gcc-3.4.0/gcc/config/arm/arm.c.arm-ldm 2004-02-27 09:51:05.000000000 -0500 -+++ gcc-3.4.0/gcc/config/arm/arm.c 2004-04-24 18:16:25.000000000 -0400 -@@ -8520,6 +8520,26 @@ - return_used_this_function = 0; - } - -+/* Return the number (counting from 0) of -+ the least significant set bit in MASK. */ -+ -+#ifdef __GNUC__ -+inline -+#endif -+static int -+number_of_first_bit_set (mask) -+ int mask; -+{ -+ int bit; -+ -+ for (bit = 0; -+ (mask & (1 << bit)) == 0; -+ ++bit) -+ continue; -+ -+ return bit; -+} -+ - const char * - arm_output_epilogue (rtx sibling) - { -@@ -8753,27 +8773,47 @@ - saved_regs_mask |= (1 << PC_REGNUM); - } - -- /* Load the registers off the stack. If we only have one register -- to load use the LDR instruction - it is faster. */ -- if (saved_regs_mask == (1 << LR_REGNUM)) -- { -- /* The exception handler ignores the LR, so we do -- not really need to load it off the stack. */ -- if (eh_ofs) -- asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -- else -- asm_fprintf (f, "\tldr\t%r, [%r], #4\n", LR_REGNUM, SP_REGNUM); -- } -- else if (saved_regs_mask) -+ if (saved_regs_mask) - { -- if (saved_regs_mask & (1 << SP_REGNUM)) -- /* Note - write back to the stack register is not enabled -- (ie "ldmfd sp!..."). We know that the stack pointer is -- in the list of registers and if we add writeback the -- instruction becomes UNPREDICTABLE. */ -- print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ /* Load the registers off the stack. If we only have one register -+ to load use the LDR instruction - it is faster. */ -+ if (bit_count (saved_regs_mask) == 1) -+ { -+ int reg = number_of_first_bit_set (saved_regs_mask); -+ -+ switch (reg) -+ { -+ case SP_REGNUM: -+ /* Mustn't use base writeback when loading SP. */ -+ asm_fprintf (f, "\tldr\t%r, [%r]\n", SP_REGNUM, SP_REGNUM); -+ break; -+ -+ case LR_REGNUM: -+ if (eh_ofs) -+ { -+ /* The exception handler ignores the LR, so we do -+ not really need to load it off the stack. */ -+ asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -+ break; -+ } -+ /* else fall through */ -+ -+ default: -+ asm_fprintf (f, "\tldr\t%r, [%r], #4\n", reg, SP_REGNUM); -+ break; -+ } -+ } - else -- print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ { -+ if (saved_regs_mask & (1 << SP_REGNUM)) -+ /* Note - write back to the stack register is not enabled -+ (ie "ldmfd sp!..."). We know that the stack pointer is -+ in the list of registers and if we add writeback the -+ instruction becomes UNPREDICTABLE. */ -+ print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ else -+ print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ } - } - - if (current_function_pretend_args_size) -@@ -11401,22 +11441,6 @@ - } - } - --/* Return the number (counting from 0) of -- the least significant set bit in MASK. */ -- --inline static int --number_of_first_bit_set (int mask) --{ -- int bit; -- -- for (bit = 0; -- (mask & (1 << bit)) == 0; -- ++bit) -- continue; -- -- return bit; --} -- - /* Generate code to return from a thumb function. - If 'reg_containing_return_addr' is -1, then the return address is - actually on the stack, at the stack pointer. */ diff --git a/openwrt/toolchain/gcc/3.4.4/602-sdk-libstdc++-includes.patch b/openwrt/toolchain/gcc/3.4.4/602-sdk-libstdc++-includes.patch deleted file mode 100644 index 4377c2143b..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/602-sdk-libstdc++-includes.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- gcc-3.4.1/libstdc++-v3/libmath/Makefile.am~ 2003-08-27 22:29:42.000000000 +0100 -+++ gcc-3.4.1/libstdc++-v3/libmath/Makefile.am 2004-07-22 16:41:45.152130128 +0100 -@@ -32,7 +32,7 @@ - - libmath_la_SOURCES = stubs.c - --AM_CPPFLAGS = $(CANADIAN_INCLUDES) -+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include - - # Only compiling "C" sources in this directory. - LIBTOOL = @LIBTOOL@ --tag CC ---- gcc-3.4.1/libstdc++-v3/fragment.am.old 2004-07-22 18:24:58.024083656 +0100 -+++ gcc-3.4.1/libstdc++-v3/fragment.am 2004-07-22 18:24:59.019932264 +0100 -@@ -18,7 +18,7 @@ - $(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once - - # -I/-D flags to pass when compiling. --AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include - - - diff --git a/openwrt/toolchain/gcc/3.4.4/700-pr15068-fix.patch b/openwrt/toolchain/gcc/3.4.4/700-pr15068-fix.patch deleted file mode 100644 index 2977765c5f..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/700-pr15068-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -See http://gcc.gnu.org/PR15068 - -Fixes error - -../sysdeps/generic/s_fmax.c: In function `__fmax': -../sysdeps/generic/s_fmax.c:28: internal compiler error: in elim_reg_cond, at flow.c:3257 -Please submit a full bug report, -with preprocessed source if appropriate. -See <URL:http://gcc.gnu.org/bugs.html> for instructions. -make[2]: *** [/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/build-glibc/math/s_fmax.o] Error 1 -make[2]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822/math' -make[1]: *** [math/others] Error 2 -make[1]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822' -make: *** [all] Error 2 - -[ rediffed against gcc-3.4.1, with elbow grease, ending up with same thing as -http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.563.4.2&r2=1.563.4.3 ] - ---- gcc-3.4.1/gcc/flow.c.old 2004-02-27 19:39:19.000000000 -0800 -+++ gcc-3.4.1/gcc/flow.c 2004-08-26 07:29:46.000000000 -0700 -@@ -1878,6 +1878,7 @@ - rtx set_src = SET_SRC (pc_set (BB_END (bb))); - rtx cond_true = XEXP (set_src, 0); - rtx reg = XEXP (cond_true, 0); -+ enum rtx_code inv_cond; - - if (GET_CODE (reg) == SUBREG) - reg = SUBREG_REG (reg); -@@ -1886,11 +1887,13 @@ - in the form of a comparison of a register against zero. - If the condition is more complex than that, then it is safe - not to record any information. */ -- if (GET_CODE (reg) == REG -+ inv_cond = reversed_comparison_code (cond_true, BB_END (bb)); -+ if (inv_cond != UNKNOWN -+ && GET_CODE (reg) == REG - && XEXP (cond_true, 1) == const0_rtx) - { - rtx cond_false -- = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)), -+ = gen_rtx_fmt_ee (inv_cond, - GET_MODE (cond_true), XEXP (cond_true, 0), - XEXP (cond_true, 1)); - if (GET_CODE (XEXP (set_src, 1)) == PC) diff --git a/openwrt/toolchain/gcc/3.4.4/800-arm-bigendian.patch b/openwrt/toolchain/gcc/3.4.4/800-arm-bigendian.patch deleted file mode 100644 index 0bae8f474c..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/800-arm-bigendian.patch +++ /dev/null @@ -1,70 +0,0 @@ -By Lennert Buytenhek <buytenh@wantstofly.org> -Adds support for arm*b-linux* big-endian ARM targets - -See http://gcc.gnu.org/PR16350 - -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-16 15:43:40.000000000 -0500 -@@ -30,17 +30,34 @@ - /* Do not assume anything about header files. */ - #define NO_IMPLICIT_EXTERN_C - -+/* -+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* -+ * (big endian) configurations. -+ */ -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END -+#define TARGET_ENDIAN_OPTION "mbig-endian" -+#define TARGET_LINKER_EMULATION "armelfb_linux" -+#else -+#define TARGET_ENDIAN_DEFAULT 0 -+#define TARGET_ENDIAN_OPTION "mlittle-endian" -+#define TARGET_LINKER_EMULATION "armelf_linux" -+#endif -+ - /* Default is to use APCS-32 mode. */ - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_APCS_32 | \ -+ ARM_FLAG_MMU_TRAPS | \ -+ TARGET_ENDIAN_DEFAULT ) - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - --#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" -+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "mhard-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" } - - #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__" - -@@ -101,7 +118,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - #endif - -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-16 16:01:25.000000000 -0500 -@@ -672,6 +672,11 @@ - ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/3.4.4/810-arm-bigendian-uclibc.patch b/openwrt/toolchain/gcc/3.4.4/810-arm-bigendian-uclibc.patch deleted file mode 100644 index a4d87e2317..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/810-arm-bigendian-uclibc.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-08-16 16:08:18.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-16 16:06:24.000000000 -0500 -@@ -107,7 +107,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - #else - #define LINK_SPEC "%{h*} %{version:-v} \ -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-08-16 16:08:18.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-16 16:03:25.000000000 -0500 -@@ -666,6 +666,11 @@ - ;; - arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/3.4.4/830-gcc-bug-num-22167.patch b/openwrt/toolchain/gcc/3.4.4/830-gcc-bug-num-22167.patch deleted file mode 100644 index c7419af90a..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/830-gcc-bug-num-22167.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: gcc/gcse.c -=================================================================== -RCS file: /cvs/gcc/gcc/gcc/gcse.c,v -retrieving revision 1.288.2.9 -diff -u -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.288.2.9 gcse.c ---- gcc/gcc/gcse.c 30 Oct 2004 18:02:53 -0000 1.288.2.9 -+++ gcc/gcc/gcse.c 14 Jul 2005 13:19:57 -0000 -@@ -6445,7 +6445,7 @@ hoist_code (void) - insn_inserted_p = 0; - - /* These tests should be the same as the tests above. */ -- if (TEST_BIT (hoist_vbeout[bb->index], i)) -+ if (TEST_BIT (hoist_exprs[bb->index], i)) - { - /* We've found a potentially hoistable expression, now - we look at every block BB dominates to see if it diff --git a/openwrt/toolchain/gcc/3.4.4/arm-softfloat.patch.conditional b/openwrt/toolchain/gcc/3.4.4/arm-softfloat.patch.conditional deleted file mode 100644 index 19d1b90dac..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/arm-softfloat.patch.conditional +++ /dev/null @@ -1,270 +0,0 @@ -Note... modified my mjn3 to not conflict with the big endian arm patch. -Warning!!! Only the linux target is aware of TARGET_ENDIAN_DEFAULT. -Also changed - #define SUBTARGET_EXTRA_ASM_SPEC "\ - %{!mcpu=*:-mcpu=xscale} \ - %{mhard-float:-mfpu=fpa} \ - %{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" -to - #define SUBTARGET_EXTRA_ASM_SPEC "\ - %{mhard-float:-mfpu=fpa} \ - %{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" -in gcc/config/arm/linux-elf.h. -# -# Submitted: -# -# Dimitry Andric <dimitry@andric.com>, 2004-05-01 -# -# Description: -# -# Nicholas Pitre released this patch for gcc soft-float support here: -# http://lists.arm.linux.org.uk/pipermail/linux-arm/2003-October/006436.html -# -# This version has been adapted to work with gcc 3.4.0. -# -# The original patch doesn't distinguish between softfpa and softvfp modes -# in the way Nicholas Pitre probably meant. His description is: -# -# "Default is to use APCS-32 mode with soft-vfp. The old Linux default for -# floats can be achieved with -mhard-float or with the configure -# --with-float=hard option. If -msoft-float or --with-float=soft is used then -# software float support will be used just like the default but with the legacy -# big endian word ordering for double float representation instead." -# -# Which means the following: -# -# * If you compile without -mhard-float or -msoft-float, you should get -# software floating point, using the VFP format. The produced object file -# should have these flags in its header: -# -# private flags = 600: [APCS-32] [VFP float format] [software FP] -# -# * If you compile with -mhard-float, you should get hardware floating point, -# which always uses the FPA format. Object file header flags should be: -# -# private flags = 0: [APCS-32] [FPA float format] -# -# * If you compile with -msoft-float, you should get software floating point, -# using the FPA format. This is done for compatibility reasons with many -# existing distributions. Object file header flags should be: -# -# private flags = 200: [APCS-32] [FPA float format] [software FP] -# -# The original patch from Nicholas Pitre contained the following constructs: -# -# #define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -# %{mhard-float:-mfpu=fpa} \ -# %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}" -# -# However, gcc doesn't accept this ";:" notation, used in the 3rd line. This -# is probably the reason Robert Schwebel modified it to: -# -# #define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -# %{mhard-float:-mfpu=fpa} \ -# %{!mhard-float: %{msoft-float:-mfpu=softfpa -mfpu=softvfp}}" -# -# But this causes the following behaviour: -# -# * If you compile without -mhard-float or -msoft-float, the compiler generates -# software floating point instructions, but *nothing* is passed to the -# assembler, which results in an object file which has flags: -# -# private flags = 0: [APCS-32] [FPA float format] -# -# This is not correct! -# -# * If you compile with -mhard-float, the compiler generates hardware floating -# point instructions, and passes "-mfpu=fpa" to the assembler, which results -# in an object file which has the same flags as in the previous item, but now -# those *are* correct. -# -# * If you compile with -msoft-float, the compiler generates software floating -# point instructions, and passes "-mfpu=softfpa -mfpu=softvfp" (in that -# order) to the assembler, which results in an object file with flags: -# -# private flags = 600: [APCS-32] [VFP float format] [software FP] -# -# This is not correct, because the last "-mfpu=" option on the assembler -# command line determines the actual FPU convention used (which should be FPA -# in this case). -# -# Therefore, I modified this patch to get the desired behaviour. Every -# instance of the notation: -# -# %{msoft-float:-mfpu=softfpa -mfpu=softvfp} -# -# was changed to: -# -# %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp} -# -# I also did the following: -# -# * Modified all TARGET_DEFAULT macros I could find to include ARM_FLAG_VFP, to -# be consistent with Nicholas' original patch. -# * Removed any "msoft-float" or "mhard-float" from all MULTILIB_DEFAULTS -# macros I could find. I think that if you compile without any options, you -# would like to get the defaults. :) -# * Removed the extra -lfloat option from LIBGCC_SPEC, since it isn't needed -# anymore. (The required functions are now in libgcc.) - -diff -urN gcc-3.4.1-old/gcc/config/arm/coff.h gcc-3.4.1/gcc/config/arm/coff.h ---- gcc-3.4.1-old/gcc/config/arm/coff.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/coff.h 2004-09-02 21:51:15.000000000 -0500 -@@ -31,11 +31,16 @@ - #define TARGET_VERSION fputs (" (ARM/coff)", stderr) - - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork" } - #endif - - /* This is COFF, but prefer stabs. */ -diff -urN gcc-3.4.1-old/gcc/config/arm/elf.h gcc-3.4.1/gcc/config/arm/elf.h ---- gcc-3.4.1-old/gcc/config/arm/elf.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -46,7 +46,9 @@ - - #ifndef SUBTARGET_ASM_FLOAT_SPEC - #define SUBTARGET_ASM_FLOAT_SPEC "\ --%{mapcs-float:-mfloat} %{msoft-float:-mfpu=softfpa}" -+%{mapcs-float:-mfloat} \ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - #endif - - #ifndef ASM_SPEC -@@ -106,12 +108,17 @@ - #endif - - #ifndef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - #endif - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" } -+ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" } - #endif - - #define TARGET_ASM_FILE_START_APP_OFF true -diff -urN gcc-3.4.1-old/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-old/gcc/config/arm/linux-elf.h 2004-09-02 21:50:52.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-09-02 22:00:49.000000000 -0500 -@@ -44,12 +44,26 @@ - #define TARGET_LINKER_EMULATION "armelf_linux" - #endif - --/* Default is to use APCS-32 mode. */ -+/* -+ * Default is to use APCS-32 mode with soft-vfp. -+ * The old Linux default for floats can be achieved with -mhard-float -+ * or with the configure --with-float=hard option. -+ * If -msoft-float or --with-float=soft is used then software float -+ * support will be used just like the default but with the legacy -+ * big endian word ordering for double float representation instead. -+ */ - #undef TARGET_DEFAULT --#define TARGET_DEFAULT \ -- ( ARM_FLAG_APCS_32 | \ -- ARM_FLAG_MMU_TRAPS | \ -- TARGET_ENDIAN_DEFAULT ) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_SOFT_FLOAT \ -+ | TARGET_ENDIAN_DEFAULT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_MMU_TRAPS ) -+ -+#undef SUBTARGET_EXTRA_ASM_SPEC -+#define SUBTARGET_EXTRA_ASM_SPEC "\ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - -@@ -57,7 +71,7 @@ - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mapcs-32", "mno-thumb-interwork" } - - #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__" - -@@ -72,7 +86,7 @@ - %{shared:-lc} \ - %{!shared:%{profile:-lc_p}%{!profile:-lc}}" - --#define LIBGCC_SPEC "%{msoft-float:-lfloat} -lgcc" -+#define LIBGCC_SPEC "-lgcc" - - /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add - the GNU/Linux magical crtbegin.o file (see crtstuff.c) which -diff -urN gcc-3.4.1-old/gcc/config/arm/t-linux gcc-3.4.1/gcc/config/arm/t-linux ---- gcc-3.4.1-old/gcc/config/arm/t-linux 2003-09-20 16:09:07.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/t-linux 2004-09-02 21:51:15.000000000 -0500 -@@ -4,7 +4,10 @@ - LIBGCC2_DEBUG_CFLAGS = -g0 - - LIB1ASMSRC = arm/lib1funcs.asm --LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx -+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \ -+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ -+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ -+ _fixsfsi _fixunssfsi - - # MULTILIB_OPTIONS = mhard-float/msoft-float - # MULTILIB_DIRNAMES = hard-float soft-float -diff -urN gcc-3.4.1-old/gcc/config/arm/unknown-elf.h gcc-3.4.1/gcc/config/arm/unknown-elf.h ---- gcc-3.4.1-old/gcc/config/arm/unknown-elf.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/unknown-elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -30,7 +30,12 @@ - - /* Default to using APCS-32 and software floating point. */ - #ifndef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - #endif - - /* Now we define the strings used to build the spec file. */ -diff -urN gcc-3.4.1-old/gcc/config/arm/xscale-elf.h gcc-3.4.1/gcc/config/arm/xscale-elf.h ---- gcc-3.4.1-old/gcc/config/arm/xscale-elf.h 2003-07-01 18:26:43.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/xscale-elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -49,11 +49,12 @@ - endian, regardless of the endian-ness of the memory - system. */ - --#define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -- %{mhard-float:-mfpu=fpa} \ -- %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}" -+#define SUBTARGET_EXTRA_ASM_SPEC "\ -+%{!mcpu=*:-mcpu=xscale} \ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "mlittle-endian", "mno-thumb-interwork", "marm", "msoft-float" } -+ { "mlittle-endian", "mno-thumb-interwork", "marm" } - #endif diff --git a/openwrt/toolchain/gcc/3.4.4/static-libgcc.patch.conditional b/openwrt/toolchain/gcc/3.4.4/static-libgcc.patch.conditional deleted file mode 100644 index c8c1d849cd..0000000000 --- a/openwrt/toolchain/gcc/3.4.4/static-libgcc.patch.conditional +++ /dev/null @@ -1,11 +0,0 @@ ---- specs~ 2005-11-21 17:22:08.000000000 +0100 -+++ specs 2005-11-21 17:22:08.000000000 +0100 -@@ -51,7 +51,7 @@ - %{shared: -lc} %{!static:-rpath-link %R/lib:%R/usr/lib} %{!shared: %{pthread:-lpthread} %{profile:-lc_p} %{!profile: -lc}} - - *libgcc: --%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s%M --no-as-needed}%{shared-libgcc:-lgcc_s%M%{!shared: -lgcc}}}} -+%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc -lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:%{shared-libgcc:-lgcc_s%M}%{!shared-libgcc:-lgcc}}}} - - *startfile: - %{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} diff --git a/openwrt/toolchain/gcc/3.4.5/100-uclibc-conf.patch b/openwrt/toolchain/gcc/3.4.5/100-uclibc-conf.patch deleted file mode 100644 index 6bc73a427a..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/100-uclibc-conf.patch +++ /dev/null @@ -1,462 +0,0 @@ ---- gcc-3.4.1/gcc/config.gcc -+++ gcc-3.4.1/gcc/config.gcc -@@ -2310,10 +2310,16 @@ - *) - echo "*** Configuration ${target} not supported" 1>&2 - exit 1 - ;; - esac -+ -+# Rather than hook into each target, just do it after all the linux -+# targets have been processed -+case ${target} in -+*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" -+esac - - # Support for --with-cpu and related options (and a few unrelated options, - # too). - case ${with_cpu} in - yes | no) ---- gcc-3.4.4/gcc/config/alpha/linux-elf.h -+++ gcc-3.4.4/gcc/config/alpha/linux-elf.h -@@ -27,7 +27,11 @@ - #define SUBTARGET_EXTRA_SPECS \ - { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else - #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - - #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ - %{O*:-O3} %{!O*:-O1} \ ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-01-31 00:18:11.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-12 15:54:42.000000000 -0500 -@@ -80,14 +80,19 @@ - #define ENDFILE_SPEC \ - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s" - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "%{h*} %{version:-v} \ - %{b} %{Wl,*:%*} \ - %{static:-Bstatic} \ - %{shared:-shared} \ - %{symbolic:-Bsymbolic} \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "} \ - -X \ - %{mbig-endian:-EB}" \ - SUBTARGET_EXTRA_LINK_SPEC ---- gcc-3.4.1-dist/gcc/config/cris/linux.h 2003-11-28 21:08:09.000000000 -0600 -+++ gcc-3.4.1/gcc/config/cris/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -79,6 +79,25 @@ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -93,6 +112,8 @@ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - ---- gcc-3.4.1-dist/gcc/config/i386/linux.h 2003-11-28 21:08:10.000000000 -0600 -+++ gcc-3.4.1/gcc/config/i386/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -110,22 +110,21 @@ - - #undef LINK_SPEC - #ifdef USE_GNULIBC_1 --#define LINK_SPEC "-m elf_i386 %{shared:-shared} \ -- %{!shared: \ -- %{!ibcs: \ -- %{!static: \ -- %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \ -- %{static:-static}}}" -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.1" -+#else -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" - #else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif -+#endif - #define LINK_SPEC "-m elf_i386 %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" --#endif - - /* A C statement (sans semicolon) to output to the stdio stream - FILE the assembler definition of uninitialized global DECL named ---- gcc-3.4.4/gcc/config/i386/linux64.h -+++ gcc-3.4.4/gcc/config/i386/linux64.h -@@ -54,14 +54,21 @@ - When the -shared link option is used a final link is not being - done. */ - -+#ifdef USE_UCLIBC -+#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \ -+ %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \ -+ %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \ - %{static:-static}}" - - #define MULTILIB_DEFAULTS { "m64" } ---- gcc-3.4.4/gcc/config/ia64/linux.h -+++ gcc-3.4.4/gcc/config/ia64/linux.h -@@ -37,13 +37,18 @@ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - ---- gcc-3.4.4/gcc/config/m68k/linux.h -+++ gcc-3.4.4/gcc/config/m68k/linux.h -@@ -131,12 +131,17 @@ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "-m m68kelf %{shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static}}" - - /* For compatibility with linux/a.out */ ---- gcc-3.4.1-dist/gcc/config/mips/linux.h 2004-06-15 20:42:24.000000000 -0500 -+++ gcc-3.4.1/gcc/config/mips/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -109,14 +109,19 @@ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - - #undef SUBTARGET_ASM_SPEC ---- gcc-3.4.4/gcc/config/pa/pa-linux.h -+++ gcc-3.4.4/gcc/config/pa/pa-linux.h -@@ -77,13 +77,18 @@ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - /* glibc's profiling functions don't need gcc to allocate counters. */ ---- gcc-3.4.1-dist/gcc/config/rs6000/linux.h 2004-02-25 09:11:19.000000000 -0600 -+++ gcc-3.4.1/gcc/config/rs6000/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -69,7 +69,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" ---- gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h 2004-06-10 01:39:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/rs6000/sysv4.h 2004-08-12 15:54:43.000000000 -0500 -@@ -947,6 +947,7 @@ - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1125,6 +1126,10 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1291,6 +1296,7 @@ - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ ---- gcc-3.4.4/gcc/config/s390/linux.h -+++ gcc-3.4.4/gcc/config/s390/linux.h -@@ -77,6 +77,13 @@ - #define MULTILIB_DEFAULTS { "m31" } - #endif - -+#ifdef USE_UCLIBC -+#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC \ - "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ -@@ -86,8 +93,8 @@ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker: \ -- %{m31:-dynamic-linker /lib/ld.so.1} \ -- %{m64:-dynamic-linker /lib/ld64.so.1}}}}" -+ %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \ -+ %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}" - - - #define TARGET_ASM_FILE_END file_end_indicate_exec_stack ---- gcc-3.4.1-dist/gcc/config/sh/linux.h 2004-01-11 20:29:13.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -73,11 +73,16 @@ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}" - - #undef LIB_SPEC ---- gcc-3.4.4/gcc/config/sparc/linux.h -+++ gcc-3.4.4/gcc/config/sparc/linux.h -@@ -162,13 +162,18 @@ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \ - %{static:-static}}}" - #else -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!mno-relax:%{!r:-relax}} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - #endif - ---- gcc-3.4.4/gcc/config/sparc/linux64.h -+++ gcc-3.4.4/gcc/config/sparc/linux64.h -@@ -167,12 +166,17 @@ - { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ - { "link_arch", LINK_ARCH_SPEC }, - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}} \ - " - ---- gcc-3.4.1-dist/libtool.m4 2004-05-18 04:08:37.000000000 -0500 -+++ gcc-3.4.1/libtool.m4 2004-08-12 15:54:43.000000000 -0500 -@@ -689,6 +689,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] ---- gcc-3.4.1-dist/ltconfig 2004-03-05 15:05:41.000000000 -0600 -+++ gcc-3.4.1/ltconfig 2004-08-12 15:55:48.000000000 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1262,6 +1263,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no ---- gcc-3.4.1-dist/boehm-gc/configure 2004-07-01 14:14:03.000000000 -0500 -+++ gcc-3.4.1/boehm-gc/configure 2004-08-12 16:22:57.000000000 -0500 -@@ -1947,6 +1947,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-3.4.1-dist/boehm-gc/ltconfig 2002-11-20 09:59:06.000000000 -0600 -+++ gcc-3.4.1/boehm-gc/ltconfig 2004-08-12 15:54:42.000000000 -0500 -@@ -1981,6 +1981,23 @@ - fi - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' -+ file_magic_cmd=/usr/bin/file -+ file_magic_test_file=`echo /lib/libuClibc-*.so` -+ -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - version_type=sunos - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then diff --git a/openwrt/toolchain/gcc/3.4.5/200-uclibc-locale.patch b/openwrt/toolchain/gcc/3.4.5/200-uclibc-locale.patch deleted file mode 100644 index a97f22b49a..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/200-uclibc-locale.patch +++ /dev/null @@ -1,3255 +0,0 @@ -diff -urN gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 gcc-3.4.2/libstdc++-v3/acinclude.m4 ---- gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 2004-07-15 12:42:45.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/acinclude.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -996,7 +996,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1012,6 +1012,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1138,6 +1141,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 gcc-3.4.2/libstdc++-v3/aclocal.m4 ---- gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 2004-08-13 15:44:03.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/aclocal.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -1025,6 +1025,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1151,6 +1154,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,59 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h 2004-09-10 10:48:08.000000000 -0500 -@@ -0,0 +1,115 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, const int __size, const char* __fmt, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = 0; -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,698 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ ; -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,183 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = strlen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = strlen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_S_get_c_locale()); -+#endif -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_out[__i]); -+ _M_data->_M_atoms_out[__i] = btowc(uc); -+ } -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_in[__j]); -+ _M_data->_M_atoms_in[__j] = btowc(uc); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = wcslen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = wcslen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc 2004-09-10 10:48:00.000000000 -0500 -@@ -0,0 +1,356 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_FMT, __cloc)); -+ _M_data->_M_date_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_FMT, __cloc)); -+ _M_data->_M_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT, __cloc)); -+ _M_data->_M_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_T_FMT, __cloc)); -+ _M_data->_M_date_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_T_FMT, __cloc)); -+ _M_data->_M_date_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc)); -+ _M_data->_M_am = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WAM_STR, __cloc)); -+ _M_data->_M_pm = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WPM_STR, __cloc)); -+ _M_data->_M_am_pm_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc)); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_1, __cloc)); -+ _M_data->_M_day2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_2, __cloc)); -+ _M_data->_M_day3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_3, __cloc)); -+ _M_data->_M_day4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_4, __cloc)); -+ _M_data->_M_day5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_5, __cloc)); -+ _M_data->_M_day6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_6, __cloc)); -+ _M_data->_M_day7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_7, __cloc)); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_1, __cloc)); -+ _M_data->_M_aday2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_2, __cloc)); -+ _M_data->_M_aday3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_3, __cloc)); -+ _M_data->_M_aday4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_4, __cloc)); -+ _M_data->_M_aday5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_5, __cloc)); -+ _M_data->_M_aday6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_6, __cloc)); -+ _M_data->_M_aday7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_7, __cloc)); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_1, __cloc)); -+ _M_data->_M_month02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_2, __cloc)); -+ _M_data->_M_month03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_3, __cloc)); -+ _M_data->_M_month04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_4, __cloc)); -+ _M_data->_M_month05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_5, __cloc)); -+ _M_data->_M_month06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_6, __cloc)); -+ _M_data->_M_month07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_7, __cloc)); -+ _M_data->_M_month08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_8, __cloc)); -+ _M_data->_M_month09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_9, __cloc)); -+ _M_data->_M_month10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_10, __cloc)); -+ _M_data->_M_month11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_11, __cloc)); -+ _M_data->_M_month12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_12, __cloc)); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_1, __cloc)); -+ _M_data->_M_amonth02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_2, __cloc)); -+ _M_data->_M_amonth03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_3, __cloc)); -+ _M_data->_M_amonth04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_4, __cloc)); -+ _M_data->_M_amonth05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_5, __cloc)); -+ _M_data->_M_amonth06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_6, __cloc)); -+ _M_data->_M_amonth07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_7, __cloc)); -+ _M_data->_M_amonth08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_8, __cloc)); -+ _M_data->_M_amonth09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_9, __cloc)); -+ _M_data->_M_amonth10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_10, __cloc)); -+ _M_data->_M_amonth11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_11, __cloc)); -+ _M_data->_M_amonth12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_12, __cloc)); -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,58 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure gcc-3.4.2/libstdc++-v3/configure ---- gcc-3.4.2-dist/libstdc++-v3/configure 2004-08-13 15:44:04.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure 2004-09-10 10:47:40.000000000 -0500 -@@ -3878,6 +3878,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5479,7 +5479,7 @@ - enableval="$enable_clocale" - - case "$enableval" in -- generic|gnu|ieee_1003.1-2001|yes|no|auto) ;; -+ generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto) ;; - *) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5 - echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;} - { (exit 1); exit 1; }; } ;; -@@ -5545,6 +5550,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ xlinux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" -@@ -5759,6 +5767,77 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure.host gcc-3.4.2/libstdc++-v3/configure.host ---- gcc-3.4.2-dist/libstdc++-v3/configure.host 2004-08-27 14:52:30.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure.host 2004-09-10 10:47:40.000000000 -0500 -@@ -217,6 +217,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 gcc-3.4.2/libstdc++-v3/crossconfig.m4 ---- gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 2004-07-06 20:23:49.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/crossconfig.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -138,6 +138,99 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!]) -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -152,7 +245,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:52:12.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/3.4.5/300-libstdc++-pic.patch b/openwrt/toolchain/gcc/3.4.5/300-libstdc++-pic.patch deleted file mode 100644 index c030ba6205..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/300-libstdc++-pic.patch +++ /dev/null @@ -1,47 +0,0 @@ -# DP: Build and install libstdc++_pic.a library. - ---- gcc/libstdc++-v3/src/Makefile.am~ 2003-02-28 09:21:05.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.am 2003-02-28 09:28:50.000000000 +0100 -@@ -224,6 +224,10 @@ - @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@ - - -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Added bits to build debug library. - if GLIBCPP_BUILD_DEBUG - all-local: build_debug - ---- gcc/libstdc++-v3/src/Makefile.in~ 2004-02-21 09:55:48.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.in 2004-02-21 09:59:34.000000000 +0100 -@@ -585,7 +585,7 @@ - - install-data-am: install-data-local - --install-exec-am: install-toolexeclibLTLIBRARIES -+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local - - install-info: install-info-am - -@@ -618,6 +618,7 @@ - distclean-tags distdir dvi dvi-am info info-am install \ - install-am install-data install-data-am install-data-local \ - install-exec install-exec-am install-info install-info-am \ -+ install-exec-local \ - install-man install-strip install-toolexeclibLTLIBRARIES \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ -@@ -707,6 +708,11 @@ - install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) -+ -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/openwrt/toolchain/gcc/3.4.5/600-gcc34-arm-ldm-peephole.patch b/openwrt/toolchain/gcc/3.4.5/600-gcc34-arm-ldm-peephole.patch deleted file mode 100644 index 0c370502c8..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/600-gcc34-arm-ldm-peephole.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- gcc-3.4.0/gcc/config/arm/arm.md.arm-ldm-peephole 2004-01-13 08:24:37.000000000 -0500 -+++ gcc-3.4.0/gcc/config/arm/arm.md 2004-04-24 18:18:04.000000000 -0400 -@@ -8810,13 +8810,16 @@ - (set_attr "length" "4,8,8")] - ) - -+; Try to convert LDR+LDR+arith into [add+]LDM+arith -+; On XScale, LDM is always slower than two LDRs, so only do this if -+; optimising for size. - (define_insn "*arith_adjacentmem" - [(set (match_operand:SI 0 "s_register_operand" "=r") - (match_operator:SI 1 "shiftable_operator" - [(match_operand:SI 2 "memory_operand" "m") - (match_operand:SI 3 "memory_operand" "m")])) - (clobber (match_scratch:SI 4 "=r"))] -- "TARGET_ARM && adjacent_mem_locations (operands[2], operands[3])" -+ "TARGET_ARM && (!arm_tune_xscale || optimize_size) && adjacent_mem_locations (operands[2], operands[3])" - "* - { - rtx ldm[3]; -@@ -8851,6 +8854,8 @@ - } - if (val1 && val2) - { -+ /* This would be a loss on a Harvard core, but adjacent_mem_locations() -+ will prevent it from happening. */ - rtx ops[3]; - ldm[0] = ops[0] = operands[4]; - ops[1] = XEXP (XEXP (operands[2], 0), 0); ---- gcc-3.4.0/gcc/config/arm/arm.c.arm-ldm-peephole 2004-04-24 18:16:25.000000000 -0400 -+++ gcc-3.4.0/gcc/config/arm/arm.c 2004-04-24 18:18:04.000000000 -0400 -@@ -4838,6 +4841,11 @@ - *load_offset = unsorted_offsets[order[0]]; - } - -+ /* For XScale a two-word LDM is a performance loss, so only do this if -+ size is more important. See comments in arm_gen_load_multiple. */ -+ if (nops == 2 && arm_tune_xscale && !optimize_size) -+ return 0; -+ - if (unsorted_offsets[order[0]] == 0) - return 1; /* ldmia */ - -@@ -5064,6 +5072,11 @@ - *load_offset = unsorted_offsets[order[0]]; - } - -+ /* For XScale a two-word LDM is a performance loss, so only do this if -+ size is more important. See comments in arm_gen_load_multiple. */ -+ if (nops == 2 && arm_tune_xscale && !optimize_size) -+ return 0; -+ - if (unsorted_offsets[order[0]] == 0) - return 1; /* stmia */ - ---- gcc-3.4.0/gcc/genpeep.c.arm-ldm-peephole 2003-07-05 01:27:22.000000000 -0400 -+++ gcc-3.4.0/gcc/genpeep.c 2004-04-24 18:18:04.000000000 -0400 -@@ -381,6 +381,7 @@ - printf ("#include \"recog.h\"\n"); - printf ("#include \"except.h\"\n\n"); - printf ("#include \"function.h\"\n\n"); -+ printf ("#include \"flags.h\"\n\n"); - - printf ("#ifdef HAVE_peephole\n"); - printf ("extern rtx peep_operand[];\n\n"); diff --git a/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm-peephole2.patch b/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm-peephole2.patch deleted file mode 100644 index 27f7c07db9..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm-peephole2.patch +++ /dev/null @@ -1,42 +0,0 @@ -The 30_all_gcc34-arm-ldm-peephole.patch from Debian was conflicting -with the newer 36_all_pr16201-fix.patch, so i cut out the hunk from -it that was causing problems and grabbed an updated version from -upstream cvs. - -Index: gcc/config/arm/arm.c -=================================================================== -RCS file: /cvsroot/gcc/gcc/gcc/config/arm/arm.c,v -retrieving revision 1.432 -retrieving revision 1.433 -diff -u -r1.432 -r1.433 ---- gcc-3.4.4/gcc/config/arm/arm.c 29 Mar 2005 03:00:23 -0000 1.432 -+++ gcc-3.4.4/gcc/config/arm/arm.c 1 Apr 2005 11:02:22 -0000 1.433 -@@ -5139,6 +5139,10 @@ - int - adjacent_mem_locations (rtx a, rtx b) - { -+ /* We don't guarantee to preserve the order of these memory refs. */ -+ if (volatile_refs_p (a) || volatile_refs_p (b)) -+ return 0; -+ - if ((GET_CODE (XEXP (a, 0)) == REG - || (GET_CODE (XEXP (a, 0)) == PLUS - && GET_CODE (XEXP (XEXP (a, 0), 1)) == CONST_INT)) -@@ -5178,6 +5182,17 @@ - return 0; - - val_diff = val1 - val0; -+ -+ if (arm_ld_sched) -+ { -+ /* If the target has load delay slots, then there's no benefit -+ to using an ldm instruction unless the offset is zero and -+ we are optimizing for size. */ -+ return (optimize_size && (REGNO (reg0) == REGNO (reg1)) -+ && (val0 == 0 || val1 == 0 || val0 == 4 || val1 == 4) -+ && (val_diff == 4 || val_diff == -4)); -+ } -+ - return ((REGNO (reg0) == REGNO (reg1)) - && (val_diff == 4 || val_diff == -4)); - } diff --git a/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm.patch b/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm.patch deleted file mode 100644 index 142052fdf0..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/601-gcc34-arm-ldm.patch +++ /dev/null @@ -1,119 +0,0 @@ ---- gcc-3.4.0/gcc/config/arm/arm.c.arm-ldm 2004-02-27 09:51:05.000000000 -0500 -+++ gcc-3.4.0/gcc/config/arm/arm.c 2004-04-24 18:16:25.000000000 -0400 -@@ -8520,6 +8520,26 @@ - return_used_this_function = 0; - } - -+/* Return the number (counting from 0) of -+ the least significant set bit in MASK. */ -+ -+#ifdef __GNUC__ -+inline -+#endif -+static int -+number_of_first_bit_set (mask) -+ int mask; -+{ -+ int bit; -+ -+ for (bit = 0; -+ (mask & (1 << bit)) == 0; -+ ++bit) -+ continue; -+ -+ return bit; -+} -+ - const char * - arm_output_epilogue (rtx sibling) - { -@@ -8753,27 +8773,47 @@ - saved_regs_mask |= (1 << PC_REGNUM); - } - -- /* Load the registers off the stack. If we only have one register -- to load use the LDR instruction - it is faster. */ -- if (saved_regs_mask == (1 << LR_REGNUM)) -- { -- /* The exception handler ignores the LR, so we do -- not really need to load it off the stack. */ -- if (eh_ofs) -- asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -- else -- asm_fprintf (f, "\tldr\t%r, [%r], #4\n", LR_REGNUM, SP_REGNUM); -- } -- else if (saved_regs_mask) -+ if (saved_regs_mask) - { -- if (saved_regs_mask & (1 << SP_REGNUM)) -- /* Note - write back to the stack register is not enabled -- (ie "ldmfd sp!..."). We know that the stack pointer is -- in the list of registers and if we add writeback the -- instruction becomes UNPREDICTABLE. */ -- print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ /* Load the registers off the stack. If we only have one register -+ to load use the LDR instruction - it is faster. */ -+ if (bit_count (saved_regs_mask) == 1) -+ { -+ int reg = number_of_first_bit_set (saved_regs_mask); -+ -+ switch (reg) -+ { -+ case SP_REGNUM: -+ /* Mustn't use base writeback when loading SP. */ -+ asm_fprintf (f, "\tldr\t%r, [%r]\n", SP_REGNUM, SP_REGNUM); -+ break; -+ -+ case LR_REGNUM: -+ if (eh_ofs) -+ { -+ /* The exception handler ignores the LR, so we do -+ not really need to load it off the stack. */ -+ asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -+ break; -+ } -+ /* else fall through */ -+ -+ default: -+ asm_fprintf (f, "\tldr\t%r, [%r], #4\n", reg, SP_REGNUM); -+ break; -+ } -+ } - else -- print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ { -+ if (saved_regs_mask & (1 << SP_REGNUM)) -+ /* Note - write back to the stack register is not enabled -+ (ie "ldmfd sp!..."). We know that the stack pointer is -+ in the list of registers and if we add writeback the -+ instruction becomes UNPREDICTABLE. */ -+ print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ else -+ print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ } - } - - if (current_function_pretend_args_size) -@@ -11401,22 +11441,6 @@ - } - } - --/* Return the number (counting from 0) of -- the least significant set bit in MASK. */ -- --inline static int --number_of_first_bit_set (int mask) --{ -- int bit; -- -- for (bit = 0; -- (mask & (1 << bit)) == 0; -- ++bit) -- continue; -- -- return bit; --} -- - /* Generate code to return from a thumb function. - If 'reg_containing_return_addr' is -1, then the return address is - actually on the stack, at the stack pointer. */ diff --git a/openwrt/toolchain/gcc/3.4.5/602-sdk-libstdc++-includes.patch b/openwrt/toolchain/gcc/3.4.5/602-sdk-libstdc++-includes.patch deleted file mode 100644 index 4377c2143b..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/602-sdk-libstdc++-includes.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- gcc-3.4.1/libstdc++-v3/libmath/Makefile.am~ 2003-08-27 22:29:42.000000000 +0100 -+++ gcc-3.4.1/libstdc++-v3/libmath/Makefile.am 2004-07-22 16:41:45.152130128 +0100 -@@ -32,7 +32,7 @@ - - libmath_la_SOURCES = stubs.c - --AM_CPPFLAGS = $(CANADIAN_INCLUDES) -+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include - - # Only compiling "C" sources in this directory. - LIBTOOL = @LIBTOOL@ --tag CC ---- gcc-3.4.1/libstdc++-v3/fragment.am.old 2004-07-22 18:24:58.024083656 +0100 -+++ gcc-3.4.1/libstdc++-v3/fragment.am 2004-07-22 18:24:59.019932264 +0100 -@@ -18,7 +18,7 @@ - $(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once - - # -I/-D flags to pass when compiling. --AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include - - - diff --git a/openwrt/toolchain/gcc/3.4.5/700-pr15068-fix.patch b/openwrt/toolchain/gcc/3.4.5/700-pr15068-fix.patch deleted file mode 100644 index 2977765c5f..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/700-pr15068-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -See http://gcc.gnu.org/PR15068 - -Fixes error - -../sysdeps/generic/s_fmax.c: In function `__fmax': -../sysdeps/generic/s_fmax.c:28: internal compiler error: in elim_reg_cond, at flow.c:3257 -Please submit a full bug report, -with preprocessed source if appropriate. -See <URL:http://gcc.gnu.org/bugs.html> for instructions. -make[2]: *** [/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/build-glibc/math/s_fmax.o] Error 1 -make[2]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822/math' -make[1]: *** [math/others] Error 2 -make[1]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822' -make: *** [all] Error 2 - -[ rediffed against gcc-3.4.1, with elbow grease, ending up with same thing as -http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.563.4.2&r2=1.563.4.3 ] - ---- gcc-3.4.1/gcc/flow.c.old 2004-02-27 19:39:19.000000000 -0800 -+++ gcc-3.4.1/gcc/flow.c 2004-08-26 07:29:46.000000000 -0700 -@@ -1878,6 +1878,7 @@ - rtx set_src = SET_SRC (pc_set (BB_END (bb))); - rtx cond_true = XEXP (set_src, 0); - rtx reg = XEXP (cond_true, 0); -+ enum rtx_code inv_cond; - - if (GET_CODE (reg) == SUBREG) - reg = SUBREG_REG (reg); -@@ -1886,11 +1887,13 @@ - in the form of a comparison of a register against zero. - If the condition is more complex than that, then it is safe - not to record any information. */ -- if (GET_CODE (reg) == REG -+ inv_cond = reversed_comparison_code (cond_true, BB_END (bb)); -+ if (inv_cond != UNKNOWN -+ && GET_CODE (reg) == REG - && XEXP (cond_true, 1) == const0_rtx) - { - rtx cond_false -- = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)), -+ = gen_rtx_fmt_ee (inv_cond, - GET_MODE (cond_true), XEXP (cond_true, 0), - XEXP (cond_true, 1)); - if (GET_CODE (XEXP (set_src, 1)) == PC) diff --git a/openwrt/toolchain/gcc/3.4.5/71_all_sh-pr16665-fix.patch b/openwrt/toolchain/gcc/3.4.5/71_all_sh-pr16665-fix.patch deleted file mode 100644 index 680bb3978d..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/71_all_sh-pr16665-fix.patch +++ /dev/null @@ -1,43 +0,0 @@ ---- gcc/gcc/config/sh/sh.c -+++ gcc/gcc/config/sh/sh.c -@@ -9106,6 +9106,15 @@ sh_output_mi_thunk (FILE *file, tree thu - } - this = FUNCTION_ARG (cum, Pmode, ptr_type_node, 1); - -+ /* In PIC case, we set PIC register to compute the target address. We -+ can use a scratch register to save and restore the original value -+ except for SHcompact. For SHcompact, use stack. */ -+ if (flag_pic && TARGET_SHCOMPACT) -+ { -+ push (PIC_OFFSET_TABLE_REGNUM); -+ emit_insn (gen_GOTaddr2picreg ()); -+ } -+ - /* For SHcompact, we only have r0 for a scratch register: r1 is the - static chain pointer (even if you can't have nested virtual functions - right now, someone might implement them sometime), and the rest of the -@@ -9188,8 +9197,24 @@ sh_output_mi_thunk (FILE *file, tree thu - assemble_external (function); - TREE_USED (function) = 1; - } -+ /* We can use scratch1 to save and restore the original value of -+ PIC register except for SHcompact. */ -+ if (flag_pic && ! TARGET_SHCOMPACT) -+ { -+ emit_move_insn (scratch1, -+ gen_rtx_REG (Pmode, PIC_OFFSET_TABLE_REGNUM)); -+ emit_insn (gen_GOTaddr2picreg ()); -+ } - funexp = XEXP (DECL_RTL (function), 0); - emit_move_insn (scratch2, funexp); -+ if (flag_pic) -+ { -+ if (! TARGET_SHCOMPACT) -+ emit_move_insn (gen_rtx_REG (Pmode, PIC_OFFSET_TABLE_REGNUM), -+ scratch1); -+ else -+ pop (PIC_OFFSET_TABLE_REGNUM); -+ } - funexp = gen_rtx_MEM (FUNCTION_MODE, scratch2); - sibcall = emit_call_insn (gen_sibcall (funexp, const0_rtx, NULL_RTX)); - SIBLING_CALL_P (sibcall) = 1; diff --git a/openwrt/toolchain/gcc/3.4.5/72_all_sh-no-reorder-blocks.patch b/openwrt/toolchain/gcc/3.4.5/72_all_sh-no-reorder-blocks.patch deleted file mode 100644 index 8b9826831b..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/72_all_sh-no-reorder-blocks.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- g/gcc/config/sh/sh.h -+++ g/gcc/config/sh/sh.h -@@ -422,6 +422,10 @@ - do { \ - if (LEVEL) \ - flag_omit_frame_pointer = -1; \ -+ if (LEVEL <= 2) \ -+ { \ -+ flag_reorder_blocks = 0; \ -+ } \ - if (SIZE) \ - target_flags |= SPACE_BIT; \ - if (TARGET_SHMEDIA && LEVEL > 1) \ diff --git a/openwrt/toolchain/gcc/3.4.5/73_all_sh-pr20617.patch b/openwrt/toolchain/gcc/3.4.5/73_all_sh-pr20617.patch deleted file mode 100644 index 6d8021cc70..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/73_all_sh-pr20617.patch +++ /dev/null @@ -1,28 +0,0 @@ -2005-03-24 J"orn Rennecke <joern.rennecke@st.com> - - Band aid for PR target/20617: - * config/sh/lib1funcs.asm (FUNC, ALIAS): Add .hidden directive. - ---- g/gcc/config/sh/lib1funcs.asm -+++ g/gcc/config/sh/lib1funcs.asm -@@ -37,9 +37,19 @@ Boston, MA 02111-1307, USA. */ - ELF local label prefixes by J"orn Rennecke - amylaar@cygnus.com */ - -+#define ALIAS(X,Y) .global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y) -+ - #ifdef __ELF__ - #define LOCAL(X) .L_##X --#define FUNC(X) .type X,@function -+ -+#if 1 /* ??? The export list mechanism is broken, everything that is not -+ hidden is exported. */ -+#undef FUNC -+#define FUNC(X) .type X,@function; .hidden X -+#undef ALIAS -+#define ALIAS(X,Y) .global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y); .hidden GLOBAL(X) -+#endif -+ - #define ENDFUNC0(X) .Lfe_##X: .size X,.Lfe_##X-X - #define ENDFUNC(X) ENDFUNC0(X) - #else diff --git a/openwrt/toolchain/gcc/3.4.5/800-arm-bigendian.patch b/openwrt/toolchain/gcc/3.4.5/800-arm-bigendian.patch deleted file mode 100644 index 0bae8f474c..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/800-arm-bigendian.patch +++ /dev/null @@ -1,70 +0,0 @@ -By Lennert Buytenhek <buytenh@wantstofly.org> -Adds support for arm*b-linux* big-endian ARM targets - -See http://gcc.gnu.org/PR16350 - -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-16 15:43:40.000000000 -0500 -@@ -30,17 +30,34 @@ - /* Do not assume anything about header files. */ - #define NO_IMPLICIT_EXTERN_C - -+/* -+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* -+ * (big endian) configurations. -+ */ -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END -+#define TARGET_ENDIAN_OPTION "mbig-endian" -+#define TARGET_LINKER_EMULATION "armelfb_linux" -+#else -+#define TARGET_ENDIAN_DEFAULT 0 -+#define TARGET_ENDIAN_OPTION "mlittle-endian" -+#define TARGET_LINKER_EMULATION "armelf_linux" -+#endif -+ - /* Default is to use APCS-32 mode. */ - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_APCS_32 | \ -+ ARM_FLAG_MMU_TRAPS | \ -+ TARGET_ENDIAN_DEFAULT ) - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - --#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" -+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "mhard-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" } - - #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__" - -@@ -101,7 +118,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - #endif - -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-16 16:01:25.000000000 -0500 -@@ -672,6 +672,11 @@ - ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/3.4.5/800-powerpc-libc_stack_end-uclibc.patch b/openwrt/toolchain/gcc/3.4.5/800-powerpc-libc_stack_end-uclibc.patch deleted file mode 100644 index a209470f7a..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/800-powerpc-libc_stack_end-uclibc.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- gcc-3.4.4/gcc/config/rs6000/linux-unwind.h.org 2005-06-23 17:50:34.000000000 -0600 -+++ gcc-3.4.4/gcc/config/rs6000/linux-unwind.h 2005-06-23 17:52:02.000000000 -0600 -@@ -32,6 +32,7 @@ - these structs elsewhere; Many fields are missing, particularly - from the end of the structures. */ - -+#ifndef inhibit_libc - struct gcc_vregs - { - __attribute__ ((vector_size (16))) int vr[32]; -@@ -320,3 +321,4 @@ - \ - goto SUCCESS; \ - } while (0) -+#endif diff --git a/openwrt/toolchain/gcc/3.4.5/static-libgcc.patch.conditional b/openwrt/toolchain/gcc/3.4.5/static-libgcc.patch.conditional deleted file mode 100644 index c8c1d849cd..0000000000 --- a/openwrt/toolchain/gcc/3.4.5/static-libgcc.patch.conditional +++ /dev/null @@ -1,11 +0,0 @@ ---- specs~ 2005-11-21 17:22:08.000000000 +0100 -+++ specs 2005-11-21 17:22:08.000000000 +0100 -@@ -51,7 +51,7 @@ - %{shared: -lc} %{!static:-rpath-link %R/lib:%R/usr/lib} %{!shared: %{pthread:-lpthread} %{profile:-lc_p} %{!profile: -lc}} - - *libgcc: --%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s%M --no-as-needed}%{shared-libgcc:-lgcc_s%M%{!shared: -lgcc}}}} -+%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc -lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:%{shared-libgcc:-lgcc_s%M}%{!shared-libgcc:-lgcc}}}} - - *startfile: - %{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} diff --git a/openwrt/toolchain/gcc/3.4.6/100-uclibc-conf.patch b/openwrt/toolchain/gcc/3.4.6/100-uclibc-conf.patch deleted file mode 100644 index 29e4c802e2..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/100-uclibc-conf.patch +++ /dev/null @@ -1,442 +0,0 @@ -diff -urN gcc-3.4.1-dist/boehm-gc/configure gcc-3.4.1/boehm-gc/configure ---- gcc-3.4.1-dist/boehm-gc/configure 2004-07-01 14:14:03.000000000 -0500 -+++ gcc-3.4.1/boehm-gc/configure 2004-08-12 16:22:57.000000000 -0500 -@@ -1947,6 +1947,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN gcc-3.4.1-dist/boehm-gc/ltconfig gcc-3.4.1/boehm-gc/ltconfig ---- gcc-3.4.1-dist/boehm-gc/ltconfig 2002-11-20 09:59:06.000000000 -0600 -+++ gcc-3.4.1/boehm-gc/ltconfig 2004-08-12 15:54:42.000000000 -0500 -@@ -1981,6 +1981,23 @@ - fi - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' -+ file_magic_cmd=/usr/bin/file -+ file_magic_test_file=`echo /lib/libuClibc-*.so` -+ -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - version_type=sunos - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-01-31 00:18:11.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-12 15:54:42.000000000 -0500 -@@ -81,6 +81,18 @@ - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s" - - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC "%{h*} %{version:-v} \ -+ %{b} %{Wl,*:%*} \ -+ %{static:-Bstatic} \ -+ %{shared:-shared} \ -+ %{symbolic:-Bsymbolic} \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \ -+ -X \ -+ %{mbig-endian:-EB}" \ -+ SUBTARGET_EXTRA_LINK_SPEC -+#else - #define LINK_SPEC "%{h*} %{version:-v} \ - %{b} %{Wl,*:%*} \ - %{static:-Bstatic} \ -@@ -91,6 +103,7 @@ - -X \ - %{mbig-endian:-EB}" \ - SUBTARGET_EXTRA_LINK_SPEC -+#endif - - #define TARGET_OS_CPP_BUILTINS() LINUX_TARGET_OS_CPP_BUILTINS() - -diff -urN gcc-3.4.1-dist/gcc/config/cris/linux.h gcc-3.4.1/gcc/config/cris/linux.h ---- gcc-3.4.1-dist/gcc/config/cris/linux.h 2003-11-28 21:08:09.000000000 -0600 -+++ gcc-3.4.1/gcc/config/cris/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -79,6 +79,25 @@ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -93,6 +112,8 @@ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - -diff -urN gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc gcc-3.4.1/gcc/config/cris/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/cris/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,3 @@ -+T_CFLAGS = -DUSE_UCLIBC -+TARGET_LIBGCC2_CFLAGS += -fPIC -+CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS) -diff -urN gcc-3.4.1-dist/gcc/config/i386/linux.h gcc-3.4.1/gcc/config/i386/linux.h ---- gcc-3.4.1-dist/gcc/config/i386/linux.h 2003-11-28 21:08:10.000000000 -0600 -+++ gcc-3.4.1/gcc/config/i386/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -118,6 +118,15 @@ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \ - %{static:-static}}}" - #else -+#if defined USE_UCLIBC -+#define LINK_SPEC "-m elf_i386 %{shared:-shared} \ -+ %{!shared: \ -+ %{!ibcs: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}}}" -+#else - #define LINK_SPEC "-m elf_i386 %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ -@@ -126,6 +135,7 @@ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}}}" - #endif -+#endif - - /* A C statement (sans semicolon) to output to the stdio stream - FILE the assembler definition of uninitialized global DECL named -diff -urN gcc-3.4.1-dist/gcc/config/mips/linux.h gcc-3.4.1/gcc/config/mips/linux.h ---- gcc-3.4.1-dist/gcc/config/mips/linux.h 2004-06-15 20:42:24.000000000 -0500 -+++ gcc-3.4.1/gcc/config/mips/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -109,6 +109,17 @@ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC \ -+ "%(endian_spec) \ -+ %{shared:-shared} \ -+ %{!shared: \ -+ %{!ibcs: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}}}" -+#else - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ -@@ -118,6 +129,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ - %{static:-static}}}" -+#endif - - #undef SUBTARGET_ASM_SPEC - #define SUBTARGET_ASM_SPEC "\ -diff -urN gcc-3.4.1-dist/gcc/config/rs6000/linux.h gcc-3.4.1/gcc/config/rs6000/linux.h ---- gcc-3.4.1-dist/gcc/config/rs6000/linux.h 2004-02-25 09:11:19.000000000 -0600 -+++ gcc-3.4.1/gcc/config/rs6000/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -61,7 +61,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" -diff -urN gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h gcc-3.4.1/gcc/config/rs6000/sysv4.h ---- gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h 2004-06-10 01:39:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/rs6000/sysv4.h 2004-08-12 15:54:43.000000000 -0500 -@@ -947,6 +947,7 @@ - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1124,6 +1125,10 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1290,6 +1295,7 @@ - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ -diff -urN gcc-3.4.1-dist/gcc/config/sh/linux.h gcc-3.4.1/gcc/config/sh/linux.h ---- gcc-3.4.1-dist/gcc/config/sh/linux.h 2004-01-11 20:29:13.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/linux.h 2004-08-12 15:54:43.000000000 -0500 -@@ -73,12 +73,21 @@ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define SUBTARGET_LINK_SPEC \ -+ "%{shared:-shared} \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}" -+#else - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}" -+#endif - - #undef LIB_SPEC - #define LIB_SPEC \ -diff -urN gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc gcc-3.4.1/gcc/config/sh/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,13 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+TARGET_LIBGCC2_CFLAGS = -fpic -DNO_FPSCR_VALUES -+LIB1ASMFUNCS_CACHE = _ic_invalidate -+ -+LIB2FUNCS_EXTRA= -+ -+MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4 -+MULTILIB_DIRNAMES= -+MULTILIB_MATCHES = -+MULTILIB_EXCEPTIONS= -+ -+EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o -diff -urN gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc gcc-3.4.1/gcc/config/sh/t-sh64-uclibc ---- gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/sh/t-sh64-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,13 @@ -+EXTRA_MULTILIB_PARTS= crt1.o crti.o crtn.o crtbegin.o crtend.o -+ -+LIB1ASMFUNCS = \ -+ _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \ -+ _shcompact_call_trampoline _shcompact_return_trampoline \ -+ _shcompact_incoming_args _ic_invalidate _nested_trampoline \ -+ _push_pop_shmedia_regs \ -+ _udivdi3 _divdi3 _umoddi3 _moddi3 -+ -+MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu -+MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64 -+MULTILIB_MATCHES= -+MULTILIB_EXCEPTIONS= -diff -urN gcc-3.4.1-dist/gcc/config/t-linux-uclibc gcc-3.4.1/gcc/config/t-linux-uclibc ---- gcc-3.4.1-dist/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.1/gcc/config/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500 -@@ -0,0 +1,15 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+# Compile crtbeginS.o and crtendS.o with pic. -+CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC -+# Compile libgcc2.a with pic. -+TARGET_LIBGCC2_CFLAGS = -fPIC -+ -+# Override t-slibgcc-elf-ver to export some libgcc symbols with -+# the symbol versions that glibc used. -+#SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver -+ -+# Use unwind-dw2-fde -+LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \ -+ $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c -+LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-04-21 10:12:35.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-12 15:59:46.000000000 -0500 -@@ -664,6 +664,12 @@ - extra_parts="" - use_collect2=yes - ;; -+arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc -+ tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux" -+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" -+ gnu_ld=yes -+ ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" - tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux" -@@ -725,6 +731,10 @@ - tmake_file="cris/t-cris cris/t-elfmulti" - gas=yes - ;; -+cris-*-linux-uclibc*) -+ tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" -+ tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc" -+ ;; - cris-*-linux*) - tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" - tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux" -@@ -988,6 +998,11 @@ - thread_file='single' - fi - ;; -+i[34567]86-*-linux*uclibc*) # Intel 80386's running GNU/Linux -+ # with ELF format using uClibc -+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h" -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc i386/t-crtstuff" -+ ;; - i[34567]86-*-linux*) # Intel 80386's running GNU/Linux - # with ELF format using glibc 2 - # aka GNU/Linux C library 6 -@@ -1547,6 +1562,16 @@ - gnu_ld=yes - gas=yes - ;; -+mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc -+ tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" -+ case ${target} in -+ mipsisa32*-*) -+ target_cpu_default="MASK_SOFT_FLOAT" -+ tm_defines="MIPS_ISA_DEFAULT=32" -+ ;; -+ esac -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc" -+ ;; - mips*-*-linux*) # Linux MIPS, either endian. - tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" - case ${target} in -@@ -1764,6 +1789,10 @@ - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm" - ;; -+powerpc-*-linux-uclibc*) -+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h" -+ tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm" -+ ;; - powerpc-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm" -@@ -1916,7 +1945,7 @@ - tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h" - ;; - sh-*-linux* | sh[2346lbe]*-*-linux*) -- tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux" -+ tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver" - case ${target} in - sh*be-*-* | sh*eb-*-*) ;; - *) -@@ -1924,9 +1953,17 @@ - tmake_file="${tmake_file} sh/t-le" - ;; - esac -- tmake_file="${tmake_file} sh/t-linux" -+ case ${target} in -+ *-*-linux-uclibc*) tmake_file="${tmake_file} t-linux-uclibc sh/t-linux-uclibc" ;; -+ *) tmake_file="${tmake_file} t-linux sh/t-linux" ;; -+ esac - tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h" - case ${target} in -+ sh64*-*-linux-uclibc*) -+ tmake_file="${tmake_file} sh/t-sh64-uclibc" -+ tm_file="${tm_file} sh/sh64.h" -+ extra_headers="shmedia.h ushmedia.h sshmedia.h" -+ ;; - sh64*) - tmake_file="${tmake_file} sh/t-sh64" - tm_file="${tm_file} sh/sh64.h" -diff -urN gcc-3.4.1-dist/libtool.m4 gcc-3.4.1/libtool.m4 ---- gcc-3.4.1-dist/libtool.m4 2004-05-18 04:08:37.000000000 -0500 -+++ gcc-3.4.1/libtool.m4 2004-08-12 15:54:43.000000000 -0500 -@@ -689,6 +689,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN gcc-3.4.1-dist/ltconfig gcc-3.4.1/ltconfig ---- gcc-3.4.1-dist/ltconfig 2004-03-05 15:05:41.000000000 -0600 -+++ gcc-3.4.1/ltconfig 2004-08-12 15:55:48.000000000 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1262,6 +1263,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no diff --git a/openwrt/toolchain/gcc/3.4.6/200-uclibc-locale.patch b/openwrt/toolchain/gcc/3.4.6/200-uclibc-locale.patch deleted file mode 100644 index 3fc4900b06..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/200-uclibc-locale.patch +++ /dev/null @@ -1,3246 +0,0 @@ -diff -urN gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 gcc-3.4.2/libstdc++-v3/acinclude.m4 ---- gcc-3.4.2-dist/libstdc++-v3/acinclude.m4 2004-07-15 12:42:45.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/acinclude.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -996,7 +996,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1012,6 +1012,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1138,6 +1141,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 gcc-3.4.2/libstdc++-v3/aclocal.m4 ---- gcc-3.4.2-dist/libstdc++-v3/aclocal.m4 2004-08-13 15:44:03.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/aclocal.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -1025,6 +1025,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ x*-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1151,6 +1154,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,59 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/c_locale.h 2004-09-10 10:48:08.000000000 -0500 -@@ -0,0 +1,115 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, const int __size, const char* __fmt, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/collate_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = 0; -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/messages_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,698 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ ; -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,183 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = strlen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = strlen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_S_get_c_locale()); -+#endif -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_out[__i]); -+ _M_data->_M_atoms_out[__i] = btowc(uc); -+ } -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_in[__j]); -+ _M_data->_M_atoms_in[__j] = btowc(uc); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = wcslen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = wcslen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.cc 2004-09-10 10:48:00.000000000 -0500 -@@ -0,0 +1,356 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_FMT, __cloc)); -+ _M_data->_M_date_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_FMT, __cloc)); -+ _M_data->_M_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT, __cloc)); -+ _M_data->_M_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_T_FMT, __cloc)); -+ _M_data->_M_date_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_T_FMT, __cloc)); -+ _M_data->_M_date_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc)); -+ _M_data->_M_am = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WAM_STR, __cloc)); -+ _M_data->_M_pm = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WPM_STR, __cloc)); -+ _M_data->_M_am_pm_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc)); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_1, __cloc)); -+ _M_data->_M_day2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_2, __cloc)); -+ _M_data->_M_day3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_3, __cloc)); -+ _M_data->_M_day4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_4, __cloc)); -+ _M_data->_M_day5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_5, __cloc)); -+ _M_data->_M_day6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_6, __cloc)); -+ _M_data->_M_day7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_7, __cloc)); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_1, __cloc)); -+ _M_data->_M_aday2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_2, __cloc)); -+ _M_data->_M_aday3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_3, __cloc)); -+ _M_data->_M_aday4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_4, __cloc)); -+ _M_data->_M_aday5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_5, __cloc)); -+ _M_data->_M_aday6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_6, __cloc)); -+ _M_data->_M_aday7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_7, __cloc)); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_1, __cloc)); -+ _M_data->_M_month02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_2, __cloc)); -+ _M_data->_M_month03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_3, __cloc)); -+ _M_data->_M_month04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_4, __cloc)); -+ _M_data->_M_month05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_5, __cloc)); -+ _M_data->_M_month06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_6, __cloc)); -+ _M_data->_M_month07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_7, __cloc)); -+ _M_data->_M_month08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_8, __cloc)); -+ _M_data->_M_month09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_9, __cloc)); -+ _M_data->_M_month10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_10, __cloc)); -+ _M_data->_M_month11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_11, __cloc)); -+ _M_data->_M_month12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_12, __cloc)); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_1, __cloc)); -+ _M_data->_M_amonth02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_2, __cloc)); -+ _M_data->_M_amonth03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_3, __cloc)); -+ _M_data->_M_amonth04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_4, __cloc)); -+ _M_data->_M_amonth05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_5, __cloc)); -+ _M_data->_M_amonth06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_6, __cloc)); -+ _M_data->_M_amonth07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_7, __cloc)); -+ _M_data->_M_amonth08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_8, __cloc)); -+ _M_data->_M_amonth09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_9, __cloc)); -+ _M_data->_M_amonth10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_10, __cloc)); -+ _M_data->_M_amonth11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_11, __cloc)); -+ _M_data->_M_amonth12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_12, __cloc)); -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-3.4.2-dist/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/locale/uclibc/time_members.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_base.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,58 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_inline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-3.4.2-dist/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/config/os/uclibc/os_defines.h 2004-09-10 10:47:40.000000000 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure gcc-3.4.2/libstdc++-v3/configure ---- gcc-3.4.2-dist/libstdc++-v3/configure 2004-08-13 15:44:04.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure 2004-09-10 10:47:40.000000000 -0500 -@@ -3878,6 +3878,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5545,6 +5550,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case x${target_os} in -+ xlinux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - xlinux* | xgnu* | xkfreebsd*-gnu | xknetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" -@@ -5759,6 +5767,77 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-3.4.2-dist/libstdc++-v3/configure.host gcc-3.4.2/libstdc++-v3/configure.host ---- gcc-3.4.2-dist/libstdc++-v3/configure.host 2004-08-27 14:52:30.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/configure.host 2004-09-10 10:47:40.000000000 -0500 -@@ -217,6 +217,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 gcc-3.4.2/libstdc++-v3/crossconfig.m4 ---- gcc-3.4.2-dist/libstdc++-v3/crossconfig.m4 2004-07-06 20:23:49.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/crossconfig.m4 2004-09-10 10:47:40.000000000 -0500 -@@ -138,6 +138,99 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!]) -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -152,7 +245,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600 -+++ gcc-3.4.2/libstdc++-v3/include/c_compatibility/wchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-3.4.2-dist/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:52:12.000000000 -0500 -+++ gcc-3.4.2/libstdc++-v3/include/c_std/std_cwchar.h 2004-09-10 10:47:40.000000000 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/3.4.6/300-libstdc++-pic.patch b/openwrt/toolchain/gcc/3.4.6/300-libstdc++-pic.patch deleted file mode 100644 index c030ba6205..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/300-libstdc++-pic.patch +++ /dev/null @@ -1,47 +0,0 @@ -# DP: Build and install libstdc++_pic.a library. - ---- gcc/libstdc++-v3/src/Makefile.am~ 2003-02-28 09:21:05.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.am 2003-02-28 09:28:50.000000000 +0100 -@@ -224,6 +224,10 @@ - @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@ - - -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Added bits to build debug library. - if GLIBCPP_BUILD_DEBUG - all-local: build_debug - ---- gcc/libstdc++-v3/src/Makefile.in~ 2004-02-21 09:55:48.000000000 +0100 -+++ gcc/libstdc++-v3/src/Makefile.in 2004-02-21 09:59:34.000000000 +0100 -@@ -585,7 +585,7 @@ - - install-data-am: install-data-local - --install-exec-am: install-toolexeclibLTLIBRARIES -+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local - - install-info: install-info-am - -@@ -618,6 +618,7 @@ - distclean-tags distdir dvi dvi-am info info-am install \ - install-am install-data install-data-am install-data-local \ - install-exec install-exec-am install-info install-info-am \ -+ install-exec-local \ - install-man install-strip install-toolexeclibLTLIBRARIES \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ -@@ -707,6 +708,11 @@ - install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) -+ -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/openwrt/toolchain/gcc/3.4.6/601-gcc34-arm-ldm.patch b/openwrt/toolchain/gcc/3.4.6/601-gcc34-arm-ldm.patch deleted file mode 100644 index 142052fdf0..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/601-gcc34-arm-ldm.patch +++ /dev/null @@ -1,119 +0,0 @@ ---- gcc-3.4.0/gcc/config/arm/arm.c.arm-ldm 2004-02-27 09:51:05.000000000 -0500 -+++ gcc-3.4.0/gcc/config/arm/arm.c 2004-04-24 18:16:25.000000000 -0400 -@@ -8520,6 +8520,26 @@ - return_used_this_function = 0; - } - -+/* Return the number (counting from 0) of -+ the least significant set bit in MASK. */ -+ -+#ifdef __GNUC__ -+inline -+#endif -+static int -+number_of_first_bit_set (mask) -+ int mask; -+{ -+ int bit; -+ -+ for (bit = 0; -+ (mask & (1 << bit)) == 0; -+ ++bit) -+ continue; -+ -+ return bit; -+} -+ - const char * - arm_output_epilogue (rtx sibling) - { -@@ -8753,27 +8773,47 @@ - saved_regs_mask |= (1 << PC_REGNUM); - } - -- /* Load the registers off the stack. If we only have one register -- to load use the LDR instruction - it is faster. */ -- if (saved_regs_mask == (1 << LR_REGNUM)) -- { -- /* The exception handler ignores the LR, so we do -- not really need to load it off the stack. */ -- if (eh_ofs) -- asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -- else -- asm_fprintf (f, "\tldr\t%r, [%r], #4\n", LR_REGNUM, SP_REGNUM); -- } -- else if (saved_regs_mask) -+ if (saved_regs_mask) - { -- if (saved_regs_mask & (1 << SP_REGNUM)) -- /* Note - write back to the stack register is not enabled -- (ie "ldmfd sp!..."). We know that the stack pointer is -- in the list of registers and if we add writeback the -- instruction becomes UNPREDICTABLE. */ -- print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ /* Load the registers off the stack. If we only have one register -+ to load use the LDR instruction - it is faster. */ -+ if (bit_count (saved_regs_mask) == 1) -+ { -+ int reg = number_of_first_bit_set (saved_regs_mask); -+ -+ switch (reg) -+ { -+ case SP_REGNUM: -+ /* Mustn't use base writeback when loading SP. */ -+ asm_fprintf (f, "\tldr\t%r, [%r]\n", SP_REGNUM, SP_REGNUM); -+ break; -+ -+ case LR_REGNUM: -+ if (eh_ofs) -+ { -+ /* The exception handler ignores the LR, so we do -+ not really need to load it off the stack. */ -+ asm_fprintf (f, "\tadd\t%r, %r, #4\n", SP_REGNUM, SP_REGNUM); -+ break; -+ } -+ /* else fall through */ -+ -+ default: -+ asm_fprintf (f, "\tldr\t%r, [%r], #4\n", reg, SP_REGNUM); -+ break; -+ } -+ } - else -- print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ { -+ if (saved_regs_mask & (1 << SP_REGNUM)) -+ /* Note - write back to the stack register is not enabled -+ (ie "ldmfd sp!..."). We know that the stack pointer is -+ in the list of registers and if we add writeback the -+ instruction becomes UNPREDICTABLE. */ -+ print_multi_reg (f, "ldmfd\t%r", SP_REGNUM, saved_regs_mask); -+ else -+ print_multi_reg (f, "ldmfd\t%r!", SP_REGNUM, saved_regs_mask); -+ } - } - - if (current_function_pretend_args_size) -@@ -11401,22 +11441,6 @@ - } - } - --/* Return the number (counting from 0) of -- the least significant set bit in MASK. */ -- --inline static int --number_of_first_bit_set (int mask) --{ -- int bit; -- -- for (bit = 0; -- (mask & (1 << bit)) == 0; -- ++bit) -- continue; -- -- return bit; --} -- - /* Generate code to return from a thumb function. - If 'reg_containing_return_addr' is -1, then the return address is - actually on the stack, at the stack pointer. */ diff --git a/openwrt/toolchain/gcc/3.4.6/602-sdk-libstdc++-includes.patch b/openwrt/toolchain/gcc/3.4.6/602-sdk-libstdc++-includes.patch deleted file mode 100644 index 4377c2143b..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/602-sdk-libstdc++-includes.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- gcc-3.4.1/libstdc++-v3/libmath/Makefile.am~ 2003-08-27 22:29:42.000000000 +0100 -+++ gcc-3.4.1/libstdc++-v3/libmath/Makefile.am 2004-07-22 16:41:45.152130128 +0100 -@@ -32,7 +32,7 @@ - - libmath_la_SOURCES = stubs.c - --AM_CPPFLAGS = $(CANADIAN_INCLUDES) -+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include - - # Only compiling "C" sources in this directory. - LIBTOOL = @LIBTOOL@ --tag CC ---- gcc-3.4.1/libstdc++-v3/fragment.am.old 2004-07-22 18:24:58.024083656 +0100 -+++ gcc-3.4.1/libstdc++-v3/fragment.am 2004-07-22 18:24:59.019932264 +0100 -@@ -18,7 +18,7 @@ - $(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once - - # -I/-D flags to pass when compiling. --AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include - - - diff --git a/openwrt/toolchain/gcc/3.4.6/700-pr15068-fix.patch b/openwrt/toolchain/gcc/3.4.6/700-pr15068-fix.patch deleted file mode 100644 index 2977765c5f..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/700-pr15068-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -See http://gcc.gnu.org/PR15068 - -Fixes error - -../sysdeps/generic/s_fmax.c: In function `__fmax': -../sysdeps/generic/s_fmax.c:28: internal compiler error: in elim_reg_cond, at flow.c:3257 -Please submit a full bug report, -with preprocessed source if appropriate. -See <URL:http://gcc.gnu.org/bugs.html> for instructions. -make[2]: *** [/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/build-glibc/math/s_fmax.o] Error 1 -make[2]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822/math' -make[1]: *** [math/others] Error 2 -make[1]: Leaving directory `/home/dank/wk/crosstool-0.28-rc35/build/arm-unknown-linux-gnu/gcc-3.4.1-glibc-20040822/glibc-20040822' -make: *** [all] Error 2 - -[ rediffed against gcc-3.4.1, with elbow grease, ending up with same thing as -http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.563.4.2&r2=1.563.4.3 ] - ---- gcc-3.4.1/gcc/flow.c.old 2004-02-27 19:39:19.000000000 -0800 -+++ gcc-3.4.1/gcc/flow.c 2004-08-26 07:29:46.000000000 -0700 -@@ -1878,6 +1878,7 @@ - rtx set_src = SET_SRC (pc_set (BB_END (bb))); - rtx cond_true = XEXP (set_src, 0); - rtx reg = XEXP (cond_true, 0); -+ enum rtx_code inv_cond; - - if (GET_CODE (reg) == SUBREG) - reg = SUBREG_REG (reg); -@@ -1886,11 +1887,13 @@ - in the form of a comparison of a register against zero. - If the condition is more complex than that, then it is safe - not to record any information. */ -- if (GET_CODE (reg) == REG -+ inv_cond = reversed_comparison_code (cond_true, BB_END (bb)); -+ if (inv_cond != UNKNOWN -+ && GET_CODE (reg) == REG - && XEXP (cond_true, 1) == const0_rtx) - { - rtx cond_false -- = gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)), -+ = gen_rtx_fmt_ee (inv_cond, - GET_MODE (cond_true), XEXP (cond_true, 0), - XEXP (cond_true, 1)); - if (GET_CODE (XEXP (set_src, 1)) == PC) diff --git a/openwrt/toolchain/gcc/3.4.6/800-arm-bigendian.patch b/openwrt/toolchain/gcc/3.4.6/800-arm-bigendian.patch deleted file mode 100644 index 0bae8f474c..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/800-arm-bigendian.patch +++ /dev/null @@ -1,70 +0,0 @@ -By Lennert Buytenhek <buytenh@wantstofly.org> -Adds support for arm*b-linux* big-endian ARM targets - -See http://gcc.gnu.org/PR16350 - -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-16 15:43:40.000000000 -0500 -@@ -30,17 +30,34 @@ - /* Do not assume anything about header files. */ - #define NO_IMPLICIT_EXTERN_C - -+/* -+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* -+ * (big endian) configurations. -+ */ -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END -+#define TARGET_ENDIAN_OPTION "mbig-endian" -+#define TARGET_LINKER_EMULATION "armelfb_linux" -+#else -+#define TARGET_ENDIAN_DEFAULT 0 -+#define TARGET_ENDIAN_OPTION "mlittle-endian" -+#define TARGET_LINKER_EMULATION "armelf_linux" -+#endif -+ - /* Default is to use APCS-32 mode. */ - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_APCS_32 | \ -+ ARM_FLAG_MMU_TRAPS | \ -+ TARGET_ENDIAN_DEFAULT ) - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - --#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" -+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "mhard-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" } - - #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__" - -@@ -101,7 +118,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - #endif - -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-08-16 16:01:50.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-16 16:01:25.000000000 -0500 -@@ -672,6 +672,11 @@ - ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/3.4.6/810-arm-bigendian-uclibc.patch b/openwrt/toolchain/gcc/3.4.6/810-arm-bigendian-uclibc.patch deleted file mode 100644 index a4d87e2317..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/810-arm-bigendian-uclibc.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-08-16 16:08:18.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-16 16:06:24.000000000 -0500 -@@ -107,7 +107,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - #else - #define LINK_SPEC "%{h*} %{version:-v} \ -diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc ---- gcc-3.4.1-dist/gcc/config.gcc 2004-08-16 16:08:18.000000000 -0500 -+++ gcc-3.4.1/gcc/config.gcc 2004-08-16 16:03:25.000000000 -0500 -@@ -666,6 +666,11 @@ - ;; - arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/3.4.6/arm-softfloat.patch.conditional b/openwrt/toolchain/gcc/3.4.6/arm-softfloat.patch.conditional deleted file mode 100644 index 19d1b90dac..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/arm-softfloat.patch.conditional +++ /dev/null @@ -1,270 +0,0 @@ -Note... modified my mjn3 to not conflict with the big endian arm patch. -Warning!!! Only the linux target is aware of TARGET_ENDIAN_DEFAULT. -Also changed - #define SUBTARGET_EXTRA_ASM_SPEC "\ - %{!mcpu=*:-mcpu=xscale} \ - %{mhard-float:-mfpu=fpa} \ - %{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" -to - #define SUBTARGET_EXTRA_ASM_SPEC "\ - %{mhard-float:-mfpu=fpa} \ - %{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" -in gcc/config/arm/linux-elf.h. -# -# Submitted: -# -# Dimitry Andric <dimitry@andric.com>, 2004-05-01 -# -# Description: -# -# Nicholas Pitre released this patch for gcc soft-float support here: -# http://lists.arm.linux.org.uk/pipermail/linux-arm/2003-October/006436.html -# -# This version has been adapted to work with gcc 3.4.0. -# -# The original patch doesn't distinguish between softfpa and softvfp modes -# in the way Nicholas Pitre probably meant. His description is: -# -# "Default is to use APCS-32 mode with soft-vfp. The old Linux default for -# floats can be achieved with -mhard-float or with the configure -# --with-float=hard option. If -msoft-float or --with-float=soft is used then -# software float support will be used just like the default but with the legacy -# big endian word ordering for double float representation instead." -# -# Which means the following: -# -# * If you compile without -mhard-float or -msoft-float, you should get -# software floating point, using the VFP format. The produced object file -# should have these flags in its header: -# -# private flags = 600: [APCS-32] [VFP float format] [software FP] -# -# * If you compile with -mhard-float, you should get hardware floating point, -# which always uses the FPA format. Object file header flags should be: -# -# private flags = 0: [APCS-32] [FPA float format] -# -# * If you compile with -msoft-float, you should get software floating point, -# using the FPA format. This is done for compatibility reasons with many -# existing distributions. Object file header flags should be: -# -# private flags = 200: [APCS-32] [FPA float format] [software FP] -# -# The original patch from Nicholas Pitre contained the following constructs: -# -# #define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -# %{mhard-float:-mfpu=fpa} \ -# %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}" -# -# However, gcc doesn't accept this ";:" notation, used in the 3rd line. This -# is probably the reason Robert Schwebel modified it to: -# -# #define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -# %{mhard-float:-mfpu=fpa} \ -# %{!mhard-float: %{msoft-float:-mfpu=softfpa -mfpu=softvfp}}" -# -# But this causes the following behaviour: -# -# * If you compile without -mhard-float or -msoft-float, the compiler generates -# software floating point instructions, but *nothing* is passed to the -# assembler, which results in an object file which has flags: -# -# private flags = 0: [APCS-32] [FPA float format] -# -# This is not correct! -# -# * If you compile with -mhard-float, the compiler generates hardware floating -# point instructions, and passes "-mfpu=fpa" to the assembler, which results -# in an object file which has the same flags as in the previous item, but now -# those *are* correct. -# -# * If you compile with -msoft-float, the compiler generates software floating -# point instructions, and passes "-mfpu=softfpa -mfpu=softvfp" (in that -# order) to the assembler, which results in an object file with flags: -# -# private flags = 600: [APCS-32] [VFP float format] [software FP] -# -# This is not correct, because the last "-mfpu=" option on the assembler -# command line determines the actual FPU convention used (which should be FPA -# in this case). -# -# Therefore, I modified this patch to get the desired behaviour. Every -# instance of the notation: -# -# %{msoft-float:-mfpu=softfpa -mfpu=softvfp} -# -# was changed to: -# -# %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp} -# -# I also did the following: -# -# * Modified all TARGET_DEFAULT macros I could find to include ARM_FLAG_VFP, to -# be consistent with Nicholas' original patch. -# * Removed any "msoft-float" or "mhard-float" from all MULTILIB_DEFAULTS -# macros I could find. I think that if you compile without any options, you -# would like to get the defaults. :) -# * Removed the extra -lfloat option from LIBGCC_SPEC, since it isn't needed -# anymore. (The required functions are now in libgcc.) - -diff -urN gcc-3.4.1-old/gcc/config/arm/coff.h gcc-3.4.1/gcc/config/arm/coff.h ---- gcc-3.4.1-old/gcc/config/arm/coff.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/coff.h 2004-09-02 21:51:15.000000000 -0500 -@@ -31,11 +31,16 @@ - #define TARGET_VERSION fputs (" (ARM/coff)", stderr) - - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork" } - #endif - - /* This is COFF, but prefer stabs. */ -diff -urN gcc-3.4.1-old/gcc/config/arm/elf.h gcc-3.4.1/gcc/config/arm/elf.h ---- gcc-3.4.1-old/gcc/config/arm/elf.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -46,7 +46,9 @@ - - #ifndef SUBTARGET_ASM_FLOAT_SPEC - #define SUBTARGET_ASM_FLOAT_SPEC "\ --%{mapcs-float:-mfloat} %{msoft-float:-mfpu=softfpa}" -+%{mapcs-float:-mfloat} \ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - #endif - - #ifndef ASM_SPEC -@@ -106,12 +108,17 @@ - #endif - - #ifndef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - #endif - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" } -+ { "marm", "mlittle-endian", "mapcs-32", "mno-thumb-interwork", "fno-leading-underscore" } - #endif - - #define TARGET_ASM_FILE_START_APP_OFF true -diff -urN gcc-3.4.1-old/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h ---- gcc-3.4.1-old/gcc/config/arm/linux-elf.h 2004-09-02 21:50:52.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-09-02 22:00:49.000000000 -0500 -@@ -44,12 +44,26 @@ - #define TARGET_LINKER_EMULATION "armelf_linux" - #endif - --/* Default is to use APCS-32 mode. */ -+/* -+ * Default is to use APCS-32 mode with soft-vfp. -+ * The old Linux default for floats can be achieved with -mhard-float -+ * or with the configure --with-float=hard option. -+ * If -msoft-float or --with-float=soft is used then software float -+ * support will be used just like the default but with the legacy -+ * big endian word ordering for double float representation instead. -+ */ - #undef TARGET_DEFAULT --#define TARGET_DEFAULT \ -- ( ARM_FLAG_APCS_32 | \ -- ARM_FLAG_MMU_TRAPS | \ -- TARGET_ENDIAN_DEFAULT ) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_SOFT_FLOAT \ -+ | TARGET_ENDIAN_DEFAULT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_MMU_TRAPS ) -+ -+#undef SUBTARGET_EXTRA_ASM_SPEC -+#define SUBTARGET_EXTRA_ASM_SPEC "\ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - -@@ -57,7 +71,7 @@ - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mapcs-32", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mapcs-32", "mno-thumb-interwork" } - - #define CPP_APCS_PC_DEFAULT_SPEC "-D__APCS_32__" - -@@ -72,7 +86,7 @@ - %{shared:-lc} \ - %{!shared:%{profile:-lc_p}%{!profile:-lc}}" - --#define LIBGCC_SPEC "%{msoft-float:-lfloat} -lgcc" -+#define LIBGCC_SPEC "-lgcc" - - /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add - the GNU/Linux magical crtbegin.o file (see crtstuff.c) which -diff -urN gcc-3.4.1-old/gcc/config/arm/t-linux gcc-3.4.1/gcc/config/arm/t-linux ---- gcc-3.4.1-old/gcc/config/arm/t-linux 2003-09-20 16:09:07.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/t-linux 2004-09-02 21:51:15.000000000 -0500 -@@ -4,7 +4,10 @@ - LIBGCC2_DEBUG_CFLAGS = -g0 - - LIB1ASMSRC = arm/lib1funcs.asm --LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx -+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \ -+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ -+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ -+ _fixsfsi _fixunssfsi - - # MULTILIB_OPTIONS = mhard-float/msoft-float - # MULTILIB_DIRNAMES = hard-float soft-float -diff -urN gcc-3.4.1-old/gcc/config/arm/unknown-elf.h gcc-3.4.1/gcc/config/arm/unknown-elf.h ---- gcc-3.4.1-old/gcc/config/arm/unknown-elf.h 2004-02-24 08:25:22.000000000 -0600 -+++ gcc-3.4.1/gcc/config/arm/unknown-elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -30,7 +30,12 @@ - - /* Default to using APCS-32 and software floating point. */ - #ifndef TARGET_DEFAULT --#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS) -+#define TARGET_DEFAULT \ -+ ( ARM_FLAG_SOFT_FLOAT \ -+ | ARM_FLAG_VFP \ -+ | ARM_FLAG_APCS_32 \ -+ | ARM_FLAG_APCS_FRAME \ -+ | ARM_FLAG_MMU_TRAPS ) - #endif - - /* Now we define the strings used to build the spec file. */ -diff -urN gcc-3.4.1-old/gcc/config/arm/xscale-elf.h gcc-3.4.1/gcc/config/arm/xscale-elf.h ---- gcc-3.4.1-old/gcc/config/arm/xscale-elf.h 2003-07-01 18:26:43.000000000 -0500 -+++ gcc-3.4.1/gcc/config/arm/xscale-elf.h 2004-09-02 21:51:15.000000000 -0500 -@@ -49,11 +49,12 @@ - endian, regardless of the endian-ness of the memory - system. */ - --#define SUBTARGET_EXTRA_ASM_SPEC "%{!mcpu=*:-mcpu=xscale} \ -- %{mhard-float:-mfpu=fpa} \ -- %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}" -+#define SUBTARGET_EXTRA_ASM_SPEC "\ -+%{!mcpu=*:-mcpu=xscale} \ -+%{mhard-float:-mfpu=fpa} \ -+%{!mhard-float: %{msoft-float:-mfpu=softfpa} %{!msoft-float:-mfpu=softvfp}}" - - #ifndef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "mlittle-endian", "mno-thumb-interwork", "marm", "msoft-float" } -+ { "mlittle-endian", "mno-thumb-interwork", "marm" } - #endif diff --git a/openwrt/toolchain/gcc/3.4.6/static-libgcc.patch.conditional b/openwrt/toolchain/gcc/3.4.6/static-libgcc.patch.conditional deleted file mode 100644 index c8c1d849cd..0000000000 --- a/openwrt/toolchain/gcc/3.4.6/static-libgcc.patch.conditional +++ /dev/null @@ -1,11 +0,0 @@ ---- specs~ 2005-11-21 17:22:08.000000000 +0100 -+++ specs 2005-11-21 17:22:08.000000000 +0100 -@@ -51,7 +51,7 @@ - %{shared: -lc} %{!static:-rpath-link %R/lib:%R/usr/lib} %{!shared: %{pthread:-lpthread} %{profile:-lc_p} %{!profile: -lc}} - - *libgcc: --%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s%M --no-as-needed}%{shared-libgcc:-lgcc_s%M%{!shared: -lgcc}}}} -+%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc -lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:%{shared-libgcc:-lgcc_s%M}%{!shared-libgcc:-lgcc}}}} - - *startfile: - %{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} diff --git a/openwrt/toolchain/gcc/4.0.2/100-uclibc-conf.patch b/openwrt/toolchain/gcc/4.0.2/100-uclibc-conf.patch deleted file mode 100644 index 9436c7d1ce..0000000000 --- a/openwrt/toolchain/gcc/4.0.2/100-uclibc-conf.patch +++ /dev/null @@ -1,410 +0,0 @@ -diff -urN gcc-4.1.0/boehm-gc/configure gcc-4.1.0-patched/boehm-gc/configure ---- gcc-4.1.0/boehm-gc/configure 2005-04-13 19:31:24.000000000 -0500 -+++ gcc-4.1.0-patched/boehm-gc/configure 2005-04-25 20:47:19.919723167 -0500 -@@ -4320,6 +4320,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -diff -urN gcc-4.1.0/gcc/config/arm/linux-elf.h gcc-4.1.0-patched/gcc/config/arm/linux-elf.h ---- gcc-4.1.0/gcc/config/arm/linux-elf.h 2005-03-02 10:27:42.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/arm/linux-elf.h 2005-04-25 20:45:31.795953620 -0500 -@@ -82,6 +82,18 @@ - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s" - - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC "%{h*} %{version:-v} \ -+ %{b} %{Wl,*:%*} \ -+ %{static:-Bstatic} \ -+ %{shared:-shared} \ -+ %{symbolic:-Bsymbolic} \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \ -+ -X \ -+ %{mbig-endian:-EB}" \ -+ SUBTARGET_EXTRA_LINK_SPEC -+#else - #define LINK_SPEC "%{h*} %{version:-v} \ - %{b} %{Wl,*:%*} \ - %{static:-Bstatic} \ -@@ -92,6 +104,7 @@ - -X \ - %{mbig-endian:-EB}" \ - SUBTARGET_EXTRA_LINK_SPEC -+#endif - - #define TARGET_OS_CPP_BUILTINS() \ - do \ -diff -urN gcc-4.1.0/gcc/config/cris/linux.h gcc-4.1.0-patched/gcc/config/cris/linux.h ---- gcc-4.1.0/gcc/config/cris/linux.h 2005-04-23 23:01:27.000000000 -0500 -+++ gcc-4.1.0-patched/gcc/config/cris/linux.h 2005-04-25 20:45:31.796953451 -0500 -@@ -73,6 +73,25 @@ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -87,6 +106,8 @@ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - -diff -urN gcc-4.1.0/gcc/config/cris/t-linux-uclibc gcc-4.1.0-patched/gcc/config/cris/t-linux-uclibc ---- gcc-4.1.0/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/cris/t-linux-uclibc 2005-04-25 20:45:31.797953283 -0500 -@@ -0,0 +1,3 @@ -+T_CFLAGS = -DUSE_UCLIBC -+TARGET_LIBGCC2_CFLAGS += -fPIC -+CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS) -diff -urN gcc-4.1.0/gcc/config/i386/linux.h gcc-4.1.0-patched/gcc/config/i386/linux.h ---- gcc-4.1.0/gcc/config/i386/linux.h 2004-11-27 10:45:14.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/i386/linux.h 2005-04-25 21:21:05.828409973 -0500 -@@ -104,8 +104,13 @@ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#if defined USE_UCLIBC -+#define LINK_EMULATION "elf_i386" -+#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else - #define LINK_EMULATION "elf_i386" - #define DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - - #undef SUBTARGET_EXTRA_SPECS - #define SUBTARGET_EXTRA_SPECS \ -@@ -144,6 +149,7 @@ - } \ - } while (0) - #endif -+#endif - - /* Handle special EH pointer encodings. Absolute, pc-relative, and - indirect are handled automatically. */ -diff -urN gcc-4.1.0/gcc/config/mips/linux.h gcc-4.1.0-patched/gcc/config/mips/linux.h ---- gcc-4.1.0/gcc/config/mips/linux.h 2005-01-25 20:04:46.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/mips/linux.h 2005-04-25 20:45:31.809951259 -0500 -@@ -108,6 +108,17 @@ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define LINK_SPEC \ -+ "%(endian_spec) \ -+ %{shared:-shared} \ -+ %{!shared: \ -+ %{!ibcs: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}}}" -+#else - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ -@@ -117,6 +128,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ - %{static:-static}}}" -+#endif - - #undef SUBTARGET_ASM_SPEC - #define SUBTARGET_ASM_SPEC "%{mabi=64: -64} %{!mno-abicalls:-KPIC}" -diff -urN gcc-4.1.0/gcc/config/rs6000/linux.h gcc-4.1.0-patched/gcc/config/rs6000/linux.h ---- gcc-4.1.0/gcc/config/rs6000/linux.h 2004-12-01 20:21:28.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/rs6000/linux.h 2005-04-25 20:45:31.810951091 -0500 -@@ -69,7 +69,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" -diff -urN gcc-4.1.0/gcc/config/rs6000/sysv4.h gcc-4.1.0-patched/gcc/config/rs6000/sysv4.h ---- gcc-4.1.0/gcc/config/rs6000/sysv4.h 2005-04-13 19:26:50.000000000 -0500 -+++ gcc-4.1.0-patched/gcc/config/rs6000/sysv4.h 2005-04-25 20:45:31.812950754 -0500 -@@ -957,6 +957,7 @@ - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1135,6 +1136,10 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1301,6 +1306,7 @@ - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ -diff -urN gcc-4.1.0/gcc/config/sh/linux.h gcc-4.1.0-patched/gcc/config/sh/linux.h ---- gcc-4.1.0/gcc/config/sh/linux.h 2005-02-28 21:39:03.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/sh/linux.h 2005-04-25 20:45:31.814950416 -0500 -@@ -55,12 +55,21 @@ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define SUBTARGET_LINK_SPEC \ -+ "%{shared:-shared} \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}" -+#else - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}" -+#endif - - /* Output assembler code to STREAM to call the profiler. */ - -diff -urN gcc-4.1.0/gcc/config/sh/t-linux-uclibc gcc-4.1.0-patched/gcc/config/sh/t-linux-uclibc ---- gcc-4.1.0/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/sh/t-linux-uclibc 2005-04-25 20:45:31.814950416 -0500 -@@ -0,0 +1,13 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+TARGET_LIBGCC2_CFLAGS = -fpic -DNO_FPSCR_VALUES -+LIB1ASMFUNCS_CACHE = _ic_invalidate -+ -+LIB2FUNCS_EXTRA= -+ -+MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4 -+MULTILIB_DIRNAMES= -+MULTILIB_MATCHES = -+MULTILIB_EXCEPTIONS= -+ -+EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o -diff -urN gcc-4.1.0/gcc/config/sh/t-sh64-uclibc gcc-4.1.0-patched/gcc/config/sh/t-sh64-uclibc ---- gcc-4.1.0/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/sh/t-sh64-uclibc 2005-04-25 20:45:31.815950248 -0500 -@@ -0,0 +1,13 @@ -+EXTRA_MULTILIB_PARTS= crt1.o crti.o crtn.o crtbegin.o crtend.o -+ -+LIB1ASMFUNCS = \ -+ _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \ -+ _shcompact_call_trampoline _shcompact_return_trampoline \ -+ _shcompact_incoming_args _ic_invalidate _nested_trampoline \ -+ _push_pop_shmedia_regs \ -+ _udivdi3 _divdi3 _umoddi3 _moddi3 -+ -+MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu -+MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64 -+MULTILIB_MATCHES= -+MULTILIB_EXCEPTIONS= -diff -urN gcc-4.1.0/gcc/config/t-linux-uclibc gcc-4.1.0-patched/gcc/config/t-linux-uclibc ---- gcc-4.1.0/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/gcc/config/t-linux-uclibc 2005-04-25 20:45:31.815950248 -0500 -@@ -0,0 +1,15 @@ -+T_CFLAGS = -DUSE_UCLIBC -+ -+# Compile crtbeginS.o and crtendS.o with pic. -+CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC -+# Compile libgcc2.a with pic. -+TARGET_LIBGCC2_CFLAGS = -fPIC -+ -+# Override t-slibgcc-elf-ver to export some libgcc symbols with -+# the symbol versions that glibc used. -+#SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver -+ -+# Use unwind-dw2-fde -+LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \ -+ $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c -+LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h -diff -urN gcc-4.1.0/gcc/config.gcc gcc-4.1.0-patched/gcc/config.gcc ---- gcc-4.1.0/gcc/config.gcc 2005-04-23 23:01:23.000000000 -0500 -+++ gcc-4.1.0-patched/gcc/config.gcc 2005-04-25 21:12:43.375594576 -0500 -@@ -448,7 +448,14 @@ - case ${enable_threads} in - "" | yes | posix) thread_file='posix' ;; - esac -- tmake_file="t-slibgcc-elf-ver t-linux" -+ case ${target} in -+ *-linux*uclibc*) -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc" -+ ;; -+ *) -+ tmake_file="t-slibgcc-elf-ver t-linux" -+ ;; -+ esac - ;; - *-*-gnu*) - # On the Hurd, the setup is just about the same on -@@ -667,6 +674,12 @@ - extra_parts="" - use_collect2=yes - ;; -+arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc -+ tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux" -+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" -+ gnu_ld=yes -+ ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" - tmake_file="${tmake_file} arm/t-arm arm/t-linux" -@@ -765,6 +778,10 @@ - gas=yes - extra_options="${extra_options} cris/elf.opt" - ;; -+cris-*-linux-uclibc*) -+ tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" -+ tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc" -+ ;; - cris-*-linux*) - tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h" - # We need to avoid using t-linux, so override default tmake_file -@@ -1443,6 +1460,16 @@ - gnu_ld=yes - gas=yes - ;; -+mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc -+ tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" -+ case ${target} in -+ mipsisa32*-*) -+ target_cpu_default="MASK_SOFT_FLOAT" -+ tm_defines="MIPS_ISA_DEFAULT=32" -+ ;; -+ esac -+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc" -+ ;; - mips*-*-linux*) # Linux MIPS, either endian. - tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" - case ${target} in -@@ -1659,6 +1686,10 @@ - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" - ;; -+powerpc-*-linux-uclibc*) -+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h" -+ tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm" -+ ;; - powerpc-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" -@@ -1821,6 +1852,8 @@ - esac - tm_file="${tm_file} sh/elf.h" - case ${target} in -+ sh*-*-linux-uclibc*) tmake_file="${tmake_file} t-linux-uclibc sh/t-linux-uclibc" -+ tm_file="${tm_file} linux.h sh/linux.h" ;; - sh*-*-linux*) tmake_file="${tmake_file} sh/t-linux" - tm_file="${tm_file} linux.h sh/linux.h" ;; - sh*-*-kaos*) tm_file="${tm_file} sh/embed-elf.h kaos.h sh/kaos-sh.h" -@@ -1840,6 +1873,11 @@ - *-*-netbsd) - tmake_file="${tmake_file} sh/t-netbsd" - ;; -+ sh64*-*-linux-uclibc*) -+ tmake_file="${tmake_file} sh/t-sh64-uclibc" -+ tm_file="${tm_file} sh/sh64.h" -+ extra_headers="shmedia.h ushmedia.h sshmedia.h" -+ ;; - sh64*-*-linux*) - tmake_file="${tmake_file} sh/t-sh64 sh/t-linux64" - tm_file="${tm_file} sh/sh64.h" -diff -urN gcc-4.1.0/libtool.m4 gcc-4.1.0-patched/libtool.m4 ---- gcc-4.1.0/libtool.m4 2005-04-13 19:31:24.000000000 -0500 -+++ gcc-4.1.0-patched/libtool.m4 2005-04-25 20:47:51.679369687 -0500 -@@ -743,6 +743,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] -diff -urN gcc-4.1.0/ltconfig gcc-4.1.0-patched/ltconfig ---- gcc-4.1.0/ltconfig 2004-10-02 11:33:06.000000000 -0500 -+++ gcc-4.1.0-patched/ltconfig 2005-04-25 20:45:31.836946707 -0500 -@@ -602,6 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1273,6 +1274,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no diff --git a/openwrt/toolchain/gcc/4.0.2/200-uclibc-locale.patch b/openwrt/toolchain/gcc/4.0.2/200-uclibc-locale.patch deleted file mode 100644 index c57f17312b..0000000000 --- a/openwrt/toolchain/gcc/4.0.2/200-uclibc-locale.patch +++ /dev/null @@ -1,3191 +0,0 @@ -diff -urN gcc-4.1.0/libstdc++-v3/acinclude.m4 gcc-4.1.0-patched/libstdc++-v3/acinclude.m4 ---- gcc-4.1.0/libstdc++-v3/acinclude.m4 2005-04-11 19:13:06.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/acinclude.m4 2005-04-27 22:20:27.569248995 -0500 -@@ -1047,7 +1047,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1063,6 +1063,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ *-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1206,6 +1209,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2005-04-27 22:20:27.571248664 -0500 -@@ -0,0 +1,59 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc 2005-04-27 22:20:27.572248498 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h 2005-04-27 22:20:27.573248332 -0500 -@@ -0,0 +1,115 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, const int __size, const char* __fmt, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2005-04-27 22:20:27.574248167 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc 2005-04-27 22:20:27.575248001 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2005-04-27 22:20:27.595244687 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = 0; -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc 2005-04-27 22:20:27.618240876 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h 2005-04-27 22:20:27.619240710 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2005-04-27 22:20:27.621240379 -0500 -@@ -0,0 +1,698 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ ; -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ { -+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]); -+ _M_data->_M_atoms[__i] = btowc(uc); -+ } -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2005-04-27 22:20:27.623240047 -0500 -@@ -0,0 +1,183 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = strlen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = strlen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_S_get_c_locale()); -+#endif -+ // Use ctype::widen code without the facet... -+ unsigned char uc; -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_out[__i]); -+ _M_data->_M_atoms_out[__i] = btowc(uc); -+ } -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ { -+ uc = static_cast<unsigned char>(__num_base::_S_atoms_in[__j]); -+ _M_data->_M_atoms_in[__j] = btowc(uc); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union __s_and_w { const char *__s; unsigned int __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = static_cast<wchar_t>(__u.__w); -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w); -+#endif -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = wcslen(_M_data->_M_truename); -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = wcslen(_M_data->_M_falsename); -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc 2005-04-27 22:20:27.624239882 -0500 -@@ -0,0 +1,356 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_FMT, __cloc)); -+ _M_data->_M_date_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_FMT, __cloc)); -+ _M_data->_M_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT, __cloc)); -+ _M_data->_M_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_T_FMT, __cloc)); -+ _M_data->_M_date_time_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WD_T_FMT, __cloc)); -+ _M_data->_M_date_time_era_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc)); -+ _M_data->_M_am = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WAM_STR, __cloc)); -+ _M_data->_M_pm = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WPM_STR, __cloc)); -+ _M_data->_M_am_pm_format = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc)); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_1, __cloc)); -+ _M_data->_M_day2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_2, __cloc)); -+ _M_data->_M_day3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_3, __cloc)); -+ _M_data->_M_day4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_4, __cloc)); -+ _M_data->_M_day5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_5, __cloc)); -+ _M_data->_M_day6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_6, __cloc)); -+ _M_data->_M_day7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WDAY_7, __cloc)); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_1, __cloc)); -+ _M_data->_M_aday2 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_2, __cloc)); -+ _M_data->_M_aday3 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_3, __cloc)); -+ _M_data->_M_aday4 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_4, __cloc)); -+ _M_data->_M_aday5 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_5, __cloc)); -+ _M_data->_M_aday6 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_6, __cloc)); -+ _M_data->_M_aday7 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABDAY_7, __cloc)); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_1, __cloc)); -+ _M_data->_M_month02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_2, __cloc)); -+ _M_data->_M_month03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_3, __cloc)); -+ _M_data->_M_month04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_4, __cloc)); -+ _M_data->_M_month05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_5, __cloc)); -+ _M_data->_M_month06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_6, __cloc)); -+ _M_data->_M_month07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_7, __cloc)); -+ _M_data->_M_month08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_8, __cloc)); -+ _M_data->_M_month09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_9, __cloc)); -+ _M_data->_M_month10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_10, __cloc)); -+ _M_data->_M_month11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_11, __cloc)); -+ _M_data->_M_month12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WMON_12, __cloc)); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_1, __cloc)); -+ _M_data->_M_amonth02 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_2, __cloc)); -+ _M_data->_M_amonth03 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_3, __cloc)); -+ _M_data->_M_amonth04 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_4, __cloc)); -+ _M_data->_M_amonth05 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_5, __cloc)); -+ _M_data->_M_amonth06 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_6, __cloc)); -+ _M_data->_M_amonth07 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_7, __cloc)); -+ _M_data->_M_amonth08 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_8, __cloc)); -+ _M_data->_M_amonth09 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_9, __cloc)); -+ _M_data->_M_amonth10 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_10, __cloc)); -+ _M_data->_M_amonth11 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_11, __cloc)); -+ _M_data->_M_amonth12 = reinterpret_cast<wchar_t*>(__nl_langinfo_l(_NL_WABMON_12, __cloc)); -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h 2005-04-27 22:20:27.625239716 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h 2005-04-27 22:20:27.626239550 -0500 -@@ -0,0 +1,58 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h 2005-04-27 22:20:27.626239550 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2005-04-27 22:20:27.627239385 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h 2005-04-27 22:20:27.628239219 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/configure ---- gcc-4.1.0/libstdc++-v3/configure 2005-04-13 19:31:43.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/configure 2005-04-27 22:20:33.285301695 -0500 -@@ -3986,6 +3986,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5744,6 +5749,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ linux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ -@@ -5974,6 +5982,77 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-4.1.0/libstdc++-v3/configure.host gcc-4.1.0-patched/libstdc++-v3/configure.host ---- gcc-4.1.0/libstdc++-v3/configure.host 2005-01-13 16:48:14.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/configure.host 2005-04-27 22:20:28.088162997 -0500 -@@ -249,6 +249,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-4.1.0/libstdc++-v3/crossconfig.m4 gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4 ---- gcc-4.1.0/libstdc++-v3/crossconfig.m4 2005-04-06 18:31:16.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4 2005-04-27 22:20:28.089162832 -0500 -@@ -143,6 +143,99 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!]) -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -157,7 +250,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h 2005-04-27 22:20:28.089162832 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:47:42.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h 2005-04-27 22:20:28.090162666 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/4.0.3/100-uclibc-conf.patch b/openwrt/toolchain/gcc/4.0.3/100-uclibc-conf.patch deleted file mode 100644 index 3be7d0975d..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/100-uclibc-conf.patch +++ /dev/null @@ -1,553 +0,0 @@ ---- gcc-4.0.2/gcc/config/t-linux-uclibc -+++ gcc-4.0.2/gcc/config/t-linux-uclibc -@@ -0,0 +1,5 @@ -+# Remove glibc specific files added in t-linux -+SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES)) -+ -+# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc -+LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH)) ---- gcc-4.0.2/gcc/config.gcc -+++ gcc-4.0.2/gcc/config.gcc -@@ -1778,7 +1778,7 @@ - ;; - sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \ - sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ -- sh-*-linux* | sh[346lbe]*-*-linux* | \ -+ sh*-*-linux* | sh[346lbe]*-*-linux* | \ - sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \ - sh64-*-netbsd* | sh64l*-*-netbsd*) - tmake_file="${tmake_file} sh/t-sh sh/t-elf" -@@ -2234,10 +2234,16 @@ - *) - echo "*** Configuration ${target} not supported" 1>&2 - exit 1 - ;; - esac -+ -+# Rather than hook into each target, just do it after all the linux -+# targets have been processed -+case ${target} in -+*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" ; tmake_file="${tmake_file} t-linux-uclibc" -+esac - - case ${target} in - i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1) - tmake_file="${tmake_file} i386/t-gmm_malloc" - ;; ---- gcc-4.0.2/gcc/config/alpha/linux-elf.h -+++ gcc-4.0.2/gcc/config/alpha/linux-elf.h -@@ -27,7 +27,11 @@ - #define SUBTARGET_EXTRA_SPECS \ - { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else - #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - - #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ - %{O*:-O3} %{!O*:-O1} \ ---- gcc-4.0.2/gcc/config/arm/linux-elf.h -+++ gcc-4.0.2/gcc/config/arm/linux-elf.h -@@ -81,14 +81,19 @@ - #define ENDFILE_SPEC \ - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s" - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "%{h*} %{version:-v} \ - %{b} %{Wl,*:%*} \ - %{static:-Bstatic} \ - %{shared:-shared} \ - %{symbolic:-Bsymbolic} \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "} \ - -X \ - %{mbig-endian:-EB}" \ - SUBTARGET_EXTRA_LINK_SPEC ---- gcc-4.0.2/gcc/config/cris/linux.h -+++ gcc-4.0.2/gcc/config/cris/linux.h -@@ -79,6 +79,25 @@ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -93,6 +112,8 @@ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - ---- gcc-4.0.2/gcc/config/i386/linux.h -+++ gcc-4.0.2/gcc/config/i386/linux.h -@@ -107,6 +107,11 @@ - #define LINK_EMULATION "elf_i386" - #define DYNAMIC_LINKER "/lib/ld-linux.so.2" - -+#ifdef USE_UCLIBC -+#undef DYNAMIC_LINKER -+#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#endif -+ - #undef SUBTARGET_EXTRA_SPECS - #define SUBTARGET_EXTRA_SPECS \ - { "link_emulation", LINK_EMULATION },\ ---- gcc-4.0.2/gcc/config/i386/linux64.h -+++ gcc-4.0.2/gcc/config/i386/linux64.h -@@ -54,14 +54,21 @@ - When the -shared link option is used a final link is not being - done. */ - -+#ifdef USE_UCLIBC -+#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \ -+ %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \ -+ %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \ - %{static:-static}}" - - #define MULTILIB_DEFAULTS { "m64" } ---- gcc-4.0.2/gcc/config/ia64/linux.h -+++ gcc-4.0.2/gcc/config/ia64/linux.h -@@ -37,13 +37,18 @@ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - ---- gcc-4.0.2/gcc/config/m68k/linux.h -+++ gcc-4.0.2/gcc/config/m68k/linux.h -@@ -127,12 +127,17 @@ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "-m m68kelf %{shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static}}" - - /* For compatibility with linux/a.out */ ---- gcc-4.0.2/gcc/config/mips/linux.h -+++ gcc-4.0.2/gcc/config/mips/linux.h -@@ -108,14 +108,19 @@ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - - #undef SUBTARGET_ASM_SPEC ---- gcc-4.0.2/gcc/config/pa/pa-linux.h -+++ gcc-4.0.2/gcc/config/pa/pa-linux.h -@@ -82,13 +82,18 @@ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - /* glibc's profiling functions don't need gcc to allocate counters. */ ---- gcc-4.0.2/gcc/config/rs6000/linux.h -+++ gcc-4.0.2/gcc/config/rs6000/linux.h -@@ -69,7 +69,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" ---- gcc-4.0.2/gcc/config/rs6000/sysv4.h -+++ gcc-4.0.2/gcc/config/rs6000/sysv4.h -@@ -949,6 +949,7 @@ - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1127,6 +1128,10 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1293,6 +1298,7 @@ - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ ---- gcc-4.0.2/gcc/config/s390/linux.h -+++ gcc-4.0.2/gcc/config/s390/linux.h -@@ -77,6 +77,13 @@ - #define MULTILIB_DEFAULTS { "m31" } - #endif - -+#ifdef USE_UCLIBC -+#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC \ - "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ -@@ -86,8 +93,8 @@ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker: \ -- %{m31:-dynamic-linker /lib/ld.so.1} \ -- %{m64:-dynamic-linker /lib/ld64.so.1}}}}" -+ %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \ -+ %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}" - - - #define TARGET_ASM_FILE_END file_end_indicate_exec_stack ---- gcc-4.0.2/gcc/config/sh/linux.h -+++ gcc-4.0.2/gcc/config/sh/linux.h -@@ -67,11 +67,16 @@ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}" - - #undef LIB_SPEC ---- gcc-4.0.2/gcc/config/sparc/linux.h -+++ gcc-4.0.2/gcc/config/sparc/linux.h -@@ -130,14 +130,19 @@ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!mno-relax:%{!r:-relax}} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - - /* The sun bundled assembler doesn't accept -Yd, (and neither does gas). ---- gcc-4.0.2/gcc/config/sparc/linux64.h -+++ gcc-4.0.2/gcc/config/sparc/linux64.h -@@ -167,12 +166,17 @@ - { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ - { "link_arch", LINK_ARCH_SPEC }, - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}} \ - " - ---- gcc-4.0.2/libtool.m4 -+++ gcc-4.0.2/libtool.m4 -@@ -682,6 +682,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] ---- gcc-4.0.2/ltconfig -+++ gcc-4.0.2/ltconfig -@@ -603,6 +603,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1274,6 +1275,23 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no ---- gcc-4.0.2/libffi/configure -+++ gcc-4.0.2/libffi/configure -@@ -3457,6 +3457,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/libgfortran/configure -+++ gcc-4.0.2/libgfortran/configure -@@ -3681,6 +3681,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/libjava/configure -+++ gcc-4.0.2/libjava/configure -@@ -4351,6 +4351,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/libmudflap/configure -+++ gcc-4.0.2/libmudflap/configure -@@ -5380,6 +5380,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/libobjc/configure -+++ gcc-4.0.2/libobjc/configure -@@ -3283,6 +3283,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/boehm-gc/configure -+++ gcc-4.0.2/boehm-gc/configure -@@ -4320,6 +4320,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.0.2/configure -+++ gcc-4.0.2/configure -@@ -1141,7 +1141,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) ---- gcc-4.0.2/configure.in -+++ gcc-4.0.2/configure.in -@@ -350,7 +350,7 @@ - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) ---- gcc-4.0.2/contrib/regression/objs-gcc.sh -+++ gcc-4.0.2/contrib/regression/objs-gcc.sh -@@ -105,6 +105,10 @@ - then - make all-gdb all-dejagnu all-ld || exit 1 - make install-gdb install-dejagnu install-ld || exit 1 -+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] -+ then -+ make all-gdb all-dejagnu all-ld || exit 1 -+ make install-gdb install-dejagnu install-ld || exit 1 - elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then - make bootstrap || exit 1 - make install || exit 1 ---- gcc-4.0.2/zlib/configure -+++ gcc-4.0.2/zlib/configure -@@ -3426,6 +3426,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' diff --git a/openwrt/toolchain/gcc/4.0.3/200-uclibc-locale.patch b/openwrt/toolchain/gcc/4.0.3/200-uclibc-locale.patch deleted file mode 100644 index ac4cf97209..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/200-uclibc-locale.patch +++ /dev/null @@ -1,3237 +0,0 @@ -diff -urN gcc-4.0.0-100/libstdc++-v3/acinclude.m4 gcc-4.0.0/libstdc++-v3/acinclude.m4 ---- gcc-4.0.0-100/libstdc++-v3/acinclude.m4 2005-04-30 13:06:53.000000000 -0500 -+++ gcc-4.0.0/libstdc++-v3/acinclude.m4 2005-04-28 20:19:01.000000000 -0500 -@@ -1104,7 +1104,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1120,6 +1120,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ *-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1263,6 +1266,40 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,59 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c_locale.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/c_locale.h 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,115 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, const int __size, const char* __fmt, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/collate_members.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = __wmask_type(); -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/messages_members.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-4.0.0/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/messages_members.h 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2005-04-28 01:23:02.000000000 -0500 -@@ -0,0 +1,692 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ __ret = pattern(); -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = -+ static_cast<wchar_t>(money_base::_S_atoms[__i]); -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = -+ static_cast<wchar_t>(money_base::_S_atoms[__i]); -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2005-04-28 01:20:20.000000000 -0500 -@@ -0,0 +1,173 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = 4; -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = 5; -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = -+ static_cast<wchar_t>(__num_base::_S_atoms_out[__i]); -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = -+ static_cast<wchar_t>(__num_base::_S_atoms_in[__j]); -+ } -+ else -+ { -+ // Named locale. -+ // NB: In the GNU model wchar_t is always 32 bit wide. -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+#endif -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = 4; -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = 5; -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-4.0.0/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/time_members.cc 2005-04-28 01:13:15.000000000 -0500 -@@ -0,0 +1,406 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, -+ __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ union { char *__s; wchar_t *__w; } __u; -+ -+ __u.__s = __nl_langinfo_l(_NL_WD_FMT, __cloc); -+ _M_data->_M_date_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_D_FMT, __cloc); -+ _M_data->_M_date_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WT_FMT, __cloc); -+ _M_data->_M_time_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_T_FMT, __cloc); -+ _M_data->_M_time_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WD_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WAM_STR, __cloc); -+ _M_data->_M_am = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WPM_STR, __cloc); -+ _M_data->_M_pm = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc); -+ _M_data->_M_am_pm_format = __u.__w; -+ -+ // Day names, starting with "C"'s Sunday. -+ __u.__s = __nl_langinfo_l(_NL_WDAY_1, __cloc); -+ _M_data->_M_day1 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_2, __cloc); -+ _M_data->_M_day2 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_3, __cloc); -+ _M_data->_M_day3 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_4, __cloc); -+ _M_data->_M_day4 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_5, __cloc); -+ _M_data->_M_day5 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_6, __cloc); -+ _M_data->_M_day6 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_7, __cloc); -+ _M_data->_M_day7 = __u.__w; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_1, __cloc); -+ _M_data->_M_aday1 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_2, __cloc); -+ _M_data->_M_aday2 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_3, __cloc); -+ _M_data->_M_aday3 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_4, __cloc); -+ _M_data->_M_aday4 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_5, __cloc); -+ _M_data->_M_aday5 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_6, __cloc); -+ _M_data->_M_aday6 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_7, __cloc); -+ _M_data->_M_aday7 = __u.__w; -+ -+ // Month names, starting with "C"'s January. -+ __u.__s = __nl_langinfo_l(_NL_WMON_1, __cloc); -+ _M_data->_M_month01 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_2, __cloc); -+ _M_data->_M_month02 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_3, __cloc); -+ _M_data->_M_month03 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_4, __cloc); -+ _M_data->_M_month04 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_5, __cloc); -+ _M_data->_M_month05 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_6, __cloc); -+ _M_data->_M_month06 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_7, __cloc); -+ _M_data->_M_month07 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_8, __cloc); -+ _M_data->_M_month08 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_9, __cloc); -+ _M_data->_M_month09 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_10, __cloc); -+ _M_data->_M_month10 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_11, __cloc); -+ _M_data->_M_month11 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_12, __cloc); -+ _M_data->_M_month12 = __u.__w; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ __u.__s = __nl_langinfo_l(_NL_WABMON_1, __cloc); -+ _M_data->_M_amonth01 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_2, __cloc); -+ _M_data->_M_amonth02 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_3, __cloc); -+ _M_data->_M_amonth03 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_4, __cloc); -+ _M_data->_M_amonth04 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_5, __cloc); -+ _M_data->_M_amonth05 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_6, __cloc); -+ _M_data->_M_amonth06 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_7, __cloc); -+ _M_data->_M_amonth07 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_8, __cloc); -+ _M_data->_M_amonth08 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_9, __cloc); -+ _M_data->_M_amonth09 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_10, __cloc); -+ _M_data->_M_amonth10 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_11, __cloc); -+ _M_data->_M_amonth11 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_12, __cloc); -+ _M_data->_M_amonth12 = __u.__w; -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/time_members.h gcc-4.0.0/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-4.0.0-100/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/locale/uclibc/time_members.h 2004-05-22 18:46:31.000000000 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_base.h 2005-04-28 01:10:27.000000000 -0500 -@@ -0,0 +1,64 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+/** @file ctype_base.h -+ * This is an internal header file, included by other library headers. -+ * You should not attempt to use it directly. -+ */ -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ /// @brief Base class for ctype. -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_inline.h 2002-06-24 00:49:19.000000000 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2005-04-28 01:10:27.000000000 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/os_defines.h gcc-4.0.0/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-4.0.0-100/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/config/os/uclibc/os_defines.h 2005-04-28 01:10:27.000000000 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-4.0.0-100/libstdc++-v3/configure gcc-4.0.0/libstdc++-v3/configure ---- gcc-4.0.0-100/libstdc++-v3/configure 2005-04-30 13:06:53.683055232 -0500 -+++ gcc-4.0.0/libstdc++-v3/configure 2005-04-30 12:24:24.000000000 -0500 -@@ -3998,6 +3998,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5672,7 +5677,7 @@ - enableval="$enable_clocale" - - case "$enableval" in -- generic|gnu|ieee_1003.1-2001|yes|no|auto) ;; -+ generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto) ;; - *) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5 - echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;} - { (exit 1); exit 1; }; } ;; -@@ -5697,6 +5702,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ linux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ -@@ -5927,6 +5935,76 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-4.0.0-100/libstdc++-v3/configure.host gcc-4.0.0/libstdc++-v3/configure.host ---- gcc-4.0.0-100/libstdc++-v3/configure.host 2005-04-30 13:06:53.688054472 -0500 -+++ gcc-4.0.0/libstdc++-v3/configure.host 2005-04-28 20:20:32.000000000 -0500 -@@ -249,6 +249,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-4.0.0-100/libstdc++-v3/crossconfig.m4 gcc-4.0.0/libstdc++-v3/crossconfig.m4 ---- gcc-4.0.0-100/libstdc++-v3/crossconfig.m4 2005-04-30 13:06:53.689054320 -0500 -+++ gcc-4.0.0/libstdc++-v3/crossconfig.m4 2005-04-28 20:27:15.000000000 -0500 -@@ -142,6 +142,98 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -156,7 +248,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-4.0.0-100/libstdc++-v3/include/c_compatibility/wchar.h gcc-4.0.0/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-4.0.0-100/libstdc++-v3/include/c_compatibility/wchar.h 2005-04-30 13:06:53.690054168 -0500 -+++ gcc-4.0.0/libstdc++-v3/include/c_compatibility/wchar.h 2005-04-28 20:15:56.000000000 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-4.0.0-100/libstdc++-v3/include/c_std/std_cwchar.h gcc-4.0.0/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-4.0.0-100/libstdc++-v3/include/c_std/std_cwchar.h 2005-04-30 13:06:53.691054016 -0500 -+++ gcc-4.0.0/libstdc++-v3/include/c_std/std_cwchar.h 2005-04-28 20:15:56.000000000 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/4.0.3/300-libstdc++-pic.patch b/openwrt/toolchain/gcc/4.0.3/300-libstdc++-pic.patch deleted file mode 100644 index 63aed34ea5..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/300-libstdc++-pic.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -urN gcc-4.0.0-200/libstdc++-v3/src/Makefile.am gcc-4.0.0/libstdc++-v3/src/Makefile.am ---- gcc-4.0.0-200/libstdc++-v3/src/Makefile.am 2004-11-15 17:33:05.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/src/Makefile.am 2005-04-28 21:42:18.614344056 -0500 -@@ -214,6 +214,10 @@ - $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@ - - -+install-exec-local: -+ $(AR) cru libstdc++_pic.a *.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Added bits to build debug library. - if GLIBCXX_BUILD_DEBUG - all-local: build_debug -diff -urN gcc-4.0.0-200/libstdc++-v3/src/Makefile.in gcc-4.0.0/libstdc++-v3/src/Makefile.in ---- gcc-4.0.0-200/libstdc++-v3/src/Makefile.in 2005-02-01 00:56:27.000000000 -0600 -+++ gcc-4.0.0/libstdc++-v3/src/Makefile.in 2005-04-28 21:44:20.868758560 -0500 -@@ -625,7 +625,7 @@ - - install-data-am: install-data-local - --install-exec-am: install-toolexeclibLTLIBRARIES -+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local - - install-info: install-info-am - -@@ -664,7 +664,7 @@ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags uninstall uninstall-am uninstall-info-am \ -- uninstall-toolexeclibLTLIBRARIES -+ uninstall-toolexeclibLTLIBRARIES install-exec-local - - @GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE@libstdc++-symbol.ver: ${glibcxx_srcdir}/$(SYMVER_MAP) - @GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE@ cp ${glibcxx_srcdir}/$(SYMVER_MAP) ./libstdc++-symbol.ver -@@ -743,6 +743,11 @@ - install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) -+ -+install-exec-local: -+ $(AR) cru libstdc++_pic.a *.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/openwrt/toolchain/gcc/4.0.3/301-missing-execinfo_h.patch b/openwrt/toolchain/gcc/4.0.3/301-missing-execinfo_h.patch deleted file mode 100644 index 0e2092f3fb..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/301-missing-execinfo_h.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500 -+++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500 -@@ -500,7 +500,7 @@ - #ifdef __linux__ - # include <features.h> - # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ -- && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) - # ifndef GC_HAVE_BUILTIN_BACKTRACE - # define GC_HAVE_BUILTIN_BACKTRACE - # endif diff --git a/openwrt/toolchain/gcc/4.0.3/302-c99-snprintf.patch b/openwrt/toolchain/gcc/4.0.3/302-c99-snprintf.patch deleted file mode 100644 index dfb22d681b..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/302-c99-snprintf.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h-orig 2005-04-29 00:08:41.000000000 -0500 -+++ gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h 2005-04-29 00:08:45.000000000 -0500 -@@ -142,7 +142,7 @@ - using ::vsprintf; - } - --#if _GLIBCXX_USE_C99 -+#if _GLIBCXX_USE_C99 || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf diff --git a/openwrt/toolchain/gcc/4.0.3/303-c99-complex-ugly-hack.patch b/openwrt/toolchain/gcc/4.0.3/303-c99-complex-ugly-hack.patch deleted file mode 100644 index 2ccc80d9bb..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/303-c99-complex-ugly-hack.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- gcc-4.0.0/libstdc++-v3/configure-old 2005-04-30 22:04:48.061603912 -0500 -+++ gcc-4.0.0/libstdc++-v3/configure 2005-04-30 22:06:13.678588152 -0500 -@@ -7194,6 +7194,9 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - #include <complex.h> -+#ifdef __UCLIBC__ -+#error ugly hack to make sure configure test fails here for cross until uClibc supports the complex funcs -+#endif - int - main () - { diff --git a/openwrt/toolchain/gcc/4.0.3/602-sdk-libstdc++-includes.patch b/openwrt/toolchain/gcc/4.0.3/602-sdk-libstdc++-includes.patch deleted file mode 100644 index c7676ae6a2..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/602-sdk-libstdc++-includes.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN gcc-4.0.0-100/libstdc++-v3/fragment.am gcc-4.0.0/libstdc++-v3/fragment.am ---- gcc-4.0.0-100/libstdc++-v3/fragment.am 2004-10-25 15:32:40.000000000 -0500 -+++ gcc-4.0.0/libstdc++-v3/fragment.am 2005-04-28 21:48:43.000000000 -0500 -@@ -18,5 +18,5 @@ - $(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once - - # -I/-D flags to pass when compiling. --AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include - -diff -urN gcc-4.0.0-100/libstdc++-v3/libmath/Makefile.am gcc-4.0.0/libstdc++-v3/libmath/Makefile.am ---- gcc-4.0.0-100/libstdc++-v3/libmath/Makefile.am 2003-08-27 16:29:42.000000000 -0500 -+++ gcc-4.0.0/libstdc++-v3/libmath/Makefile.am 2005-04-28 21:48:43.000000000 -0500 -@@ -32,7 +32,7 @@ - - libmath_la_SOURCES = stubs.c - --AM_CPPFLAGS = $(CANADIAN_INCLUDES) -+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include - - # Only compiling "C" sources in this directory. - LIBTOOL = @LIBTOOL@ --tag CC diff --git a/openwrt/toolchain/gcc/4.0.3/800-arm-bigendian.patch b/openwrt/toolchain/gcc/4.0.3/800-arm-bigendian.patch deleted file mode 100644 index 307aea3ea3..0000000000 --- a/openwrt/toolchain/gcc/4.0.3/800-arm-bigendian.patch +++ /dev/null @@ -1,67 +0,0 @@ -By Lennert Buytenhek <buytenh@wantstofly.org> -Adds support for arm*b-linux* big-endian ARM targets - -See http://gcc.gnu.org/PR16350 - ---- gcc-4.0.3/gcc/config/arm/linux-elf.h -+++ gcc-4.0.3/gcc/config/arm/linux-elf.h -@@ -31,19 +31,33 @@ - /* Do not assume anything about header files. */ - #define NO_IMPLICIT_EXTERN_C - -+/* -+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* -+ * (big endian) configurations. -+ */ -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END -+#define TARGET_ENDIAN_OPTION "mbig-endian" -+#define TARGET_LINKER_EMULATION "armelfb_linux" -+#else -+#define TARGET_ENDIAN_DEFAULT 0 -+#define TARGET_ENDIAN_OPTION "mlittle-endian" -+#define TARGET_LINKER_EMULATION "armelf_linux" -+#endif -+ - #undef TARGET_DEFAULT_FLOAT_ABI - #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD - - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (0) -+#define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT) - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - --#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" -+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } - - /* The GNU C++ standard library requires that these macros be defined. */ - #undef CPLUSPLUS_CPP_SPEC -@@ -90,7 +104,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - - #define TARGET_OS_CPP_BUILTINS() \ ---- gcc-4.0.3/gcc/config.gcc -+++ gcc-4.0.3/gcc/config.gcc -@@ -672,6 +672,11 @@ - ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" -+ case $target in -+ arm*b-*) -+ tm_defines="TARGET_BIG_ENDIAN_DEFAULT=1 $tm_defines" -+ ;; -+ esac - tmake_file="${tmake_file} arm/t-arm arm/t-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - gnu_ld=yes diff --git a/openwrt/toolchain/gcc/4.1.0/100-uclibc-conf.patch b/openwrt/toolchain/gcc/4.1.0/100-uclibc-conf.patch deleted file mode 100644 index 49d576c7dd..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/100-uclibc-conf.patch +++ /dev/null @@ -1,544 +0,0 @@ ---- gcc-4.1.0/gcc/config/t-linux-uclibc -+++ gcc-4.1.0/gcc/config/t-linux-uclibc -@@ -0,0 +1,5 @@ -+# Remove glibc specific files added in t-linux -+SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES)) -+ -+# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc -+LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH)) ---- gcc-4.1.0/gcc/config.gcc -+++ gcc-4.1.0/gcc/config.gcc -@@ -1887,7 +1887,7 @@ s390x-ibm-tpf*) - ;; - sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \ - sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ -- sh-*-linux* | sh[346lbe]*-*-linux* | \ -+ sh*-*-linux* | sh[346lbe]*-*-linux* | \ - sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \ - sh64-*-netbsd* | sh64l*-*-netbsd*) - tmake_file="${tmake_file} sh/t-sh sh/t-elf" -@@ -2341,6 +2341,12 @@ m32c-*-elf*) - ;; - esac - -+# Rather than hook into each target, just do it after all the linux -+# targets have been processed -+case ${target} in -+*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" ; tmake_file="${tmake_file} t-linux-uclibc" -+esac -+ - case ${target} in - i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1) - tmake_file="${tmake_file} i386/t-gmm_malloc" ---- gcc-4.1.0/boehm-gc/configure -+++ gcc-4.1.0/boehm-gc/configure -@@ -4320,6 +4320,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/configure -+++ gcc-4.1.0/configure -@@ -1133,7 +1133,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) ---- gcc-4.1.0/configure.in -+++ gcc-4.1.0/configure.in -@@ -341,7 +341,7 @@ no) - ;; - "") - case "${target}" in -- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) -+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) - # Enable libmudflap by default in GNU and friends. - ;; - *-*-freebsd*) ---- gcc-4.1.0/contrib/regression/objs-gcc.sh -+++ gcc-4.1.0/contrib/regression/objs-gcc.sh -@@ -105,6 +105,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H - then - make all-gdb all-dejagnu all-ld || exit 1 - make install-gdb install-dejagnu install-ld || exit 1 -+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] -+ then -+ make all-gdb all-dejagnu all-ld || exit 1 -+ make install-gdb install-dejagnu install-ld || exit 1 - elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then - make bootstrap || exit 1 - make install || exit 1 ---- gcc-4.1.0/gcc/config/alpha/linux-elf.h -+++ gcc-4.1.0/gcc/config/alpha/linux-elf.h -@@ -27,7 +27,11 @@ Boston, MA 02110-1301, USA. */ - #define SUBTARGET_EXTRA_SPECS \ - { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, - -+#if defined USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else - #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - - #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ - %{O*:-O3} %{!O*:-O1} \ ---- gcc-4.1.0/gcc/config/arm/linux-elf.h -+++ gcc-4.1.0/gcc/config/arm/linux-elf.h -@@ -51,7 +51,11 @@ - - #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc" - -+#ifdef USE_UCLIBC -+#define LINUX_TARGET_INTERPRETER "/lib/ld-uClibc.so.0" -+#else - #define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2" -+#endif - - #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \ - %{b} \ ---- gcc-4.1.0/gcc/config/cris/linux.h -+++ gcc-4.1.0/gcc/config/cris/linux.h -@@ -73,6 +73,25 @@ Boston, MA 02110-1301, USA. */ - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - -+#ifdef USE_UCLIBC -+ -+#undef CRIS_SUBTARGET_VERSION -+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc" -+ -+#undef CRIS_LINK_SUBTARGET_SPEC -+#define CRIS_LINK_SUBTARGET_SPEC \ -+ "-mcrislinux\ -+ -rpath-link include/asm/../..%s\ -+ %{shared} %{static}\ -+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \ -+ %{!r:%{O2|O3: --gc-sections}}" -+ -+#else /* USE_UCLIBC */ -+ - #undef CRIS_SUBTARGET_VERSION - #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu" - -@@ -87,6 +106,8 @@ Boston, MA 02110-1301, USA. */ - %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\ - %{!r:%{O2|O3: --gc-sections}}" - -+#endif /* USE_UCLIBC */ -+ - - /* Node: Run-time Target */ - ---- gcc-4.1.0/gcc/config/i386/linux.h -+++ gcc-4.1.0/gcc/config/i386/linux.h -@@ -107,6 +107,11 @@ Boston, MA 02110-1301, USA. */ - #define LINK_EMULATION "elf_i386" - #define DYNAMIC_LINKER "/lib/ld-linux.so.2" - -+#if defined USE_UCLIBC -+#undef DYNAMIC_LINKER -+#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#endif -+ - #undef SUBTARGET_EXTRA_SPECS - #define SUBTARGET_EXTRA_SPECS \ - { "link_emulation", LINK_EMULATION },\ ---- gcc-4.1.0/gcc/config/i386/linux64.h -+++ gcc-4.1.0/gcc/config/i386/linux64.h -@@ -54,14 +54,21 @@ Boston, MA 02110-1301, USA. */ - When the -shared link option is used a final link is not being - done. */ - -+#ifdef USE_UCLIBC -+#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \ -+ %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \ -+ %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \ - %{static:-static}}" - - /* Similar to standard Linux, but adding -ffast-math support. */ ---- gcc-4.1.0/gcc/config/ia64/linux.h -+++ gcc-4.1.0/gcc/config/ia64/linux.h -@@ -37,13 +37,18 @@ do { \ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - ---- gcc-4.1.0/gcc/config/m68k/linux.h -+++ gcc-4.1.0/gcc/config/m68k/linux.h -@@ -123,12 +123,17 @@ Boston, MA 02110-1301, USA. */ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "-m m68kelf %{shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static}}" - - /* For compatibility with linux/a.out */ ---- gcc-4.1.0/gcc/config/mips/linux.h -+++ gcc-4.1.0/gcc/config/mips/linux.h -@@ -105,6 +105,11 @@ Boston, MA 02110-1301, USA. */ - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #define LINK_SPEC \ - "%(endian_spec) \ - %{shared:-shared} \ -@@ -112,7 +117,7 @@ Boston, MA 02110-1301, USA. */ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - - #undef SUBTARGET_ASM_SPEC ---- gcc-4.1.0/gcc/config/pa/pa-linux.h -+++ gcc-4.1.0/gcc/config/pa/pa-linux.h -@@ -49,13 +49,18 @@ Boston, MA 02110-1301, USA. */ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "\ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}" - - /* glibc's profiling functions don't need gcc to allocate counters. */ ---- gcc-4.1.0/gcc/config/rs6000/linux.h -+++ gcc-4.1.0/gcc/config/rs6000/linux.h -@@ -72,7 +72,11 @@ - #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" - - #undef LINK_OS_DEFAULT_SPEC -+#ifdef USE_UCLIBC -+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" -+#else - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -+#endif - - #define LINK_GCC_C_SEQUENCE_SPEC \ - "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}" ---- gcc-4.1.0/gcc/config/rs6000/sysv4.h -+++ gcc-4.1.0/gcc/config/rs6000/sysv4.h -@@ -866,6 +866,7 @@ extern int fixuplabelno; - mcall-linux : %(link_os_linux) ; \ - mcall-gnu : %(link_os_gnu) ; \ - mcall-netbsd : %(link_os_netbsd) ; \ -+ mcall-linux-uclibc : %(link_os_linux_uclibc); \ - mcall-openbsd: %(link_os_openbsd) ; \ - : %(link_os_default) }" - -@@ -1043,6 +1044,10 @@ extern int fixuplabelno; - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" - -+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" -+ - #if defined(HAVE_LD_EH_FRAME_HDR) - # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -@@ -1209,6 +1214,7 @@ ncrtn.o%s" - { "link_os_sim", LINK_OS_SIM_SPEC }, \ - { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \ - { "link_os_linux", LINK_OS_LINUX_SPEC }, \ -+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ - { "link_os_gnu", LINK_OS_GNU_SPEC }, \ - { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ - { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ ---- gcc-4.1.0/gcc/config/s390/linux.h -+++ gcc-4.1.0/gcc/config/s390/linux.h -@@ -77,6 +77,13 @@ Software Foundation, 51 Franklin Street, - #define MULTILIB_DEFAULTS { "m31" } - #endif - -+#ifdef USE_UCLIBC -+#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0" -+#else -+#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1" -+#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1" -+#endif - #undef LINK_SPEC - #define LINK_SPEC \ - "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ -@@ -86,8 +93,8 @@ Software Foundation, 51 Franklin Street, - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker: \ -- %{m31:-dynamic-linker /lib/ld.so.1} \ -- %{m64:-dynamic-linker /lib/ld64.so.1}}}}" -+ %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \ -+ %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}" - - - #define TARGET_ASM_FILE_END file_end_indicate_exec_stack ---- gcc-4.1.0/gcc/config/sh/linux.h -+++ gcc-4.1.0/gcc/config/sh/linux.h -@@ -56,12 +56,21 @@ Boston, MA 02110-1301, USA. */ - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" - #undef SUBTARGET_LINK_SPEC -+#ifdef USE_UCLIBC -+#define SUBTARGET_LINK_SPEC \ -+ "%{shared:-shared} \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \ -+ %{static:-static}" -+#else - #define SUBTARGET_LINK_SPEC \ - "%{shared:-shared} \ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ - %{static:-static}" -+#endif - - /* Output assembler code to STREAM to call the profiler. */ - ---- gcc-4.1.0/gcc/config/sparc/linux.h -+++ gcc-4.1.0/gcc/config/sparc/linux.h -@@ -125,6 +125,11 @@ Boston, MA 02110-1301, USA. */ - - /* If ELF is the default format, we should not use /lib/elf. */ - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #undef LINK_SPEC - #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!mno-relax:%{!r:-relax}} \ -@@ -132,7 +137,7 @@ Boston, MA 02110-1301, USA. */ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}}" - - /* The sun bundled assembler doesn't accept -Yd, (and neither does gas). ---- gcc-4.1.0/gcc/config/sparc/linux64.h -+++ gcc-4.1.0/gcc/config/sparc/linux64.h -@@ -162,12 +162,17 @@ Boston, MA 02110-1301, USA. */ - { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ - { "link_arch", LINK_ARCH_SPEC }, - -+#ifdef USE_UCLIBC -+#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#else -+#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#endif - #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ - %{!shared: \ - %{!ibcs: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ -- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ -+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \ - %{static:-static}}} \ - " - ---- gcc-4.1.0/libffi/configure -+++ gcc-4.1.0/libffi/configure -@@ -3457,6 +3457,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/libgfortran/configure -+++ gcc-4.1.0/libgfortran/configure -@@ -3699,6 +3699,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/libjava/configure -+++ gcc-4.1.0/libjava/configure -@@ -5137,6 +5137,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/libmudflap/configure -+++ gcc-4.1.0/libmudflap/configure -@@ -5382,6 +5382,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/libobjc/configure -+++ gcc-4.1.0/libobjc/configure -@@ -3312,6 +3312,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' ---- gcc-4.1.0/libtool.m4 -+++ gcc-4.1.0/libtool.m4 -@@ -743,6 +743,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] ---- gcc-4.1.0/ltconfig -+++ gcc-4.1.0/ltconfig -@@ -603,6 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)- - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in -+linux-uclibc*) ;; - linux-gnu*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac -@@ -1274,6 +1275,23 @@ linux-gnu*) - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no ---- gcc-4.1.0/zlib/configure -+++ gcc-4.1.0/zlib/configure -@@ -3426,6 +3426,11 @@ linux-gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' diff --git a/openwrt/toolchain/gcc/4.1.0/200-uclibc-locale.patch b/openwrt/toolchain/gcc/4.1.0/200-uclibc-locale.patch deleted file mode 100644 index bba729ce79..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/200-uclibc-locale.patch +++ /dev/null @@ -1,3246 +0,0 @@ -diff -urN gcc-4.1.0/libstdc++-v3/acinclude.m4 gcc-4.1.0-patched/libstdc++-v3/acinclude.m4 ---- gcc-4.1.0/libstdc++-v3/acinclude.m4 2005-04-11 19:13:06.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/acinclude.m4 2005-04-30 19:36:16.917899167 -0500 -@@ -1047,7 +1047,7 @@ - AC_MSG_CHECKING([for C locale to use]) - GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@], - [use MODEL for target locale package], -- [permit generic|gnu|ieee_1003.1-2001|yes|no|auto]) -+ [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto]) - - # If they didn't use this option switch, or if they specified --enable - # with no specific model, we'll have to look for one. If they -@@ -1063,6 +1063,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ *-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - AC_EGREP_CPP([_GLIBCXX_ok], [ - #include <features.h> -@@ -1206,6 +1209,41 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ AC_MSG_RESULT(uclibc) -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no) -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ AC_SUBST(glibcxx_MOFILES) -+ AC_SUBST(glibcxx_POFILES) -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c++locale_internal.h 2005-04-30 19:36:16.918898999 -0500 -@@ -0,0 +1,63 @@ -+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*- -+ -+// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// Written by Jakub Jelinek <jakub@redhat.com> -+ -+#include <bits/c++config.h> -+#include <clocale> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning clean this up -+#endif -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ -+extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l; -+extern "C" __typeof(strcoll_l) __strcoll_l; -+extern "C" __typeof(strftime_l) __strftime_l; -+extern "C" __typeof(strtod_l) __strtod_l; -+extern "C" __typeof(strtof_l) __strtof_l; -+extern "C" __typeof(strtold_l) __strtold_l; -+extern "C" __typeof(strxfrm_l) __strxfrm_l; -+extern "C" __typeof(newlocale) __newlocale; -+extern "C" __typeof(freelocale) __freelocale; -+extern "C" __typeof(duplocale) __duplocale; -+extern "C" __typeof(uselocale) __uselocale; -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+extern "C" __typeof(iswctype_l) __iswctype_l; -+extern "C" __typeof(towlower_l) __towlower_l; -+extern "C" __typeof(towupper_l) __towupper_l; -+extern "C" __typeof(wcscoll_l) __wcscoll_l; -+extern "C" __typeof(wcsftime_l) __wcsftime_l; -+extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l; -+extern "C" __typeof(wctype_l) __wctype_l; -+#endif -+ -+#endif // GLIBC 2.3 and later -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.cc 2005-04-30 19:36:16.919898830 -0500 -@@ -0,0 +1,160 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <cerrno> // For errno -+#include <locale> -+#include <stdexcept> -+#include <langinfo.h> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strtol_l(S, E, B, L) strtol((S), (E), (B)) -+#define __strtoul_l(S, E, B, L) strtoul((S), (E), (B)) -+#define __strtoll_l(S, E, B, L) strtoll((S), (E), (B)) -+#define __strtoull_l(S, E, B, L) strtoull((S), (E), (B)) -+#define __strtof_l(S, E, L) strtof((S), (E)) -+#define __strtod_l(S, E, L) strtod((S), (E)) -+#define __strtold_l(S, E, L) strtold((S), (E)) -+#warning should dummy __newlocale check for C|POSIX ? -+#define __newlocale(a, b, c) NULL -+#define __freelocale(a) ((void)0) -+#define __duplocale(a) __c_locale() -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ float __f = __strtof_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __f; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ double __d = __strtod_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __d; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ template<> -+ void -+ __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err, -+ const __c_locale& __cloc) -+ { -+ if (!(__err & ios_base::failbit)) -+ { -+ char* __sanity; -+ errno = 0; -+ long double __ld = __strtold_l(__s, &__sanity, __cloc); -+ if (__sanity != __s && errno != ERANGE) -+ __v = __ld; -+ else -+ __err |= ios_base::failbit; -+ } -+ } -+ -+ void -+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, -+ __c_locale __old) -+ { -+ __cloc = __newlocale(1 << LC_ALL, __s, __old); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ if (!__cloc) -+ { -+ // This named locale is not supported by the underlying OS. -+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale " -+ "name not valid")); -+ } -+#endif -+ } -+ -+ void -+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc) -+ { -+ if (_S_get_c_locale() != __cloc) -+ __freelocale(__cloc); -+ } -+ -+ __c_locale -+ locale::facet::_S_clone_c_locale(__c_locale& __cloc) -+ { return __duplocale(__cloc); } -+} // namespace std -+ -+namespace __gnu_cxx -+{ -+ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = -+ { -+ "LC_CTYPE", -+ "LC_NUMERIC", -+ "LC_TIME", -+ "LC_COLLATE", -+ "LC_MONETARY", -+ "LC_MESSAGES", -+#if _GLIBCXX_NUM_CATEGORIES != 0 -+ "LC_PAPER", -+ "LC_NAME", -+ "LC_ADDRESS", -+ "LC_TELEPHONE", -+ "LC_MEASUREMENT", -+ "LC_IDENTIFICATION" -+#endif -+ }; -+} -+ -+namespace std -+{ -+ const char* const* const locale::_S_categories = __gnu_cxx::category_names; -+} // namespace std -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/c_locale.h 2005-04-30 19:36:16.920898661 -0500 -@@ -0,0 +1,117 @@ -+// Wrapper for underlying C-language localization -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.8 Standard locale categories. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifndef _C_LOCALE_H -+#define _C_LOCALE_H 1 -+ -+#pragma GCC system_header -+ -+#include <cstring> // get std::strlen -+#include <cstdio> // get std::snprintf or std::sprintf -+#include <clocale> -+#include <langinfo.h> // For codecvt -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this -+#endif -+#ifdef __UCLIBC_HAS_LOCALE__ -+#include <iconv.h> // For codecvt using iconv, iconv_t -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+#include <libintl.h> // For messages -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning what is _GLIBCXX_C_LOCALE_GNU for -+#endif -+#define _GLIBCXX_C_LOCALE_GNU 1 -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix categories -+#endif -+// #define _GLIBCXX_NUM_CATEGORIES 6 -+#define _GLIBCXX_NUM_CATEGORIES 0 -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+namespace __gnu_cxx -+{ -+ extern "C" __typeof(uselocale) __uselocale; -+} -+#endif -+ -+namespace std -+{ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ typedef __locale_t __c_locale; -+#else -+ typedef int* __c_locale; -+#endif -+ -+ // Convert numeric value of type _Tv to string and return length of -+ // string. If snprintf is available use it, otherwise fall back to -+ // the unsafe sprintf which, in general, can be dangerous and should -+ // be avoided. -+ template<typename _Tv> -+ int -+ __convert_from_v(char* __out, -+ const int __size __attribute__ ((__unused__)), -+ const char* __fmt, -+#ifdef __UCLIBC_HAS_XCLOCALE__ -+ _Tv __v, const __c_locale& __cloc, int __prec) -+ { -+ __c_locale __old = __gnu_cxx::__uselocale(__cloc); -+#else -+ _Tv __v, const __c_locale&, int __prec) -+ { -+# ifdef __UCLIBC_HAS_LOCALE__ -+ char* __old = std::setlocale(LC_ALL, NULL); -+ char* __sav = new char[std::strlen(__old) + 1]; -+ std::strcpy(__sav, __old); -+ std::setlocale(LC_ALL, "C"); -+# endif -+#endif -+ -+ const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v); -+ -+#ifdef __UCLIBC_HAS_XCLOCALE__ -+ __gnu_cxx::__uselocale(__old); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ std::setlocale(LC_ALL, __sav); -+ delete [] __sav; -+#endif -+ return __ret; -+ } -+} -+ -+#endif -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/codecvt_members.cc 2005-04-30 19:36:16.921898492 -0500 -@@ -0,0 +1,306 @@ -+// std::codecvt implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.5 - Template class codecvt -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+namespace std -+{ -+ // Specializations. -+#ifdef _GLIBCXX_USE_WCHAR_T -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_out(state_type& __state, const intern_type* __from, -+ const intern_type* __from_end, const intern_type*& __from_next, -+ extern_type* __to, extern_type* __to_end, -+ extern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // wcsnrtombs is *very* fast but stops if encounters NUL characters: -+ // in case we fall back to wcrtomb and then continue, in a loop. -+ // NB: wcsnrtombs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0', -+ __from_end - __from_next); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ const size_t __conv = wcsnrtombs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // wcrtomb. -+ for (; __from < __from_next; ++__from) -+ __to_next += wcrtomb(__to_next, *__from, &__tmp_state); -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ extern_type __buf[MB_LEN_MAX]; -+ __tmp_state = __state; -+ const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state); -+ if (__conv > static_cast<size_t>(__to_end - __to_next)) -+ __ret = partial; -+ else -+ { -+ memcpy(__to_next, __buf, __conv); -+ __state = __tmp_state; -+ __to_next += __conv; -+ ++__from_next; -+ } -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ codecvt_base::result -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_in(state_type& __state, const extern_type* __from, -+ const extern_type* __from_end, const extern_type*& __from_next, -+ intern_type* __to, intern_type* __to_end, -+ intern_type*& __to_next) const -+ { -+ result __ret = ok; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we store a L'\0' and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ for (__from_next = __from, __to_next = __to; -+ __from_next < __from_end && __to_next < __to_end -+ && __ret == ok;) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0', -+ __from_end -+ - __from_next)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __from_end; -+ -+ __from = __from_next; -+ size_t __conv = mbsnrtowcs(__to_next, &__from_next, -+ __from_chunk_end - __from_next, -+ __to_end - __to_next, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (;; ++__to_next, __from += __conv) -+ { -+ __conv = mbrtowc(__to_next, __from, __from_end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __from_next = __from; -+ __state = __tmp_state; -+ __ret = error; -+ } -+ else if (__from_next && __from_next < __from_chunk_end) -+ { -+ // It is unclear what to return in this case (see DR 382). -+ __to_next += __conv; -+ __ret = partial; -+ } -+ else -+ { -+ __from_next = __from_chunk_end; -+ __to_next += __conv; -+ } -+ -+ if (__from_next < __from_end && __ret == ok) -+ { -+ if (__to_next < __to_end) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from_next; -+ *__to_next++ = L'\0'; -+ } -+ else -+ __ret = partial; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_encoding() const throw() -+ { -+ // XXX This implementation assumes that the encoding is -+ // stateless and is either single-byte or variable-width. -+ int __ret = 0; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ if (MB_CUR_MAX == 1) -+ __ret = 1; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_max_length() const throw() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ // XXX Probably wrong for stateful encodings. -+ int __ret = MB_CUR_MAX; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __ret; -+ } -+ -+ int -+ codecvt<wchar_t, char, mbstate_t>:: -+ do_length(state_type& __state, const extern_type* __from, -+ const extern_type* __end, size_t __max) const -+ { -+ int __ret = 0; -+ state_type __tmp_state(__state); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_codecvt); -+#endif -+ -+ // mbsnrtowcs is *very* fast but stops if encounters NUL characters: -+ // in case we advance past it and then continue, in a loop. -+ // NB: mbsnrtowcs is a GNU extension -+ -+ // A dummy internal buffer is needed in order for mbsnrtocws to consider -+ // its fourth parameter (it wouldn't with NULL as first parameter). -+ wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t) -+ * __max)); -+ while (__from < __end && __max) -+ { -+ const extern_type* __from_chunk_end; -+ __from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0', -+ __end -+ - __from)); -+ if (!__from_chunk_end) -+ __from_chunk_end = __end; -+ -+ const extern_type* __tmp_from = __from; -+ size_t __conv = mbsnrtowcs(__to, &__from, -+ __from_chunk_end - __from, -+ __max, &__state); -+ if (__conv == static_cast<size_t>(-1)) -+ { -+ // In case of error, in order to stop at the exact place we -+ // have to start again from the beginning with a series of -+ // mbrtowc. -+ for (__from = __tmp_from;; __from += __conv) -+ { -+ __conv = mbrtowc(NULL, __from, __end - __from, -+ &__tmp_state); -+ if (__conv == static_cast<size_t>(-1) -+ || __conv == static_cast<size_t>(-2)) -+ break; -+ } -+ __state = __tmp_state; -+ __ret += __from - __tmp_from; -+ break; -+ } -+ if (!__from) -+ __from = __from_chunk_end; -+ -+ __ret += __from - __tmp_from; -+ __max -= __conv; -+ -+ if (__from < __end && __max) -+ { -+ // XXX Probably wrong for stateful encodings -+ __tmp_state = __state; -+ ++__from; -+ ++__ret; -+ --__max; -+ } -+ } -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ -+ return __ret; -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/collate_members.cc 2005-04-30 19:36:16.922898323 -0500 -@@ -0,0 +1,80 @@ -+// std::collate implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.4.1.2 collate virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __strcoll_l(S1, S2, L) strcoll((S1), (S2)) -+#define __strxfrm_l(S1, S2, N, L) strxfrm((S1), (S2), (N)) -+#define __wcscoll_l(S1, S2, L) wcscoll((S1), (S2)) -+#define __wcsxfrm_l(S1, S2, N, L) wcsxfrm((S1), (S2), (N)) -+#endif -+ -+namespace std -+{ -+ // These are basically extensions to char_traits, and perhaps should -+ // be put there instead of here. -+ template<> -+ int -+ collate<char>::_M_compare(const char* __one, const char* __two) const -+ { -+ int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<char>::_M_transform(char* __to, const char* __from, -+ size_t __n) const -+ { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ int -+ collate<wchar_t>::_M_compare(const wchar_t* __one, -+ const wchar_t* __two) const -+ { -+ int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate); -+ return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0); -+ } -+ -+ template<> -+ size_t -+ collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from, -+ size_t __n) const -+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/ctype_members.cc 2005-04-30 19:36:16.923898155 -0500 -@@ -0,0 +1,300 @@ -+// std::ctype implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.1.1.2 ctype virtual functions. -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __wctype_l(S, L) wctype((S)) -+#define __towupper_l(C, L) towupper((C)) -+#define __towlower_l(C, L) towlower((C)) -+#define __iswctype_l(C, M, L) iswctype((C), (M)) -+#endif -+ -+namespace std -+{ -+ // NB: The other ctype<char> specializations are in src/locale.cc and -+ // various /config/os/* files. -+ template<> -+ ctype_byname<char>::ctype_byname(const char* __s, size_t __refs) -+ : ctype<char>(0, false, __refs) -+ { -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_ctype); -+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper; -+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower; -+ this->_M_table = this->_M_c_locale_ctype->__ctype_b; -+#endif -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ ctype<wchar_t>::__wmask_type -+ ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const -+ { -+ __wmask_type __ret; -+ switch (__m) -+ { -+ case space: -+ __ret = __wctype_l("space", _M_c_locale_ctype); -+ break; -+ case print: -+ __ret = __wctype_l("print", _M_c_locale_ctype); -+ break; -+ case cntrl: -+ __ret = __wctype_l("cntrl", _M_c_locale_ctype); -+ break; -+ case upper: -+ __ret = __wctype_l("upper", _M_c_locale_ctype); -+ break; -+ case lower: -+ __ret = __wctype_l("lower", _M_c_locale_ctype); -+ break; -+ case alpha: -+ __ret = __wctype_l("alpha", _M_c_locale_ctype); -+ break; -+ case digit: -+ __ret = __wctype_l("digit", _M_c_locale_ctype); -+ break; -+ case punct: -+ __ret = __wctype_l("punct", _M_c_locale_ctype); -+ break; -+ case xdigit: -+ __ret = __wctype_l("xdigit", _M_c_locale_ctype); -+ break; -+ case alnum: -+ __ret = __wctype_l("alnum", _M_c_locale_ctype); -+ break; -+ case graph: -+ __ret = __wctype_l("graph", _M_c_locale_ctype); -+ break; -+ default: -+ __ret = __wmask_type(); -+ } -+ return __ret; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_toupper(wchar_t __c) const -+ { return __towupper_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towupper_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ wchar_t -+ ctype<wchar_t>::do_tolower(wchar_t __c) const -+ { return __towlower_l(__c, _M_c_locale_ctype); } -+ -+ const wchar_t* -+ ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi) -+ { -+ *__lo = __towlower_l(*__lo, _M_c_locale_ctype); -+ ++__lo; -+ } -+ return __hi; -+ } -+ -+ bool -+ ctype<wchar_t>:: -+ do_is(mask __m, wchar_t __c) const -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ bool __ret = false; -+ const size_t __bitmasksize = 11; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__m & _M_bit[__bitcur] -+ && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ { -+ __ret = true; -+ break; -+ } -+ return __ret; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const -+ { -+ for (; __lo < __hi; ++__vec, ++__lo) -+ { -+ // Highest bitmask in ctype_base == 10, but extra in "C" -+ // library for blank. -+ const size_t __bitmasksize = 11; -+ mask __m = 0; -+ for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur) -+ if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype)) -+ __m |= _M_bit[__bitcur]; -+ *__vec = __m; -+ } -+ return __hi; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const -+ { -+ while (__lo < __hi && !this->do_is(__m, *__lo)) -+ ++__lo; -+ return __lo; -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const -+ { -+ while (__lo < __hi && this->do_is(__m, *__lo) != 0) -+ ++__lo; -+ return __lo; -+ } -+ -+ wchar_t -+ ctype<wchar_t>:: -+ do_widen(char __c) const -+ { return _M_widen[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<wchar_t>:: -+ do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const -+ { -+ while (__lo < __hi) -+ { -+ *__dest = _M_widen[static_cast<unsigned char>(*__lo)]; -+ ++__lo; -+ ++__dest; -+ } -+ return __hi; -+ } -+ -+ char -+ ctype<wchar_t>:: -+ do_narrow(wchar_t __wc, char __dfault) const -+ { -+ if (__wc >= 0 && __wc < 128 && _M_narrow_ok) -+ return _M_narrow[__wc]; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ const int __c = wctob(__wc); -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ -+ const wchar_t* -+ ctype<wchar_t>:: -+ do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault, -+ char* __dest) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ if (_M_narrow_ok) -+ while (__lo < __hi) -+ { -+ if (*__lo >= 0 && *__lo < 128) -+ *__dest = _M_narrow[*__lo]; -+ else -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ } -+ ++__lo; -+ ++__dest; -+ } -+ else -+ while (__lo < __hi) -+ { -+ const int __c = wctob(*__lo); -+ *__dest = (__c == EOF ? __dfault : static_cast<char>(__c)); -+ ++__lo; -+ ++__dest; -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ return __hi; -+ } -+ -+ void -+ ctype<wchar_t>::_M_initialize_ctype() -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_ctype); -+#endif -+ wint_t __i; -+ for (__i = 0; __i < 128; ++__i) -+ { -+ const int __c = wctob(__i); -+ if (__c == EOF) -+ break; -+ else -+ _M_narrow[__i] = static_cast<char>(__c); -+ } -+ if (__i == 128) -+ _M_narrow_ok = true; -+ else -+ _M_narrow_ok = false; -+ for (size_t __j = 0; -+ __j < sizeof(_M_widen) / sizeof(wint_t); ++__j) -+ _M_widen[__j] = btowc(__j); -+ -+ for (size_t __k = 0; __k <= 11; ++__k) -+ { -+ _M_bit[__k] = static_cast<mask>(_ISbit(__k)); -+ _M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]); -+ } -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#endif -+ } -+#endif // _GLIBCXX_USE_WCHAR_T -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.cc 2005-04-30 19:36:16.925897817 -0500 -@@ -0,0 +1,100 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix gettext stuff -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__dcgettext(const char *domainname, -+ const char *msgid, int category); -+#undef gettext -+#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES) -+#else -+#undef gettext -+#define gettext(msgid) (msgid) -+#endif -+ -+namespace std -+{ -+ // Specializations. -+ template<> -+ string -+ messages<char>::do_get(catalog, int, int, const string& __dfault) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ const char* __msg = const_cast<const char*>(gettext(__dfault.c_str())); -+ __uselocale(__old); -+ return string(__msg); -+#elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ const char* __msg = gettext(__dfault.c_str()); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return string(__msg); -+#else -+ const char* __msg = gettext(__dfault.c_str()); -+ return string(__msg); -+#endif -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ wstring -+ messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const -+ { -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(_M_c_locale_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ __uselocale(__old); -+ return _M_convert_from_char(__msg); -+# elif defined __UCLIBC_HAS_LOCALE__ -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_messages); -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ setlocale(LC_ALL, __old); -+ free(__old); -+ return _M_convert_from_char(__msg); -+# else -+ char* __msg = gettext(_M_convert_to_char(__dfault)); -+ return _M_convert_from_char(__msg); -+# endif -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/messages_members.h 2005-04-30 19:36:16.925897817 -0500 -@@ -0,0 +1,118 @@ -+// std::messages implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.7.1.2 messages functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix prototypes for *textdomain funcs -+#endif -+#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ -+extern "C" char *__textdomain(const char *domainname); -+extern "C" char *__bindtextdomain(const char *domainname, -+ const char *dirname); -+#else -+#undef __textdomain -+#undef __bindtextdomain -+#define __textdomain(D) ((void)0) -+#define __bindtextdomain(D,P) ((void)0) -+#endif -+ -+ // Non-virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::messages(size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_get_c_locale()), -+ _M_name_messages(_S_get_c_name()) -+ { } -+ -+ template<typename _CharT> -+ messages<_CharT>::messages(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)), -+ _M_name_messages(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_messages = __tmp; -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, -+ const char* __dir) const -+ { -+ __bindtextdomain(__s.c_str(), __dir); -+ return this->do_open(__s, __loc); -+ } -+ -+ // Virtual member functions. -+ template<typename _CharT> -+ messages<_CharT>::~messages() -+ { -+ if (_M_name_messages != _S_get_c_name()) -+ delete [] _M_name_messages; -+ _S_destroy_c_locale(_M_c_locale_messages); -+ } -+ -+ template<typename _CharT> -+ typename messages<_CharT>::catalog -+ messages<_CharT>::do_open(const basic_string<char>& __s, -+ const locale&) const -+ { -+ // No error checking is done, assume the catalog exists and can -+ // be used. -+ __textdomain(__s.c_str()); -+ return 0; -+ } -+ -+ template<typename _CharT> -+ void -+ messages<_CharT>::do_close(catalog) const -+ { } -+ -+ // messages_byname -+ template<typename _CharT> -+ messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs) -+ : messages<_CharT>(__refs) -+ { -+ if (this->_M_name_messages != locale::facet::_S_get_c_name()) -+ delete [] this->_M_name_messages; -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ this->_M_name_messages = __tmp; -+ -+ if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0) -+ { -+ this->_S_destroy_c_locale(this->_M_c_locale_messages); -+ this->_S_create_c_locale(this->_M_c_locale_messages, __s); -+ } -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/monetary_members.cc 2005-04-30 19:36:16.927897479 -0500 -@@ -0,0 +1,692 @@ -+// std::moneypunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.6.3.2 moneypunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning optimize this for uclibc -+#warning tailor for stub locale support -+#endif -+ -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ // Construct and return valid pattern consisting of some combination of: -+ // space none symbol sign value -+ money_base::pattern -+ money_base::_S_construct_pattern(char __precedes, char __space, char __posn) -+ { -+ pattern __ret; -+ -+ // This insanely complicated routine attempts to construct a valid -+ // pattern for use with monyepunct. A couple of invariants: -+ -+ // if (__precedes) symbol -> value -+ // else value -> symbol -+ -+ // if (__space) space -+ // else none -+ -+ // none == never first -+ // space never first or last -+ -+ // Any elegant implementations of this are welcome. -+ switch (__posn) -+ { -+ case 0: -+ case 1: -+ // 1 The sign precedes the value and symbol. -+ __ret.field[0] = sign; -+ if (__space) -+ { -+ // Pattern starts with sign. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[3] = symbol; -+ } -+ __ret.field[2] = space; -+ } -+ else -+ { -+ // Pattern starts with sign and ends with none. -+ if (__precedes) -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[1] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[3] = none; -+ } -+ break; -+ case 2: -+ // 2 The sign follows the value and symbol. -+ if (__space) -+ { -+ // Pattern either ends with sign. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[2] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[2] = symbol; -+ } -+ __ret.field[1] = space; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ // Pattern ends with sign then none. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = value; -+ } -+ else -+ { -+ __ret.field[0] = value; -+ __ret.field[1] = symbol; -+ } -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ break; -+ case 3: -+ // 3 The sign immediately precedes the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = sign; -+ __ret.field[1] = symbol; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = sign; -+ __ret.field[3] = symbol; -+ } -+ else -+ { -+ __ret.field[1] = sign; -+ __ret.field[2] = symbol; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ case 4: -+ // 4 The sign immediately follows the symbol. -+ if (__precedes) -+ { -+ __ret.field[0] = symbol; -+ __ret.field[1] = sign; -+ if (__space) -+ { -+ __ret.field[2] = space; -+ __ret.field[3] = value; -+ } -+ else -+ { -+ __ret.field[2] = value; -+ __ret.field[3] = none; -+ } -+ } -+ else -+ { -+ __ret.field[0] = value; -+ if (__space) -+ { -+ __ret.field[1] = space; -+ __ret.field[2] = symbol; -+ __ret.field[3] = sign; -+ } -+ else -+ { -+ __ret.field[1] = symbol; -+ __ret.field[2] = sign; -+ __ret.field[3] = none; -+ } -+ } -+ break; -+ default: -+ ; -+ } -+ return __ret; -+ } -+ -+ template<> -+ void -+ moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == true -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc, -+ const char*) -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<char, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = ""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = ""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = ""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP, -+ __cloc)); -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign); -+ -+ char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ if (!__nposn) -+ _M_data->_M_negative_sign = "()"; -+ else -+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN, -+ __cloc); -+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign); -+ -+ // _Intl == false -+ _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol); -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ } -+ } -+ -+ template<> -+ moneypunct<char, true>::~moneypunct() -+ { delete _M_data; } -+ -+ template<> -+ moneypunct<char, false>::~moneypunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, true>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = -+ static_cast<wchar_t>(money_base::_S_atoms[__i]); -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS, -+ __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ void -+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const char*) -+#else -+ const char* __name) -+#endif -+ { -+ if (!_M_data) -+ _M_data = new __moneypunct_cache<wchar_t, false>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = 0; -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = 0; -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = 0; -+ _M_data->_M_frac_digits = 0; -+ _M_data->_M_pos_format = money_base::_S_default_pattern; -+ _M_data->_M_neg_format = money_base::_S_default_pattern; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < money_base::_S_end; ++__i) -+ _M_data->_M_atoms[__i] = -+ static_cast<wchar_t>(money_base::_S_atoms[__i]); -+ } -+ else -+ { -+ // Named locale. -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __c_locale __old = __uselocale(__cloc); -+#else -+ // Switch to named locale so that mbsrtowcs will work. -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, __name); -+#endif -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning fix this... should be monetary -+#endif -+#ifdef __UCLIBC__ -+# ifdef __UCLIBC_HAS_XLOCALE__ -+ _M_data->_M_decimal_point = __cloc->decimal_point_wc; -+ _M_data->_M_thousands_sep = __cloc->thousands_sep_wc; -+# else -+ _M_data->_M_decimal_point = __global_locale->decimal_point_wc; -+ _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc; -+# endif -+#else -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+#endif -+ _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ -+ const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc); -+ const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc); -+ const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc); -+ -+ wchar_t* __wcs_ps = 0; -+ wchar_t* __wcs_ns = 0; -+ const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); -+ try -+ { -+ mbstate_t __state; -+ size_t __len; -+ __len = strlen(__cpossign); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ps = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state); -+ _M_data->_M_positive_sign = __wcs_ps; -+ } -+ else -+ _M_data->_M_positive_sign = L""; -+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign); -+ -+ __len = strlen(__cnegsign); -+ if (!__nposn) -+ _M_data->_M_negative_sign = L"()"; -+ else if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ __wcs_ns = new wchar_t[__len]; -+ mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state); -+ _M_data->_M_negative_sign = __wcs_ns; -+ } -+ else -+ _M_data->_M_negative_sign = L""; -+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign); -+ -+ // _Intl == true. -+ __len = strlen(__ccurr); -+ if (__len) -+ { -+ ++__len; -+ memset(&__state, 0, sizeof(mbstate_t)); -+ wchar_t* __wcs = new wchar_t[__len]; -+ mbsrtowcs(__wcs, &__ccurr, __len, &__state); -+ _M_data->_M_curr_symbol = __wcs; -+ } -+ else -+ _M_data->_M_curr_symbol = L""; -+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); -+ } -+ catch (...) -+ { -+ delete _M_data; -+ _M_data = 0; -+ delete __wcs_ps; -+ delete __wcs_ns; -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ __throw_exception_again; -+ } -+ -+ _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc)); -+ char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc)); -+ char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc)); -+ char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc)); -+ _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace, -+ __pposn); -+ char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc)); -+ char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc)); -+ _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace, -+ __nposn); -+ -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __uselocale(__old); -+#else -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ } -+ } -+ -+ template<> -+ moneypunct<wchar_t, true>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+ -+ template<> -+ moneypunct<wchar_t, false>::~moneypunct() -+ { -+ if (_M_data->_M_positive_sign_size) -+ delete [] _M_data->_M_positive_sign; -+ if (_M_data->_M_negative_sign_size -+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0) -+ delete [] _M_data->_M_negative_sign; -+ if (_M_data->_M_curr_symbol_size) -+ delete [] _M_data->_M_curr_symbol; -+ delete _M_data; -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/numeric_members.cc 2005-04-30 19:36:38.467261324 -0500 -@@ -0,0 +1,160 @@ -+// std::numpunct implementation details, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.3.1.2 numpunct virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#define _LIBC -+#include <locale> -+#undef _LIBC -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ numpunct<char>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = '.'; -+ _M_data->_M_thousands_sep = ','; -+ -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i]; -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j]; -+ } -+ else -+ { -+ // Named locale. -+ _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT, -+ __cloc)); -+ _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP, -+ __cloc)); -+ -+ // Check for NULL, which implies no grouping. -+ if (_M_data->_M_thousands_sep == '\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = "true"; -+ _M_data->_M_truename_size = 4; -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = "false"; -+ _M_data->_M_falsename_size = 5; -+ } -+ -+ template<> -+ numpunct<char>::~numpunct() -+ { delete _M_data; } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __numpunct_cache<wchar_t>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_data->_M_grouping = ""; -+ _M_data->_M_grouping_size = 0; -+ _M_data->_M_use_grouping = false; -+ -+ _M_data->_M_decimal_point = L'.'; -+ _M_data->_M_thousands_sep = L','; -+ -+ // Use ctype::widen code without the facet... -+ for (size_t __i = 0; __i < __num_base::_S_oend; ++__i) -+ _M_data->_M_atoms_out[__i] = -+ static_cast<wchar_t>(__num_base::_S_atoms_out[__i]); -+ -+ for (size_t __j = 0; __j < __num_base::_S_iend; ++__j) -+ _M_data->_M_atoms_in[__j] = -+ static_cast<wchar_t>(__num_base::_S_atoms_in[__j]); -+ } -+ else -+ { -+ // Named locale. -+ // NB: In the GNU model wchar_t is always 32 bit wide. -+ union { char *__s; wchar_t __w; } __u; -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc); -+ _M_data->_M_decimal_point = __u.__w; -+ -+ __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc); -+ _M_data->_M_thousands_sep = __u.__w; -+ -+ if (_M_data->_M_thousands_sep == L'\0') -+ _M_data->_M_grouping = ""; -+ else -+ _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc); -+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping); -+ } -+ -+ // NB: There is no way to extact this info from posix locales. -+ // _M_truename = __nl_langinfo_l(YESSTR, __cloc); -+ _M_data->_M_truename = L"true"; -+ _M_data->_M_truename_size = 4; -+ // _M_falsename = __nl_langinfo_l(NOSTR, __cloc); -+ _M_data->_M_falsename = L"false"; -+ _M_data->_M_falsename_size = 5; -+ } -+ -+ template<> -+ numpunct<wchar_t>::~numpunct() -+ { delete _M_data; } -+ #endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.cc 2005-04-30 19:36:16.929897142 -0500 -@@ -0,0 +1,406 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+#include <locale> -+#include <bits/c++locale_internal.h> -+ -+#ifdef __UCLIBC_MJN3_ONLY__ -+#warning tailor for stub locale support -+#endif -+#ifndef __UCLIBC_HAS_XLOCALE__ -+#define __nl_langinfo_l(N, L) nl_langinfo((N)) -+#endif -+ -+namespace std -+{ -+ template<> -+ void -+ __timepunct<char>:: -+ _M_put(char* __s, size_t __maxlen, const char* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ const size_t __len = __strftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = strftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = '\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<char>; -+ -+ if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = "%m/%d/%y"; -+ _M_data->_M_date_era_format = "%m/%d/%y"; -+ _M_data->_M_time_format = "%H:%M:%S"; -+ _M_data->_M_time_era_format = "%H:%M:%S"; -+ _M_data->_M_date_time_format = ""; -+ _M_data->_M_date_time_era_format = ""; -+ _M_data->_M_am = "AM"; -+ _M_data->_M_pm = "PM"; -+ _M_data->_M_am_pm_format = ""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = "Sunday"; -+ _M_data->_M_day2 = "Monday"; -+ _M_data->_M_day3 = "Tuesday"; -+ _M_data->_M_day4 = "Wednesday"; -+ _M_data->_M_day5 = "Thursday"; -+ _M_data->_M_day6 = "Friday"; -+ _M_data->_M_day7 = "Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = "Sun"; -+ _M_data->_M_aday2 = "Mon"; -+ _M_data->_M_aday3 = "Tue"; -+ _M_data->_M_aday4 = "Wed"; -+ _M_data->_M_aday5 = "Thu"; -+ _M_data->_M_aday6 = "Fri"; -+ _M_data->_M_aday7 = "Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = "January"; -+ _M_data->_M_month02 = "February"; -+ _M_data->_M_month03 = "March"; -+ _M_data->_M_month04 = "April"; -+ _M_data->_M_month05 = "May"; -+ _M_data->_M_month06 = "June"; -+ _M_data->_M_month07 = "July"; -+ _M_data->_M_month08 = "August"; -+ _M_data->_M_month09 = "September"; -+ _M_data->_M_month10 = "October"; -+ _M_data->_M_month11 = "November"; -+ _M_data->_M_month12 = "December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = "Jan"; -+ _M_data->_M_amonth02 = "Feb"; -+ _M_data->_M_amonth03 = "Mar"; -+ _M_data->_M_amonth04 = "Apr"; -+ _M_data->_M_amonth05 = "May"; -+ _M_data->_M_amonth06 = "Jun"; -+ _M_data->_M_amonth07 = "Jul"; -+ _M_data->_M_amonth08 = "Aug"; -+ _M_data->_M_amonth09 = "Sep"; -+ _M_data->_M_amonth10 = "Oct"; -+ _M_data->_M_amonth11 = "Nov"; -+ _M_data->_M_amonth12 = "Dec"; -+ } -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc); -+ _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc); -+ _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc); -+ _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT, -+ __cloc); -+ _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc); -+ _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc); -+ _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc); -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc); -+ _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc); -+ _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc); -+ _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc); -+ _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc); -+ _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc); -+ _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc); -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc); -+ _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc); -+ _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc); -+ _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc); -+ _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc); -+ _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc); -+ _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc); -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc); -+ _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc); -+ _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc); -+ _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc); -+ _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc); -+ _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc); -+ _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc); -+ _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc); -+ _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc); -+ _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc); -+ _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc); -+ _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc); -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc); -+ _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc); -+ _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc); -+ _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc); -+ _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc); -+ _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc); -+ _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc); -+ _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc); -+ _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc); -+ _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc); -+ _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc); -+ _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc); -+ } -+ } -+ -+#ifdef _GLIBCXX_USE_WCHAR_T -+ template<> -+ void -+ __timepunct<wchar_t>:: -+ _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, -+ const tm* __tm) const -+ { -+#ifdef __UCLIBC_HAS_XLOCALE__ -+ __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct); -+ const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm, -+ _M_c_locale_timepunct); -+#else -+ char* __old = strdup(setlocale(LC_ALL, NULL)); -+ setlocale(LC_ALL, _M_name_timepunct); -+ const size_t __len = wcsftime(__s, __maxlen, __format, __tm); -+ setlocale(LC_ALL, __old); -+ free(__old); -+#endif -+ // Make sure __s is null terminated. -+ if (__len == 0) -+ __s[0] = L'\0'; -+ } -+ -+ template<> -+ void -+ __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc) -+ { -+ if (!_M_data) -+ _M_data = new __timepunct_cache<wchar_t>; -+ -+#warning wide time stuff -+// if (!__cloc) -+ { -+ // "C" locale -+ _M_c_locale_timepunct = _S_get_c_locale(); -+ -+ _M_data->_M_date_format = L"%m/%d/%y"; -+ _M_data->_M_date_era_format = L"%m/%d/%y"; -+ _M_data->_M_time_format = L"%H:%M:%S"; -+ _M_data->_M_time_era_format = L"%H:%M:%S"; -+ _M_data->_M_date_time_format = L""; -+ _M_data->_M_date_time_era_format = L""; -+ _M_data->_M_am = L"AM"; -+ _M_data->_M_pm = L"PM"; -+ _M_data->_M_am_pm_format = L""; -+ -+ // Day names, starting with "C"'s Sunday. -+ _M_data->_M_day1 = L"Sunday"; -+ _M_data->_M_day2 = L"Monday"; -+ _M_data->_M_day3 = L"Tuesday"; -+ _M_data->_M_day4 = L"Wednesday"; -+ _M_data->_M_day5 = L"Thursday"; -+ _M_data->_M_day6 = L"Friday"; -+ _M_data->_M_day7 = L"Saturday"; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ _M_data->_M_aday1 = L"Sun"; -+ _M_data->_M_aday2 = L"Mon"; -+ _M_data->_M_aday3 = L"Tue"; -+ _M_data->_M_aday4 = L"Wed"; -+ _M_data->_M_aday5 = L"Thu"; -+ _M_data->_M_aday6 = L"Fri"; -+ _M_data->_M_aday7 = L"Sat"; -+ -+ // Month names, starting with "C"'s January. -+ _M_data->_M_month01 = L"January"; -+ _M_data->_M_month02 = L"February"; -+ _M_data->_M_month03 = L"March"; -+ _M_data->_M_month04 = L"April"; -+ _M_data->_M_month05 = L"May"; -+ _M_data->_M_month06 = L"June"; -+ _M_data->_M_month07 = L"July"; -+ _M_data->_M_month08 = L"August"; -+ _M_data->_M_month09 = L"September"; -+ _M_data->_M_month10 = L"October"; -+ _M_data->_M_month11 = L"November"; -+ _M_data->_M_month12 = L"December"; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ _M_data->_M_amonth01 = L"Jan"; -+ _M_data->_M_amonth02 = L"Feb"; -+ _M_data->_M_amonth03 = L"Mar"; -+ _M_data->_M_amonth04 = L"Apr"; -+ _M_data->_M_amonth05 = L"May"; -+ _M_data->_M_amonth06 = L"Jun"; -+ _M_data->_M_amonth07 = L"Jul"; -+ _M_data->_M_amonth08 = L"Aug"; -+ _M_data->_M_amonth09 = L"Sep"; -+ _M_data->_M_amonth10 = L"Oct"; -+ _M_data->_M_amonth11 = L"Nov"; -+ _M_data->_M_amonth12 = L"Dec"; -+ } -+#if 0 -+ else -+ { -+ _M_c_locale_timepunct = _S_clone_c_locale(__cloc); -+ -+ union { char *__s; wchar_t *__w; } __u; -+ -+ __u.__s = __nl_langinfo_l(_NL_WD_FMT, __cloc); -+ _M_data->_M_date_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_D_FMT, __cloc); -+ _M_data->_M_date_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WT_FMT, __cloc); -+ _M_data->_M_time_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_T_FMT, __cloc); -+ _M_data->_M_time_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WD_T_FMT, __cloc); -+ _M_data->_M_date_time_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc); -+ _M_data->_M_date_time_era_format = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WAM_STR, __cloc); -+ _M_data->_M_am = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WPM_STR, __cloc); -+ _M_data->_M_pm = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc); -+ _M_data->_M_am_pm_format = __u.__w; -+ -+ // Day names, starting with "C"'s Sunday. -+ __u.__s = __nl_langinfo_l(_NL_WDAY_1, __cloc); -+ _M_data->_M_day1 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_2, __cloc); -+ _M_data->_M_day2 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_3, __cloc); -+ _M_data->_M_day3 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_4, __cloc); -+ _M_data->_M_day4 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_5, __cloc); -+ _M_data->_M_day5 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_6, __cloc); -+ _M_data->_M_day6 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WDAY_7, __cloc); -+ _M_data->_M_day7 = __u.__w; -+ -+ // Abbreviated day names, starting with "C"'s Sun. -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_1, __cloc); -+ _M_data->_M_aday1 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_2, __cloc); -+ _M_data->_M_aday2 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_3, __cloc); -+ _M_data->_M_aday3 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_4, __cloc); -+ _M_data->_M_aday4 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_5, __cloc); -+ _M_data->_M_aday5 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_6, __cloc); -+ _M_data->_M_aday6 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABDAY_7, __cloc); -+ _M_data->_M_aday7 = __u.__w; -+ -+ // Month names, starting with "C"'s January. -+ __u.__s = __nl_langinfo_l(_NL_WMON_1, __cloc); -+ _M_data->_M_month01 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_2, __cloc); -+ _M_data->_M_month02 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_3, __cloc); -+ _M_data->_M_month03 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_4, __cloc); -+ _M_data->_M_month04 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_5, __cloc); -+ _M_data->_M_month05 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_6, __cloc); -+ _M_data->_M_month06 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_7, __cloc); -+ _M_data->_M_month07 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_8, __cloc); -+ _M_data->_M_month08 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_9, __cloc); -+ _M_data->_M_month09 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_10, __cloc); -+ _M_data->_M_month10 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_11, __cloc); -+ _M_data->_M_month11 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WMON_12, __cloc); -+ _M_data->_M_month12 = __u.__w; -+ -+ // Abbreviated month names, starting with "C"'s Jan. -+ __u.__s = __nl_langinfo_l(_NL_WABMON_1, __cloc); -+ _M_data->_M_amonth01 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_2, __cloc); -+ _M_data->_M_amonth02 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_3, __cloc); -+ _M_data->_M_amonth03 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_4, __cloc); -+ _M_data->_M_amonth04 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_5, __cloc); -+ _M_data->_M_amonth05 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_6, __cloc); -+ _M_data->_M_amonth06 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_7, __cloc); -+ _M_data->_M_amonth07 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_8, __cloc); -+ _M_data->_M_amonth08 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_9, __cloc); -+ _M_data->_M_amonth09 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_10, __cloc); -+ _M_data->_M_amonth10 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_11, __cloc); -+ _M_data->_M_amonth11 = __u.__w; -+ __u.__s = __nl_langinfo_l(_NL_WABMON_12, __cloc); -+ _M_data->_M_amonth12 = __u.__w; -+ } -+#endif // 0 -+ } -+#endif -+} -diff -urN gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h ---- gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/locale/uclibc/time_members.h 2005-04-30 19:36:16.929897142 -0500 -@@ -0,0 +1,68 @@ -+// std::time_get, std::time_put implementation, GNU version -*- C++ -*- -+ -+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.2.5.1.2 - time_get functions -+// ISO C++ 14882: 22.2.5.3.2 - time_put functions -+// -+ -+// Written by Benjamin Kosnik <bkoz@redhat.com> -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs) -+ : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(_S_get_c_name()) -+ { _M_initialize_timepunct(); } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s, -+ size_t __refs) -+ : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL), -+ _M_name_timepunct(__s) -+ { -+ char* __tmp = new char[std::strlen(__s) + 1]; -+ std::strcpy(__tmp, __s); -+ _M_name_timepunct = __tmp; -+ _M_initialize_timepunct(__cloc); -+ } -+ -+ template<typename _CharT> -+ __timepunct<_CharT>::~__timepunct() -+ { -+ if (_M_name_timepunct != _S_get_c_name()) -+ delete [] _M_name_timepunct; -+ delete _M_data; -+ _S_destroy_c_locale(_M_c_locale_timepunct); -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_base.h 2005-04-30 19:36:16.930896973 -0500 -@@ -0,0 +1,64 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+/** @file ctype_base.h -+ * This is an internal header file, included by other library headers. -+ * You should not attempt to use it directly. -+ */ -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ /// @brief Base class for ctype. -+ struct ctype_base -+ { -+ // Note: In uClibc, the following two types depend on configuration. -+ -+ // Non-standard typedefs. -+ typedef const __ctype_touplow_t* __to_type; -+ -+ // NB: Offsets into ctype<char>::_M_table force a particular size -+ // on the mask type. Because of this, we don't use an enum. -+ typedef __ctype_mask_t mask; -+ static const mask upper = _ISupper; -+ static const mask lower = _ISlower; -+ static const mask alpha = _ISalpha; -+ static const mask digit = _ISdigit; -+ static const mask xdigit = _ISxdigit; -+ static const mask space = _ISspace; -+ static const mask print = _ISprint; -+ static const mask graph = _ISalpha | _ISdigit | _ISpunct; -+ static const mask cntrl = _IScntrl; -+ static const mask punct = _ISpunct; -+ static const mask alnum = _ISalpha | _ISdigit; -+ }; -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_inline.h 2005-04-30 19:36:16.931896804 -0500 -@@ -0,0 +1,69 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*) -+// functions go in ctype.cc -+ -+ bool -+ ctype<char>:: -+ is(mask __m, char __c) const -+ { return _M_table[static_cast<unsigned char>(__c)] & __m; } -+ -+ const char* -+ ctype<char>:: -+ is(const char* __low, const char* __high, mask* __vec) const -+ { -+ while (__low < __high) -+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)]; -+ return __high; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_is(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m)) -+ ++__low; -+ return __low; -+ } -+ -+ const char* -+ ctype<char>:: -+ scan_not(mask __m, const char* __low, const char* __high) const -+ { -+ while (__low < __high -+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0) -+ ++__low; -+ return __low; -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/ctype_noninline.h 2005-04-30 19:36:16.931896804 -0500 -@@ -0,0 +1,92 @@ -+// Locale support -*- C++ -*- -+ -+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 -+// Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+// -+// ISO C++ 14882: 22.1 Locales -+// -+ -+// Information as gleaned from /usr/include/ctype.h -+ -+ const ctype_base::mask* -+ ctype<char>::classic_table() throw() -+ { return __C_ctype_b; } -+ -+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del, -+ size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs) -+ : facet(__refs), _M_c_locale_ctype(_S_get_c_locale()), -+ _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) -+ { -+ _M_toupper = __C_ctype_toupper; -+ _M_tolower = __C_ctype_tolower; -+ _M_table = __table ? __table : __C_ctype_b; -+ memset(_M_widen, 0, sizeof(_M_widen)); -+ memset(_M_narrow, 0, sizeof(_M_narrow)); -+ } -+ -+ char -+ ctype<char>::do_toupper(char __c) const -+ { return _M_toupper[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_toupper(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_toupper[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -+ -+ char -+ ctype<char>::do_tolower(char __c) const -+ { return _M_tolower[static_cast<unsigned char>(__c)]; } -+ -+ const char* -+ ctype<char>::do_tolower(char* __low, const char* __high) const -+ { -+ while (__low < __high) -+ { -+ *__low = _M_tolower[static_cast<unsigned char>(*__low)]; -+ ++__low; -+ } -+ return __high; -+ } -diff -urN gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h ---- gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h 1969-12-31 18:00:00.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/config/os/uclibc/os_defines.h 2005-04-30 19:36:16.932896635 -0500 -@@ -0,0 +1,44 @@ -+// Specific definitions for GNU/Linux -*- C++ -*- -+ -+// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+// -+// This file is part of the GNU ISO C++ Library. This library is free -+// software; you can redistribute it and/or modify it under the -+// terms of the GNU General Public License as published by the -+// Free Software Foundation; either version 2, or (at your option) -+// any later version. -+ -+// This 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 General Public License for more details. -+ -+// You should have received a copy of the GNU General Public License along -+// with this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _GLIBCXX_OS_DEFINES -+#define _GLIBCXX_OS_DEFINES 1 -+ -+// System-specific #define, typedefs, corrections, etc, go here. This -+// file will come before all others. -+ -+// This keeps isanum, et al from being propagated as macros. -+#define __NO_CTYPE 1 -+ -+#include <features.h> -+ -+// We must not see the optimized string functions GNU libc defines. -+#define __NO_STRING_INLINES -+ -+#endif -diff -urN gcc-4.1.0/libstdc++-v3/configure gcc-4.1.0-patched/libstdc++-v3/configure ---- gcc-4.1.0/libstdc++-v3/configure 2005-04-13 19:31:43.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/configure 2005-04-30 19:36:16.993886339 -0500 -@@ -3986,6 +3986,11 @@ - lt_cv_deplibs_check_method=pass_all - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -5744,6 +5749,9 @@ - # Default to "generic". - if test $enable_clocale_flag = auto; then - case ${target_os} in -+ linux-uclibc*) -+ enable_clocale_flag=uclibc -+ ;; - linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu) - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ -@@ -5974,6 +5982,77 @@ - CTIME_CC=config/locale/generic/time_members.cc - CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h - ;; -+ uclibc) -+ echo "$as_me:$LINENO: result: uclibc" >&5 -+echo "${ECHO_T}uclibc" >&6 -+ -+ # Declare intention to use gettext, and add support for specific -+ # languages. -+ # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT -+ ALL_LINGUAS="de fr" -+ -+ # Don't call AM-GNU-GETTEXT here. Instead, assume glibc. -+ # Extract the first word of "msgfmt", so it can be a program name with args. -+set dummy msgfmt; 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_check_msgfmt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$check_msgfmt"; then -+ ac_cv_prog_check_msgfmt="$check_msgfmt" # 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_check_msgfmt="yes" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no" -+fi -+fi -+check_msgfmt=$ac_cv_prog_check_msgfmt -+if test -n "$check_msgfmt"; then -+ echo "$as_me:$LINENO: result: $check_msgfmt" >&5 -+echo "${ECHO_T}$check_msgfmt" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then -+ USE_NLS=yes -+ fi -+ # Export the build objects. -+ for ling in $ALL_LINGUAS; do \ -+ glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \ -+ glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \ -+ done -+ -+ -+ -+ CLOCALE_H=config/locale/uclibc/c_locale.h -+ CLOCALE_CC=config/locale/uclibc/c_locale.cc -+ CCODECVT_H=config/locale/ieee_1003.1-2001/codecvt_specializations.h -+ CCODECVT_CC=config/locale/uclibc/codecvt_members.cc -+ CCOLLATE_CC=config/locale/uclibc/collate_members.cc -+ CCTYPE_CC=config/locale/uclibc/ctype_members.cc -+ CMESSAGES_H=config/locale/uclibc/messages_members.h -+ CMESSAGES_CC=config/locale/uclibc/messages_members.cc -+ CMONEY_CC=config/locale/uclibc/monetary_members.cc -+ CNUMERIC_CC=config/locale/uclibc/numeric_members.cc -+ CTIME_H=config/locale/uclibc/time_members.h -+ CTIME_CC=config/locale/uclibc/time_members.cc -+ CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h -+ ;; - esac - - # This is where the testsuite looks for locale catalogs, using the -@@ -7686,21 +7765,6 @@ - echo "${ECHO_T}$enable_long_long" >&6 - - -- # Check whether --enable-wchar_t or --disable-wchar_t was given. --if test "${enable_wchar_t+set}" = set; then -- enableval="$enable_wchar_t" -- -- case "$enableval" in -- yes|no) ;; -- *) { { echo "$as_me:$LINENO: error: Argument to enable/disable wchar_t must be yes or no" >&5 --echo "$as_me: error: Argument to enable/disable wchar_t must be yes or no" >&2;} -- { (exit 1); exit 1; }; } ;; -- esac -- --else -- enable_wchar_t=yes --fi; -- - if test x"$ac_c99_wchar" = x"yes" && test x"$enable_wchar_t" = x"yes"; then - - cat >>confdefs.h <<\_ACEOF -diff -urN gcc-4.1.0/libstdc++-v3/configure.host gcc-4.1.0-patched/libstdc++-v3/configure.host ---- gcc-4.1.0/libstdc++-v3/configure.host 2005-01-13 16:48:14.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/configure.host 2005-04-30 19:36:16.996885833 -0500 -@@ -249,6 +249,12 @@ - ;; - esac - -+# Override for uClibc since linux-uclibc gets mishandled above. -+case "${host_os}" in -+ *-uclibc*) -+ os_include_dir="os/uclibc" -+ ;; -+esac - - # Set any OS-dependent and CPU-dependent bits. - # THIS TABLE IS SORTED. KEEP IT THAT WAY. -diff -urN gcc-4.1.0/libstdc++-v3/crossconfig.m4 gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4 ---- gcc-4.1.0/libstdc++-v3/crossconfig.m4 2005-04-06 18:31:16.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/crossconfig.m4 2005-04-30 19:36:16.997885664 -0500 -@@ -143,6 +143,99 @@ - ;; - esac - ;; -+ *-uclibc*) -+# Temporary hack until we implement the float versions of the libm funcs -+ AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ -+ machine/endian.h machine/param.h sys/machine.h sys/types.h \ -+ fp.h float.h endian.h inttypes.h locale.h float.h stdint.h]) -+ SECTION_FLAGS='-ffunction-sections -fdata-sections' -+ AC_SUBST(SECTION_FLAGS) -+ GLIBCXX_CHECK_LINKER_FEATURES -+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT -+ GLIBCXX_CHECK_WCHAR_T_SUPPORT -+ -+ # For LFS. -+ AC_DEFINE(HAVE_INT64_T) -+ case "$target" in -+ *-uclinux*) -+ # Don't enable LFS with uClinux -+ ;; -+ *) -+ AC_DEFINE(_GLIBCXX_USE_LFS) -+ esac -+ -+ # For showmanyc_helper(). -+ AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h) -+ GLIBCXX_CHECK_POLL -+ GLIBCXX_CHECK_S_ISREG_OR_S_IFREG -+ -+ # For xsputn_2(). -+ AC_CHECK_HEADERS(sys/uio.h) -+ GLIBCXX_CHECK_WRITEV -+ -+# AC_DEFINE(HAVE_ACOSF) -+# AC_DEFINE(HAVE_ASINF) -+# AC_DEFINE(HAVE_ATANF) -+# AC_DEFINE(HAVE_ATAN2F) -+ AC_DEFINE(HAVE_CEILF) -+ AC_DEFINE(HAVE_COPYSIGN) -+# AC_DEFINE(HAVE_COPYSIGNF) -+# AC_DEFINE(HAVE_COSF) -+# AC_DEFINE(HAVE_COSHF) -+# AC_DEFINE(HAVE_EXPF) -+# AC_DEFINE(HAVE_FABSF) -+ AC_DEFINE(HAVE_FINITE) -+ AC_DEFINE(HAVE_FINITEF) -+ AC_DEFINE(HAVE_FLOORF) -+# AC_DEFINE(HAVE_FMODF) -+# AC_DEFINE(HAVE_FREXPF) -+ AC_DEFINE(HAVE_HYPOT) -+# AC_DEFINE(HAVE_HYPOTF) -+ AC_DEFINE(HAVE_ISINF) -+ AC_DEFINE(HAVE_ISINFF) -+ AC_DEFINE(HAVE_ISNAN) -+ AC_DEFINE(HAVE_ISNANF) -+# AC_DEFINE(HAVE_LOGF) -+# AC_DEFINE(HAVE_LOG10F) -+# AC_DEFINE(HAVE_MODFF) -+# AC_DEFINE(HAVE_SINF) -+# AC_DEFINE(HAVE_SINHF) -+# AC_DEFINE(HAVE_SINCOS) -+# AC_DEFINE(HAVE_SINCOSF) -+ AC_DEFINE(HAVE_SQRTF) -+# AC_DEFINE(HAVE_TANF) -+# AC_DEFINE(HAVE_TANHF) -+ if test x"long_double_math_on_this_cpu" = x"yes"; then -+ AC_MSG_ERROR([long_double_math_on_this_cpu is yes!]) -+# AC_DEFINE(HAVE_ACOSL) -+# AC_DEFINE(HAVE_ASINL) -+# AC_DEFINE(HAVE_ATANL) -+# AC_DEFINE(HAVE_ATAN2L) -+# AC_DEFINE(HAVE_CEILL) -+# AC_DEFINE(HAVE_COPYSIGNL) -+# AC_DEFINE(HAVE_COSL) -+# AC_DEFINE(HAVE_COSHL) -+# AC_DEFINE(HAVE_EXPL) -+# AC_DEFINE(HAVE_FABSL) -+# AC_DEFINE(HAVE_FINITEL) -+# AC_DEFINE(HAVE_FLOORL) -+# AC_DEFINE(HAVE_FMODL) -+# AC_DEFINE(HAVE_FREXPL) -+# AC_DEFINE(HAVE_HYPOTL) -+# AC_DEFINE(HAVE_ISINFL) -+# AC_DEFINE(HAVE_ISNANL) -+# AC_DEFINE(HAVE_LOGL) -+# AC_DEFINE(HAVE_LOG10L) -+# AC_DEFINE(HAVE_MODFL) -+# AC_DEFINE(HAVE_POWL) -+# AC_DEFINE(HAVE_SINL) -+# AC_DEFINE(HAVE_SINHL) -+# AC_DEFINE(HAVE_SINCOSL) -+# AC_DEFINE(HAVE_SQRTL) -+# AC_DEFINE(HAVE_TANL) -+# AC_DEFINE(HAVE_TANHL) -+ fi -+ ;; - *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu) - AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ - machine/endian.h machine/param.h sys/machine.h sys/types.h \ -@@ -157,7 +250,7 @@ - AC_DEFINE(HAVE_INT64_T) - case "$target" in - *-uclinux*) -- # Don't enable LFS with uClibc -+ # Don't enable LFS with uClinux - ;; - *) - AC_DEFINE(_GLIBCXX_USE_LFS) -diff -urN gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h 2003-12-08 21:51:45.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/include/c_compatibility/wchar.h 2005-04-30 19:36:16.997885664 -0500 -@@ -101,7 +101,9 @@ - using std::wmemcpy; - using std::wmemmove; - using std::wmemset; -+#if _GLIBCXX_HAVE_WCSFTIME - using std::wcsftime; -+#endif - - #if _GLIBCXX_USE_C99 - using std::wcstold; -diff -urN gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h ---- gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h 2004-07-20 03:47:42.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/include/c_std/std_cwchar.h 2005-04-30 19:36:16.998885495 -0500 -@@ -179,7 +179,9 @@ - using ::wcscoll; - using ::wcscpy; - using ::wcscspn; -+#if _GLIBCXX_HAVE_WCSFTIME - using ::wcsftime; -+#endif - using ::wcslen; - using ::wcsncat; - using ::wcsncmp; diff --git a/openwrt/toolchain/gcc/4.1.0/300-libstdc++-pic.patch b/openwrt/toolchain/gcc/4.1.0/300-libstdc++-pic.patch deleted file mode 100644 index 89d03a85e5..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/300-libstdc++-pic.patch +++ /dev/null @@ -1,46 +0,0 @@ -# DP: Build and install libstdc++_pic.a library. - ---- gcc-4.1.0/libstdc++-v3/src/Makefile.am 2004-11-15 17:33:05.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/src/Makefile.am 2005-04-25 20:05:59.186930896 -0500 -@@ -214,6 +214,10 @@ - $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@ - - -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Added bits to build debug library. - if GLIBCXX_BUILD_DEBUG - all-local: build_debug ---- gcc-4.1.0/libstdc++-v3/src/Makefile.in 2005-04-11 19:13:08.000000000 -0500 -+++ gcc-4.1.0-patched/libstdc++-v3/src/Makefile.in 2005-04-25 20:12:33.284316275 -0500 -@@ -627,7 +627,7 @@ - - install-data-am: install-data-local - --install-exec-am: install-toolexeclibLTLIBRARIES -+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local - - install-info: install-info-am - -@@ -660,6 +660,7 @@ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-data-local install-exec \ -+ install-exec-local \ - install-exec-am install-info install-info-am install-man \ - install-strip install-toolexeclibLTLIBRARIES installcheck \ - installcheck-am installdirs maintainer-clean \ -@@ -745,6 +746,11 @@ - install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) -+ -+install-exec-local: -+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o -+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) -+ - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. - .NOEXPORT: diff --git a/openwrt/toolchain/gcc/4.1.0/301-missing-execinfo_h.patch b/openwrt/toolchain/gcc/4.1.0/301-missing-execinfo_h.patch deleted file mode 100644 index 0e2092f3fb..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/301-missing-execinfo_h.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500 -+++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500 -@@ -500,7 +500,7 @@ - #ifdef __linux__ - # include <features.h> - # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ -- && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) - # ifndef GC_HAVE_BUILTIN_BACKTRACE - # define GC_HAVE_BUILTIN_BACKTRACE - # endif diff --git a/openwrt/toolchain/gcc/4.1.0/302-c99-snprintf.patch b/openwrt/toolchain/gcc/4.1.0/302-c99-snprintf.patch deleted file mode 100644 index dfb22d681b..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/302-c99-snprintf.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h-orig 2005-04-29 00:08:41.000000000 -0500 -+++ gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h 2005-04-29 00:08:45.000000000 -0500 -@@ -142,7 +142,7 @@ - using ::vsprintf; - } - --#if _GLIBCXX_USE_C99 -+#if _GLIBCXX_USE_C99 || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf diff --git a/openwrt/toolchain/gcc/4.1.0/303-c99-complex-ugly-hack.patch b/openwrt/toolchain/gcc/4.1.0/303-c99-complex-ugly-hack.patch deleted file mode 100644 index 2ccc80d9bb..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/303-c99-complex-ugly-hack.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- gcc-4.0.0/libstdc++-v3/configure-old 2005-04-30 22:04:48.061603912 -0500 -+++ gcc-4.0.0/libstdc++-v3/configure 2005-04-30 22:06:13.678588152 -0500 -@@ -7194,6 +7194,9 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - #include <complex.h> -+#ifdef __UCLIBC__ -+#error ugly hack to make sure configure test fails here for cross until uClibc supports the complex funcs -+#endif - int - main () - { diff --git a/openwrt/toolchain/gcc/4.1.0/602-sdk-libstdc++-includes.patch b/openwrt/toolchain/gcc/4.1.0/602-sdk-libstdc++-includes.patch deleted file mode 100644 index 23fce7544d..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/602-sdk-libstdc++-includes.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- gcc-4.1.0/libstdc++-v3/fragment.am 2005-03-21 11:40:14.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/fragment.am 2005-04-25 20:14:39.856251785 -0500 -@@ -21,5 +21,5 @@ - $(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once - - # -I/-D flags to pass when compiling. --AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include - ---- gcc-4.1.0/libstdc++-v3/libmath/Makefile.am 2005-03-21 11:40:18.000000000 -0600 -+++ gcc-4.1.0-patched/libstdc++-v3/libmath/Makefile.am 2005-04-25 20:14:39.682280735 -0500 -@@ -35,7 +35,7 @@ - - libmath_la_SOURCES = stubs.c - --AM_CPPFLAGS = $(CANADIAN_INCLUDES) -+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include - - # Only compiling "C" sources in this directory. - LIBTOOL = @LIBTOOL@ --tag CC diff --git a/openwrt/toolchain/gcc/4.1.0/740-sh-pr24836.patch b/openwrt/toolchain/gcc/4.1.0/740-sh-pr24836.patch deleted file mode 100644 index 7992282cff..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/740-sh-pr24836.patch +++ /dev/null @@ -1,25 +0,0 @@ -http://sourceforge.net/mailarchive/forum.php?thread_id=8959304&forum_id=5348 -http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24836 - ---- gcc/gcc/configure.ac (revision 106699) -+++ gcc/gcc/configure.ac (working copy) -@@ -2446,7 +2446,7 @@ - tls_first_minor=14 - tls_as_opt="-m64 -Aesame --fatal-warnings" - ;; -- sh-*-* | sh[34]-*-*) -+ sh-*-* | sh[34]*-*-*) - conftest_s=' - .section ".tdata","awT",@progbits - foo: .long 25 ---- gcc/gcc/configure -+++ gcc/gcc/configure -@@ -14846,7 +14846,7 @@ - tls_first_minor=14 - tls_as_opt="-m64 -Aesame --fatal-warnings" - ;; -- sh-*-* | sh[34]-*-*) -+ sh-*-* | sh[34]*-*-*) - conftest_s=' - .section ".tdata","awT",@progbits - foo: .long 25 diff --git a/openwrt/toolchain/gcc/4.1.0/800-arm-bigendian.patch b/openwrt/toolchain/gcc/4.1.0/800-arm-bigendian.patch deleted file mode 100644 index 1fa5ae1cd2..0000000000 --- a/openwrt/toolchain/gcc/4.1.0/800-arm-bigendian.patch +++ /dev/null @@ -1,67 +0,0 @@ -By Lennert Buytenhek <buytenh@wantstofly.org> -Adds support for arm*b-linux* big-endian ARM targets - -See http://gcc.gnu.org/PR16350 - ---- gcc-4.1.0/gcc/config/arm/linux-elf.h -+++ gcc-4.1.0/gcc/config/arm/linux-elf.h -@@ -28,19 +28,33 @@ - #undef TARGET_VERSION - #define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr); - -+/* -+ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* -+ * (big endian) configurations. -+ */ -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define TARGET_ENDIAN_DEFAULT MASK_BIG_END -+#define TARGET_ENDIAN_OPTION "mbig-endian" -+#define TARGET_LINKER_EMULATION "armelfb_linux" -+#else -+#define TARGET_ENDIAN_DEFAULT 0 -+#define TARGET_ENDIAN_OPTION "mlittle-endian" -+#define TARGET_LINKER_EMULATION "armelf_linux" -+#endif -+ - #undef TARGET_DEFAULT_FLOAT_ABI - #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD - - #undef TARGET_DEFAULT --#define TARGET_DEFAULT (0) -+#define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT) - - #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 - --#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" -+#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" - - #undef MULTILIB_DEFAULTS - #define MULTILIB_DEFAULTS \ -- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } -+ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } - - /* Now we define the strings used to build the spec file. */ - #undef LIB_SPEC -@@ -61,7 +75,7 @@ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker " LINUX_TARGET_INTERPRETER "} \ - -X \ -- %{mbig-endian:-EB}" \ -+ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ - SUBTARGET_EXTRA_LINK_SPEC - - #undef LINK_SPEC ---- gcc-4.1.0/gcc/config.gcc -+++ gcc-4.1.0/gcc/config.gcc -@@ -672,6 +672,11 @@ - ;; - arm*-*-linux*) # ARM GNU/Linux with ELF - tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" -+ case $target in -+ arm*b-*) -+ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" -+ ;; -+ esac - tmake_file="${tmake_file} t-linux arm/t-arm" - case ${target} in - arm*-*-linux-gnueabi) diff --git a/openwrt/toolchain/gcc/Config.in b/openwrt/toolchain/gcc/Config.in deleted file mode 100644 index 356e9ebdf0..0000000000 --- a/openwrt/toolchain/gcc/Config.in +++ /dev/null @@ -1,92 +0,0 @@ -# Choose gcc version. -# WARNING -- 2.95 currently only builds for i386, arm, mips*, and powerpc. -# WARNING -- 2.95 does not currently build natively for the target. - -if CONFIG_DEVEL - comment "Gcc Options" -endif - - -# the choice option below is completely ignored -# if CONFIG_DEVEL isn't set, so we have to set -# these manually ... annoying. -config BR2_GCC_VERSION_3_4_4 - bool - default y if BR2_LINUX_2_4_BRCM - -config BR2_GCC_VERSION_4_0_3 - bool - default y if BR2_LINUX_2_6_ARUBA || BR2_LINUX_2_6_XSCALE - -config BR2_GCC_VERSION_4_1_0 - bool - -choice - prompt "GCC compiler Version" if CONFIG_DEVEL - default BR2_GCC_VERSION_4_0_3 if BR2_LINUX_2_6_ARUBA || BR2_LINUX_2_6_XSCALE - default BR2_GCC_VERSION_3_4_4 if BR2_LINUX_2_4_BRCM - default BR2_GCC_VERSION_3_4_6 - help - Select the version of gcc you wish to use. - - - config BR2_GCC_VERSION_3_4_4 - bool "gcc 3.4.4" - - config BR2_GCC_VERSION_3_4_5 - bool "gcc 3.4.5" - - config BR2_GCC_VERSION_3_4_6 - bool "gcc 3.4.6" - - config BR2_GCC_VERSION_4_0_2 - bool "gcc 4.0.2" - - config BR2_GCC_VERSION_4_0_3 - bool "gcc 4.0.3" - - config BR2_GCC_VERSION_4_1_0 - bool "gcc 4.1.0" - -endchoice - -# more nasty hacks -config BR2_PACKAGE_LIBGCC - tristate - default y if BR2_GCC_VERSION_4_0_2 || BR2_GCC_VERSION_4_0_3 || BR2_GCC_VERSION_4_1_0 - default m if CONFIG_DEVEL - default n - -config BR2_GCC_VERSION - string - default "3.4.4" if BR2_GCC_VERSION_3_4_4 - default "3.4.5" if BR2_GCC_VERSION_3_4_5 - default "3.4.6" if BR2_GCC_VERSION_3_4_6 - default "4.0.2" if BR2_GCC_VERSION_4_0_2 - default "4.0.3" if BR2_GCC_VERSION_4_0_3 - default "4.1.0" if BR2_GCC_VERSION_4_1_0 - default "3.4.6" - - -config BR2_GCC_USE_SJLJ_EXCEPTIONS - string -# default "--enable-sjlj-exceptions" - default "" - help - Currently the unwind stuff seems to work for staticly linked apps - but not dynamic. So use setjmp/longjmp exceptions by default. - -config BR2_EXTRA_GCC_CONFIG_OPTIONS - string - prompt "Additional gcc options" if CONFIG_DEVEL - default "" - help - Any additional gcc options you may want to include.... - -config BR2_INSTALL_LIBSTDCPP - bool - prompt "Build/install c++ compiler and libstdc++?" if CONFIG_DEVEL - default y - help - Build/install c++ compiler and libstdc++? - diff --git a/openwrt/toolchain/gcc/Makefile b/openwrt/toolchain/gcc/Makefile deleted file mode 100644 index 26e17ad61e..0000000000 --- a/openwrt/toolchain/gcc/Makefile +++ /dev/null @@ -1,209 +0,0 @@ -# Makefile for to build a gcc/uClibc toolchain -# -# Copyright (C) 2002-2003 Erik Andersen <andersen@uclibc.org> -# Copyright (C) 2004 Manuel Novoa III <mjn3@uclibc.org> -# Copyright (C) 2005 Felix Fietkau <openwrt@nbd.name> -# -# This program is free software; you can redistribute it and/or modify -# it 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. -# -# This program 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 -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -include $(TOPDIR)/rules.mk - -GCC_VERSION:=$(strip $(GCC_VERSION)) - -#GCC_SITE:=ftp://ftp.gnu.org/gnu/gcc/releases/gcc-$(GCC_VERSION) -GCC_SITE:=ftp://ftp.fu-berlin.de/unix/languages/gcc/releases/gcc-$(GCC_VERSION) \ - http://mirrors.rcn.net/pub/sourceware/gcc/releases/gcc-$(GCC_VERSION) - -GCC_SOURCE:=gcc-$(GCC_VERSION).tar.bz2 -GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-$(GCC_VERSION) -GCC_CAT:=bzcat -GCC_STRIP_HOST_BINARIES:=true - -############################################################# -# -# Setup some initial stuff -# -############################################################# - -ifeq ($(BR2_INSTALL_LIBGCJ),y) -TARGET_LANGUAGES:=c,c++,java -else -ifeq ($(BR2_INSTALL_LIBSTDCPP),y) -TARGET_LANGUAGES:=c,c++ -else -TARGET_LANGUAGES:=c -endif -endif - -############################################################# -# -# build the first pass gcc compiler -# -############################################################# - -GCC_BUILD_DIR1:=$(TOOL_BUILD_DIR)/gcc-$(GCC_VERSION)-initial - -$(DL_DIR)/$(GCC_SOURCE): - mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(GCC_SOURCE) x $(GCC_SITE) - -$(GCC_DIR)/.unpacked: $(DL_DIR)/$(GCC_SOURCE) - mkdir -p $(TOOL_BUILD_DIR) - $(GCC_CAT) $(DL_DIR)/$(GCC_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - touch $(GCC_DIR)/.unpacked - -$(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked - # Apply any files named gcc-*.patch from the source directory to gcc - $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) \*.patch - # Note: The soft float situation has improved considerably with gcc 3.4.x. - # We can dispense with the custom spec files, as well as libfloat for the arm case. - # However, we still need a patch for arm. There's a similar patch for gcc 3.3.x - # which needs to be integrated so we can kill of libfloat for good. -ifeq ($(BR2_SOFT_FLOAT),y) -ifeq ("$(strip $(ARCH))","arm") - $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) arm-softfloat.patch.conditional -endif -ifeq ("$(strip $(ARCH))","armeb") - $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) arm-softfloat.patch.conditional -endif -endif - $(SED) 's,\(version_string.. = "[0-9\.]*\).*\(";\),\1 (OpenWrt-2.0)\2,' $(GCC_DIR)/gcc/version.c - $(SED) 's,\(bug_report_url.. = "\).*\(";\),\1<URL:https://dev.openwrt.org/>\2,' $(GCC_DIR)/gcc/version.c - touch $(GCC_DIR)/.patched - -# The --without-headers option stopped working with gcc 3.0 and has never been -# # fixed, so we need to actually have working C library header files prior to -# # the step or libgcc will not build... - -$(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.patched - mkdir -p $(GCC_BUILD_DIR1) - (cd $(GCC_BUILD_DIR1); rm -f config.cache; PATH=$(TARGET_PATH) \ - $(GCC_DIR)/configure \ - --prefix=$(STAGING_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --enable-languages=c \ - --disable-shared \ - --with-sysroot=$(TOOL_BUILD_DIR)/uClibc_dev/ \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - $(DISABLE_NLS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) \ - $(GCC_WITH_CPU) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ - $(EXTRA_GCC_CONFIG_OPTIONS)); - touch $(GCC_BUILD_DIR1)/.configured - -$(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc - touch $(GCC_BUILD_DIR1)/.compiled - -$(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc: $(GCC_BUILD_DIR1)/.compiled - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) install-gcc - -############################################################# -# -# second pass compiler build. Build the compiler targeting -# the newly built shared uClibc library. -# -############################################################# -# -# Sigh... I had to rework things because using --with-gxx-include-dir -# causes issues with include dir search order for g++. This seems to -# have something to do with "path translations" and possibly doesn't -# affect gcc-target. However, I haven't tested gcc-target yet so no -# guarantees. mjn3 - -GCC_BUILD_DIR2:=$(TOOL_BUILD_DIR)/gcc-$(GCC_VERSION)-final -$(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.patched $(STAGING_DIR)/lib/libc.a - mkdir -p $(GCC_BUILD_DIR2) - # Important! Required for limits.h to be fixed. - rm -rf $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/sys-include - ln -sf ../include $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/sys-include - rm -rf $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib - ln -sf ../lib $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib - (cd $(GCC_BUILD_DIR2); rm -f config.cache; PATH=$(TARGET_PATH) \ - $(GCC_DIR)/configure \ - --prefix=$(STAGING_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --enable-languages=$(TARGET_LANGUAGES) \ - --enable-shared \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - $(DISABLE_NLS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) \ - $(GCC_WITH_CPU) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ - $(GCC_USE_SJLJ_EXCEPTIONS) \ - $(EXTRA_GCC_CONFIG_OPTIONS)); - touch $(GCC_BUILD_DIR2)/.configured - -$(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) all - touch $(GCC_BUILD_DIR2)/.compiled - -gcc-install: $(GCC_BUILD_DIR2)/.compiled - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) install - echo $(GCC_VERSION) > $(STAGING_DIR)/gcc_version - # Set up the symlinks to enable lying about target name. - set -e; \ - (cd $(STAGING_DIR); \ - ln -sf $(REAL_GNU_TARGET_NAME) $(GNU_TARGET_NAME); \ - cd bin; \ - for app in $(REAL_GNU_TARGET_NAME)-* ; do \ - ln -sf $${app} \ - $(GNU_TARGET_NAME)$${app##$(REAL_GNU_TARGET_NAME)}; \ - done; \ - ); - # - # Now for the ugly 3.3.x soft float hack... - # -ifeq ($(BR2_SOFT_FLOAT),y) -ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.) - # Make sure we have a soft float specs file for this arch - if [ ! -f ./$(GCC_VERSION)/specs-$(ARCH)-soft-float ] ; then \ - echo soft float configured but no specs file for this arch ; \ - /bin/false ; \ - fi; - # Replace specs file with one that defaults to soft float mode. - if [ ! -f $(STAGING_DIR)/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ] ; then \ - echo staging dir specs file is missing ; \ - /bin/false ; \ - fi; - $(CP) ./$(GCC_VERSION)/specs-$(ARCH)-soft-float $(STAGING_DIR)/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs -endif -endif -# We do another ugly hack here because the standard behaviour is -# to include a reference to libgcc.so.1 in all binaries. For flash space -# saving, we change the specs file to link in a static libgcc here. - if [ -f $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ] ; then \ - patch -d $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/ -p0 < ./$(GCC_VERSION)/static-libgcc.patch.conditional ; \ - fi; - -source: $(DL_DIR)/$(GCC_SOURCE) -prepare: $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc -compile: gcc-install -install: -clean: gcc-clean - rm -rf $(GCC_DIR) - rm -rf $(GCC_BUILD_DIR1) - rm -rf $(GCC_BUILD_DIR2) - rm -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gc* - rm -f $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-c* diff --git a/openwrt/toolchain/gdb/Config.in b/openwrt/toolchain/gdb/Config.in deleted file mode 100644 index 574a398bb8..0000000000 --- a/openwrt/toolchain/gdb/Config.in +++ /dev/null @@ -1,8 +0,0 @@ -comment "Gdb Options" - -config BR2_PACKAGE_GDB_CLIENT - bool "Build gdb client for the Host" - default n - help - Build gdb to run on the host to debug programs running on the target. - diff --git a/openwrt/toolchain/gdb/Makefile b/openwrt/toolchain/gdb/Makefile deleted file mode 100644 index b1a2ad5fe5..0000000000 --- a/openwrt/toolchain/gdb/Makefile +++ /dev/null @@ -1,59 +0,0 @@ -# $Id$ - -include $(TOPDIR)/rules.mk - -GDB_NAME:=gdb -GDB_SITE:=http://ftp.gnu.org/gnu/gdb -GDB_VERSION:=6.3 -GDB_SOURCE:=$(GDB_NAME)-$(GDB_VERSION).tar.bz2 -GDB_CAT:=bzcat - -GDB_DIR:=$(TOOL_BUILD_DIR)/$(GDB_NAME)-$(GDB_VERSION) - -$(DL_DIR)/$(GDB_SOURCE): - $(WGET) -P $(DL_DIR) $(GDB_SITE)/$(GDB_SOURCE) - -$(GDB_DIR)/.patched: $(DL_DIR)/$(GDB_SOURCE) - $(GDB_CAT) $(DL_DIR)/$(GDB_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - $(PATCH) $(GDB_DIR) ./patches - # Copy a config.sub from gcc. This is only necessary until - # gdb's config.sub supports <arch>-linux-uclibc tuples. - # Should probably integrate this into the patch. - touch $(GDB_DIR)/.patched - -# gdb client - -GDB_CLIENT_DIR:=$(TOOL_BUILD_DIR)/gdbclient-$(GDB_VERSION) - -$(GDB_CLIENT_DIR)/.configured: $(GDB_DIR)/.patched - mkdir -p $(GDB_CLIENT_DIR) - (cd $(GDB_CLIENT_DIR); \ - gdb_cv_func_sigsetjmp=yes \ - $(GDB_DIR)/configure \ - --prefix=$(STAGING_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - $(DISABLE_NLS) \ - --without-uiout --disable-gdbmi \ - --disable-tui --disable-gdbtk --without-x \ - --without-included-gettext \ - --enable-threads \ - ); - touch $(GDB_CLIENT_DIR)/.configured - -$(GDB_CLIENT_DIR)/gdb/gdb: $(GDB_CLIENT_DIR)/.configured - $(MAKE) -C $(GDB_CLIENT_DIR) - strip $(GDB_CLIENT_DIR)/gdb/gdb - -$(TARGET_CROSS)gdb: $(GDB_CLIENT_DIR)/gdb/gdb - install -c $(GDB_CLIENT_DIR)/gdb/gdb $(TARGET_CROSS)gdb - cd $(STAGING_DIR)/bin && \ - ln -fs $(TARGET_CROSS)gdb $(GNU_TARGET_NAME)-gdb - -source: $(DL_DIR)/$(GDB_SOURCE) -prepare: $(GDB_DIR)/.patched -compile: -install: $(TARGET_CROSS)gdb -clean: - rm -rf $(GDB_CLIENT_DIR) $(GDB_DIR) diff --git a/openwrt/toolchain/gdb/patches/100-uclibc-conf.patch b/openwrt/toolchain/gdb/patches/100-uclibc-conf.patch deleted file mode 100644 index cc69ff33bd..0000000000 --- a/openwrt/toolchain/gdb/patches/100-uclibc-conf.patch +++ /dev/null @@ -1,280 +0,0 @@ ---- gdb-6.3/bfd/config.bfd.orig Fri Oct 15 07:47:11 2004 -+++ gdb-6.3/bfd/config.bfd Mon Feb 28 00:04:43 2005 -@@ -129,7 +129,7 @@ - targ_defvec=ecoffalpha_little_vec - targ_selvecs=bfd_elf64_alpha_vec - ;; -- alpha*-*-linux-gnu* | alpha*-*-elf*) -+ alpha*-*-linux-* | alpha*-*-elf*) - targ_defvec=bfd_elf64_alpha_vec - targ_selvecs=ecoffalpha_little_vec - ;; -@@ -139,7 +139,7 @@ - alpha*-*-*) - targ_defvec=ecoffalpha_little_vec - ;; -- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) -+ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu) - targ_defvec=bfd_elf64_ia64_little_vec - targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec" - ;; -@@ -216,7 +216,7 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- armeb-*-elf | arm*b-*-linux-gnu*) -+ armeb-*-elf | arm*b-*-linux-*) - targ_defvec=bfd_elf32_bigarm_vec - targ_selvecs=bfd_elf32_littlearm_vec - ;; -@@ -224,7 +224,7 @@ - targ_defvec=bfd_elf32_littlearm_vec - targ_selvecs=bfd_elf32_bigarm_vec - ;; -- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \ -+ arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \ - arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \ - arm*-*-eabi* ) - targ_defvec=bfd_elf32_littlearm_vec -@@ -378,7 +378,7 @@ - ;; - - #ifdef BFD64 -- hppa*64*-*-linux-gnu*) -+ hppa*64*-*-linux-*) - targ_defvec=bfd_elf64_hppa_linux_vec - targ_selvecs=bfd_elf64_hppa_vec - ;; -@@ -389,7 +389,7 @@ - ;; - #endif - -- hppa*-*-linux-gnu*) -+ hppa*-*-linux-*) - targ_defvec=bfd_elf32_hppa_linux_vec - targ_selvecs=bfd_elf32_hppa_vec - ;; -@@ -522,7 +522,7 @@ - targ_selvecs=bfd_elf32_i386_vec - targ_underscore=yes - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - targ_defvec=bfd_elf32_i386_vec - targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec" - targ64_selvecs=bfd_elf64_x86_64_vec -@@ -536,7 +536,7 @@ - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec" - ;; -- x86_64-*-linux-gnu*) -+ x86_64-*-linux-*) - targ_defvec=bfd_elf64_x86_64_vec - targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec" - ;; -@@ -706,7 +706,7 @@ - targ_defvec=hp300hpux_vec - targ_underscore=yes - ;; -- m68*-*-linux*aout*) -+ m68*-*-linux*aout* | m68*-*-linux-uclibc*) - targ_defvec=m68klinux_vec - targ_selvecs=bfd_elf32_m68k_vec - targ_underscore=yes -@@ -987,7 +987,7 @@ - ;; - #endif - powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \ -- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \ -+ powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \ - powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*) - targ_defvec=bfd_elf32_powerpc_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec" -@@ -1024,7 +1024,7 @@ - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" - ;; - powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \ -- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\ -+ powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks* |\ - powerpcle-*-rtems*) - targ_defvec=bfd_elf32_powerpcle_vec - targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec" -@@ -1192,7 +1192,7 @@ - targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" - targ_underscore=yes - ;; -- sparc-*-linux-gnu*) -+ sparc-*-linux-*) - targ_defvec=bfd_elf32_sparc_vec - targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec" - ;; -@@ -1239,7 +1239,7 @@ - targ_defvec=sunos_big_vec - targ_underscore=yes - ;; -- sparc64-*-linux-gnu*) -+ sparc64-*-linux-*) - targ_defvec=bfd_elf64_sparc_vec - targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec" - ;; -@@ -1308,7 +1308,7 @@ - targ_underscore=yes - ;; - -- vax-*-linux-gnu*) -+ vax-*-linux-*) - targ_defvec=bfd_elf32_vax_vec - ;; - ---- gdb-6.3/bfd/configure.orig Fri Oct 8 16:53:56 2004 -+++ gdb-6.3/bfd/configure Sun Feb 27 18:32:58 2005 -@@ -3583,6 +3583,11 @@ - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - netbsd* | knetbsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -@@ -9914,7 +9919,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -9978,7 +9983,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386mach3.h"' - ;; -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' - ;; -@@ -10016,7 +10021,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -10150,7 +10155,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; ---- gdb-6.3/bfd/configure.in.orig Fri Oct 8 16:53:59 2004 -+++ gdb-6.3/bfd/configure.in Sun Feb 27 18:14:41 2005 -@@ -163,7 +163,7 @@ - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - COREFILE='' - ;; -- alpha*-*-linux-gnu*) -+ alpha*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/alphalinux.h"' - ;; -@@ -248,7 +248,7 @@ - TRAD_HEADER='"hosts/i386mach3.h"' - ;; - changequote(,)dnl -- i[3-7]86-*-linux-gnu*) -+ i[3-7]86-*-linux-*) - changequote([,])dnl - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/i386linux.h"' -@@ -289,7 +289,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/hp300bsd.h"' - ;; -- m68*-*-linux-gnu*) -+ m68*-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/m68klinux.h"' - ;; -@@ -375,7 +375,7 @@ - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxult2.h"' - ;; -- vax-*-linux-gnu*) -+ vax-*-linux-*) - COREFILE=trad-core.lo - TRAD_HEADER='"hosts/vaxlinux.h"' - ;; ---- gdb-6.3/libtool.m4.orig Wed Jul 21 21:21:41 2004 -+++ gdb-6.3/libtool.m4 Mon Feb 28 00:08:11 2005 -@@ -653,6 +653,11 @@ - fi - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - newsos6) - [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] - lt_cv_file_magic_cmd=/usr/bin/file ---- gdb-6.3/ltconfig.orig Tue Oct 5 15:34:42 2004 -+++ gdb-6.3/ltconfig Sun Feb 27 18:14:41 2005 -@@ -602,7 +602,7 @@ - - # Transform linux* to *-*-linux-gnu*, to support old configure scripts. - case $host_os in --linux-gnu*) ;; -+linux-gnu*|linux-uclibc*) ;; - linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` - esac - -@@ -1270,6 +1270,24 @@ - dynamic_linker='GNU/Linux ld.so' - ;; - -+linux-uclibc*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ # Note: copied from linux-gnu, and may not be appropriate. -+ hardcode_into_libs=yes -+ # Assume using the uClibc dynamic linker. -+ dynamic_linker="uClibc ld.so" -+ ;; -+ - netbsd*) - need_lib_prefix=no - need_version=no ---- gdb-6.3/opcodes/configure.orig Fri Sep 17 08:13:38 2004 -+++ gdb-6.3/opcodes/configure Mon Feb 28 00:09:42 2005 -@@ -3595,6 +3595,11 @@ - fi - ;; - -+linux-uclibc*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` -+ ;; -+ - newsos6) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file diff --git a/openwrt/toolchain/gdb/patches/200-uclibc-readline-conf.patch b/openwrt/toolchain/gdb/patches/200-uclibc-readline-conf.patch deleted file mode 100644 index ffe792dd05..0000000000 --- a/openwrt/toolchain/gdb/patches/200-uclibc-readline-conf.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- gdb-6.1.1-dist/readline/configure 2003-05-27 18:29:47.000000000 -0500 -+++ gdb-6.1.1/readline/configure 2004-08-09 14:20:23.000000000 -0500 -@@ -6249,7 +6249,12 @@ - - - echo "$as_me:$LINENO: checking for mbstate_t" >&5 -+echo $ECHO_N "bash_cv_have_mbstate_t=$bash_cv_have_mbstate_t" >&6 - echo $ECHO_N "checking for mbstate_t... $ECHO_C" >&6 -+if test "${bash_cv_have_mbstate_t+set}" != set; then -+ bash_cv_have_mbstate_t=yes -+ echo $ECHO_N "WARNING!! forcing to yes!!! $ECHO_C" >&6 -+fi - if test "${bash_cv_have_mbstate_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else diff --git a/openwrt/toolchain/gdb/patches/400-mips-coredump.patch b/openwrt/toolchain/gdb/patches/400-mips-coredump.patch deleted file mode 100644 index 4e17ba7bea..0000000000 --- a/openwrt/toolchain/gdb/patches/400-mips-coredump.patch +++ /dev/null @@ -1,28 +0,0 @@ -Sometime around 2.4.22-23, the mips pt_regs.h fields were reordered, breaking -coredump handling by gdb for current kernels. Update the hardcoded constants -to reflect the change. ---- gdb-6.2.1/gdb/mips-linux-tdep.c-orig 2004-10-29 14:23:55.000000000 -0500 -+++ gdb-6.2.1/gdb/mips-linux-tdep.c 2004-10-29 14:26:44.000000000 -0500 -@@ -53,12 +53,22 @@ - - #define EF_REG0 6 - #define EF_REG31 37 -+ -+#if 0 - #define EF_LO 38 - #define EF_HI 39 - #define EF_CP0_EPC 40 - #define EF_CP0_BADVADDR 41 - #define EF_CP0_STATUS 42 - #define EF_CP0_CAUSE 43 -+#else -+#define EF_CP0_STATUS 38 -+#define EF_LO 39 -+#define EF_HI 40 -+#define EF_CP0_BADVADDR 41 -+#define EF_CP0_CAUSE 42 -+#define EF_CP0_EPC 43 -+#endif - - #define EF_SIZE 180 - diff --git a/openwrt/toolchain/gdb/patches/500-thread-timeout.patch b/openwrt/toolchain/gdb/patches/500-thread-timeout.patch deleted file mode 100644 index 6db0a7a474..0000000000 --- a/openwrt/toolchain/gdb/patches/500-thread-timeout.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- gdb-6.3.org/gdb/gdbserver/thread-db.c 2004-10-17 02:42:00.000000000 +0900 -+++ gdb-6.3/gdb/gdbserver/thread-db.c 2005-01-27 12:19:29.000000000 +0900 -@@ -21,6 +21,7 @@ - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -+#include <unistd.h> - #include "server.h" - - #include "linux-low.h" -@@ -142,6 +143,7 @@ - td_event_msg_t msg; - td_err_e err; - struct inferior_linux_data *tdata; -+ int timeout; - - if (debug_threads) - fprintf (stderr, "Thread creation event.\n"); -@@ -152,7 +154,13 @@ - In the LinuxThreads implementation, this is safe, - because all events come from the manager thread - (except for its own creation, of course). */ -- err = td_ta_event_getmsg (thread_agent, &msg); -+ for (timeout = 0; timeout < 50000; timeout++) -+ { -+ err = td_ta_event_getmsg (thread_agent, &msg); -+ if (err != TD_NOMSG) -+ break; -+ usleep(1000); -+ } - if (err != TD_OK) - fprintf (stderr, "thread getmsg err: %s\n", - thread_db_err_str (err)); - diff --git a/openwrt/toolchain/gdb/patches/600-debian_10.selected-frame.patch b/openwrt/toolchain/gdb/patches/600-debian_10.selected-frame.patch deleted file mode 100644 index 5970f9ba40..0000000000 --- a/openwrt/toolchain/gdb/patches/600-debian_10.selected-frame.patch +++ /dev/null @@ -1,552 +0,0 @@ -2004-10-11 - -This patch is not submitted. Many of these functions should be passing -a frame around rather than calling get_selected_frame, but at least it -is an improvement over deprecated_selected_frame. - -Index: gdb-6.3/gdb/breakpoint.c -=================================================================== ---- gdb-6.3.orig/gdb/breakpoint.c 2004-10-08 13:30:46.000000000 -0400 -+++ gdb-6.3/gdb/breakpoint.c 2004-11-09 22:55:11.231620957 -0500 -@@ -922,7 +922,7 @@ insert_bp_location (struct bp_location * - /* FIXME drow/2003-09-09: It would be nice if evaluate_expression - took a frame parameter, so that we didn't have to change the - selected frame. */ -- saved_frame_id = get_frame_id (deprecated_selected_frame); -+ saved_frame_id = get_frame_id (get_selected_frame ()); - - /* Determine if the watchpoint is within scope. */ - if (bpt->owner->exp_valid_block == NULL) -@@ -5464,14 +5464,9 @@ break_at_finish_at_depth_command_1 (char - - if (default_breakpoint_valid) - { -- if (deprecated_selected_frame) -- { -- selected_pc = get_frame_pc (deprecated_selected_frame); -- if (arg) -- if_arg = 1; -- } -- else -- error ("No selected frame."); -+ selected_pc = get_frame_pc (get_selected_frame ()); -+ if (arg) -+ if_arg = 1; - } - else - error ("No default breakpoint address now."); -@@ -5542,15 +5537,10 @@ break_at_finish_command_1 (char *arg, in - { - if (default_breakpoint_valid) - { -- if (deprecated_selected_frame) -- { -- addr_string = xstrprintf ("*0x%s", -- paddr_nz (get_frame_pc (deprecated_selected_frame))); -- if (arg) -- if_arg = 1; -- } -- else -- error ("No selected frame."); -+ addr_string = xstrprintf ("*0x%s", -+ paddr_nz (get_frame_pc (get_selected_frame ()))); -+ if (arg) -+ if_arg = 1; - } - else - error ("No default breakpoint address now."); -@@ -6082,7 +6072,7 @@ until_break_command (char *arg, int from - { - struct symtabs_and_lines sals; - struct symtab_and_line sal; -- struct frame_info *prev_frame = get_prev_frame (deprecated_selected_frame); -+ struct frame_info *prev_frame = get_prev_frame (get_selected_frame ()); - struct breakpoint *breakpoint; - struct cleanup *old_chain; - struct continuation_arg *arg1; -@@ -6119,7 +6109,7 @@ until_break_command (char *arg, int from - /* Otherwise, specify the current frame, because we want to stop only - at the very same frame. */ - breakpoint = set_momentary_breakpoint (sal, -- get_frame_id (deprecated_selected_frame), -+ get_frame_id (get_selected_frame ()), - bp_until); - - if (!target_can_async_p ()) -Index: gdb-6.3/gdb/cli/cli-cmds.c -=================================================================== ---- gdb-6.3.orig/gdb/cli/cli-cmds.c 2004-09-11 06:24:53.000000000 -0400 -+++ gdb-6.3/gdb/cli/cli-cmds.c 2004-11-09 22:51:07.323246218 -0500 -@@ -845,10 +845,7 @@ disassemble_command (char *arg, int from - name = NULL; - if (!arg) - { -- if (!deprecated_selected_frame) -- error ("No frame selected.\n"); -- -- pc = get_frame_pc (deprecated_selected_frame); -+ pc = get_frame_pc (get_selected_frame ()); - if (find_pc_partial_function (pc, &name, &low, &high) == 0) - error ("No function contains program counter for selected frame.\n"); - #if defined(TUI) -Index: gdb-6.3/gdb/f-valprint.c -=================================================================== ---- gdb-6.3.orig/gdb/f-valprint.c 2003-10-14 02:51:14.000000000 -0400 -+++ gdb-6.3/gdb/f-valprint.c 2004-11-09 22:51:07.326245632 -0500 -@@ -76,7 +76,7 @@ f77_get_dynamic_lowerbound (struct type - switch (TYPE_ARRAY_LOWER_BOUND_TYPE (type)) - { - case BOUND_BY_VALUE_ON_STACK: -- current_frame_addr = get_frame_base (deprecated_selected_frame); -+ current_frame_addr = get_frame_base (get_selected_frame ()); - if (current_frame_addr > 0) - { - *lower_bound = -@@ -100,7 +100,7 @@ f77_get_dynamic_lowerbound (struct type - break; - - case BOUND_BY_REF_ON_STACK: -- current_frame_addr = get_frame_base (deprecated_selected_frame); -+ current_frame_addr = get_frame_base (get_selected_frame ()); - if (current_frame_addr > 0) - { - ptr_to_lower_bound = -@@ -134,7 +134,7 @@ f77_get_dynamic_upperbound (struct type - switch (TYPE_ARRAY_UPPER_BOUND_TYPE (type)) - { - case BOUND_BY_VALUE_ON_STACK: -- current_frame_addr = get_frame_base (deprecated_selected_frame); -+ current_frame_addr = get_frame_base (get_selected_frame ()); - if (current_frame_addr > 0) - { - *upper_bound = -@@ -163,7 +163,7 @@ f77_get_dynamic_upperbound (struct type - break; - - case BOUND_BY_REF_ON_STACK: -- current_frame_addr = get_frame_base (deprecated_selected_frame); -+ current_frame_addr = get_frame_base (get_selected_frame ()); - if (current_frame_addr > 0) - { - ptr_to_upper_bound = -@@ -630,10 +630,7 @@ info_common_command (char *comname, int - first make sure that it is visible and if so, let - us display its contents */ - -- fi = deprecated_selected_frame; -- -- if (fi == NULL) -- error ("No frame selected"); -+ fi = get_selected_frame (); - - /* The following is generally ripped off from stack.c's routine - print_frame_info() */ -@@ -722,10 +719,7 @@ there_is_a_visible_common_named (char *c - if (comname == NULL) - error ("Cannot deal with NULL common name!"); - -- fi = deprecated_selected_frame; -- -- if (fi == NULL) -- error ("No frame selected"); -+ fi = get_selected_frame (); - - /* The following is generally ripped off from stack.c's routine - print_frame_info() */ -Index: gdb-6.3/gdb/infcmd.c -=================================================================== ---- gdb-6.3.orig/gdb/infcmd.c 2004-09-13 14:26:28.000000000 -0400 -+++ gdb-6.3/gdb/infcmd.c 2004-11-09 22:57:37.274099559 -0500 -@@ -1214,10 +1214,8 @@ finish_command (char *arg, int from_tty) - error ("The \"finish\" command does not take any arguments."); - if (!target_has_execution) - error ("The program is not running."); -- if (deprecated_selected_frame == NULL) -- error ("No selected frame."); - -- frame = get_prev_frame (deprecated_selected_frame); -+ frame = get_prev_frame (get_selected_frame ()); - if (frame == 0) - error ("\"finish\" not meaningful in the outermost frame."); - -@@ -1235,7 +1233,7 @@ finish_command (char *arg, int from_tty) - - /* Find the function we will return from. */ - -- function = find_pc_function (get_frame_pc (deprecated_selected_frame)); -+ function = find_pc_function (get_frame_pc (get_selected_frame ())); - - /* Print info on the selected frame, including level number but not - source. */ -@@ -1600,13 +1598,11 @@ registers_info (char *addr_exp, int fpre - - if (!target_has_registers) - error ("The program has no registers now."); -- if (deprecated_selected_frame == NULL) -- error ("No selected frame."); - - if (!addr_exp) - { - gdbarch_print_registers_info (current_gdbarch, gdb_stdout, -- deprecated_selected_frame, -1, fpregs); -+ get_selected_frame (), -1, fpregs); - return; - } - -@@ -1644,7 +1640,7 @@ registers_info (char *addr_exp, int fpre - if (regnum >= 0) - { - gdbarch_print_registers_info (current_gdbarch, gdb_stdout, -- deprecated_selected_frame, regnum, fpregs); -+ get_selected_frame (), regnum, fpregs); - continue; - } - } -@@ -1658,7 +1654,7 @@ registers_info (char *addr_exp, int fpre - && regnum < NUM_REGS + NUM_PSEUDO_REGS) - { - gdbarch_print_registers_info (current_gdbarch, gdb_stdout, -- deprecated_selected_frame, regnum, fpregs); -+ get_selected_frame (), regnum, fpregs); - continue; - } - } -@@ -1684,7 +1680,7 @@ registers_info (char *addr_exp, int fpre - if (gdbarch_register_reggroup_p (current_gdbarch, regnum, - group)) - gdbarch_print_registers_info (current_gdbarch, -- gdb_stdout, deprecated_selected_frame, -+ gdb_stdout, get_selected_frame (), - regnum, fpregs); - } - continue; -@@ -1714,8 +1710,6 @@ print_vector_info (struct gdbarch *gdbar - { - if (!target_has_registers) - error ("The program has no registers now."); -- if (deprecated_selected_frame == NULL) -- error ("No selected frame."); - - if (gdbarch_print_vector_info_p (gdbarch)) - gdbarch_print_vector_info (gdbarch, file, frame, args); -@@ -1740,7 +1734,7 @@ print_vector_info (struct gdbarch *gdbar - static void - vector_info (char *args, int from_tty) - { -- print_vector_info (current_gdbarch, gdb_stdout, deprecated_selected_frame, args); -+ print_vector_info (current_gdbarch, gdb_stdout, get_selected_frame (), args); - } - - -@@ -1910,8 +1904,6 @@ print_float_info (struct gdbarch *gdbarc - { - if (!target_has_registers) - error ("The program has no registers now."); -- if (deprecated_selected_frame == NULL) -- error ("No selected frame."); - - if (gdbarch_print_float_info_p (gdbarch)) - gdbarch_print_float_info (gdbarch, file, frame, args); -@@ -1937,7 +1929,7 @@ No floating-point info available for thi - static void - float_info (char *args, int from_tty) - { -- print_float_info (current_gdbarch, gdb_stdout, deprecated_selected_frame, args); -+ print_float_info (current_gdbarch, gdb_stdout, get_selected_frame (), args); - } - - static void -Index: gdb-6.3/gdb/inflow.c -=================================================================== ---- gdb-6.3.orig/gdb/inflow.c 2004-08-11 05:00:57.000000000 -0400 -+++ gdb-6.3/gdb/inflow.c 2004-11-09 22:58:37.488338883 -0500 -@@ -591,10 +591,7 @@ kill_command (char *arg, int from_tty) - if (target_has_stack) - { - printf_filtered ("In %s,\n", target_longname); -- if (deprecated_selected_frame == NULL) -- fputs_filtered ("No selected stack frame.\n", gdb_stdout); -- else -- print_stack_frame (get_selected_frame (), 1, SRC_AND_LOC); -+ print_stack_frame (get_selected_frame (), 1, SRC_AND_LOC); - } - bfd_cache_close_all (); - } -Index: gdb-6.3/gdb/infrun.c -=================================================================== ---- gdb-6.3.orig/gdb/infrun.c 2004-09-27 13:58:08.000000000 -0400 -+++ gdb-6.3/gdb/infrun.c 2004-11-09 22:51:07.351240752 -0500 -@@ -3485,7 +3485,7 @@ save_inferior_status (int restore_stack_ - - inf_status->registers = regcache_dup (current_regcache); - -- inf_status->selected_frame_id = get_frame_id (deprecated_selected_frame); -+ inf_status->selected_frame_id = get_frame_id (get_selected_frame ()); - return inf_status; - } - -Index: gdb-6.3/gdb/mi/mi-main.c -=================================================================== ---- gdb-6.3.orig/gdb/mi/mi-main.c 2004-09-12 11:00:42.000000000 -0400 -+++ gdb-6.3/gdb/mi/mi-main.c 2004-11-09 22:53:29.998389013 -0500 -@@ -388,7 +388,7 @@ register_changed_p (int regnum) - { - char raw_buffer[MAX_REGISTER_SIZE]; - -- if (! frame_register_read (deprecated_selected_frame, regnum, raw_buffer)) -+ if (! frame_register_read (get_selected_frame (), regnum, raw_buffer)) - return -1; - - if (memcmp (&old_regs[DEPRECATED_REGISTER_BYTE (regnum)], raw_buffer, -@@ -509,7 +509,7 @@ get_register (int regnum, int format) - if (format == 'N') - format = 0; - -- frame_register (deprecated_selected_frame, regnum, &optim, &lval, &addr, -+ frame_register (get_selected_frame (), regnum, &optim, &lval, &addr, - &realnum, buffer); - - if (optim) -Index: gdb-6.3/gdb/mn10300-tdep.c -=================================================================== ---- gdb-6.3.orig/gdb/mn10300-tdep.c 2004-08-02 22:02:22.000000000 -0400 -+++ gdb-6.3/gdb/mn10300-tdep.c 2004-11-09 22:51:07.356239776 -0500 -@@ -1154,7 +1154,7 @@ mn10300_print_register (const char *name - printf_filtered ("%s: ", name); - - /* Get the data */ -- if (!frame_register_read (deprecated_selected_frame, regnum, raw_buffer)) -+ if (!frame_register_read (get_selected_frame (), regnum, raw_buffer)) - { - printf_filtered ("[invalid]"); - return; -Index: gdb-6.3/gdb/stack.c -=================================================================== ---- gdb-6.3.orig/gdb/stack.c 2004-08-02 20:57:26.000000000 -0400 -+++ gdb-6.3/gdb/stack.c 2004-11-09 22:51:07.361238800 -0500 -@@ -758,9 +758,7 @@ parse_frame_specification (char *frame_e - switch (numargs) - { - case 0: -- if (deprecated_selected_frame == NULL) -- error ("No selected frame."); -- return deprecated_selected_frame; -+ return get_selected_frame (); - /* NOTREACHED */ - case 1: - { -@@ -902,10 +900,10 @@ frame_info (char *addr_exp, int from_tty - } - calling_frame_info = get_prev_frame (fi); - -- if (!addr_exp && frame_relative_level (deprecated_selected_frame) >= 0) -+ if (!addr_exp && frame_relative_level (get_selected_frame ()) >= 0) - { - printf_filtered ("Stack level %d, frame at ", -- frame_relative_level (deprecated_selected_frame)); -+ frame_relative_level (get_selected_frame ())); - print_address_numeric (get_frame_base (fi), 1, gdb_stdout); - printf_filtered (":\n"); - } -@@ -1445,9 +1443,7 @@ print_frame_label_vars (struct frame_inf - void - locals_info (char *args, int from_tty) - { -- if (!deprecated_selected_frame) -- error ("No frame selected."); -- print_frame_local_vars (deprecated_selected_frame, 0, gdb_stdout); -+ print_frame_local_vars (get_selected_frame (), 0, gdb_stdout); - } - - static void -@@ -1470,7 +1466,7 @@ catch_info (char *ignore, int from_tty) - if (!deprecated_selected_frame) - error ("No frame selected."); - -- print_frame_label_vars (deprecated_selected_frame, 0, gdb_stdout); -+ print_frame_label_vars (get_selected_frame (), 0, gdb_stdout); - } - } - -@@ -1537,9 +1533,7 @@ print_frame_arg_vars (struct frame_info - void - args_info (char *ignore, int from_tty) - { -- if (!deprecated_selected_frame) -- error ("No frame selected."); -- print_frame_arg_vars (deprecated_selected_frame, gdb_stdout); -+ print_frame_arg_vars (get_selected_frame (), gdb_stdout); - } - - -@@ -1724,7 +1718,7 @@ down_silently_base (char *count_exp) - if (target_has_stack == 0 || deprecated_selected_frame == 0) - error ("No stack."); - -- frame = find_relative_frame (deprecated_selected_frame, &count1); -+ frame = find_relative_frame (get_selected_frame (), &count1); - if (count1 != 0 && count_exp == 0) - { - -@@ -1944,7 +1938,7 @@ func_command (char *arg, int from_tty) - - if (!found) - printf_filtered ("'%s' not within current stack frame.\n", arg); -- else if (fp != deprecated_selected_frame) -+ else if (fp != get_selected_frame ()) - select_and_print_frame (fp); - } - -@@ -1965,7 +1959,7 @@ get_frame_language (void) - instruction of another function. So we rely on - get_frame_address_in_block(), it provides us with a PC which is - guaranteed to be inside the frame's code block. */ -- s = find_pc_symtab (get_frame_address_in_block (deprecated_selected_frame)); -+ s = find_pc_symtab (get_frame_address_in_block (get_selected_frame ())); - if (s) - flang = s->language; - else -Index: gdb-6.3/gdb/tui/tui-disasm.c -=================================================================== ---- gdb-6.3.orig/gdb/tui/tui-disasm.c 2004-02-24 20:10:01.000000000 -0500 -+++ gdb-6.3/gdb/tui/tui-disasm.c 2004-11-09 22:51:07.370237044 -0500 -@@ -382,7 +382,7 @@ tui_vertical_disassem_scroll (enum tui_s - - content = (tui_win_content) TUI_DISASM_WIN->generic.content; - if (cursal.symtab == (struct symtab *) NULL) -- s = find_pc_symtab (get_frame_pc (deprecated_selected_frame)); -+ s = find_pc_symtab (get_frame_pc (get_selected_frame ())); - else - s = cursal.symtab; - -Index: gdb-6.3/gdb/tui/tui-source.c -=================================================================== ---- gdb-6.3.orig/gdb/tui/tui-source.c 2004-02-16 16:05:09.000000000 -0500 -+++ gdb-6.3/gdb/tui/tui-source.c 2004-11-09 22:51:07.370237044 -0500 -@@ -326,7 +326,7 @@ tui_vertical_source_scroll (enum tui_scr - struct symtab_and_line cursal = get_current_source_symtab_and_line (); - - if (cursal.symtab == (struct symtab *) NULL) -- s = find_pc_symtab (get_frame_pc (deprecated_selected_frame)); -+ s = find_pc_symtab (get_frame_pc (get_selected_frame ())); - else - s = cursal.symtab; - -Index: gdb-6.3/gdb/tui/tui-winsource.c -=================================================================== ---- gdb-6.3.orig/gdb/tui/tui-winsource.c 2004-02-16 16:05:09.000000000 -0500 -+++ gdb-6.3/gdb/tui/tui-winsource.c 2004-11-09 22:51:07.371236848 -0500 -@@ -311,7 +311,7 @@ tui_horizontal_source_scroll (struct tui - struct symtab_and_line cursal = get_current_source_symtab_and_line (); - - if (cursal.symtab == (struct symtab *) NULL) -- s = find_pc_symtab (get_frame_pc (deprecated_selected_frame)); -+ s = find_pc_symtab (get_frame_pc (get_selected_frame ())); - else - s = cursal.symtab; - -Index: gdb-6.3/gdb/valops.c -=================================================================== ---- gdb-6.3.orig/gdb/valops.c 2004-09-13 23:01:48.000000000 -0400 -+++ gdb-6.3/gdb/valops.c 2004-11-09 22:51:07.374236263 -0500 -@@ -2663,15 +2663,10 @@ value_of_local (const char *name, int co - struct block *b; - struct value * ret; - -- if (deprecated_selected_frame == 0) -- { -- if (complain) -- error ("no frame selected"); -- else -- return 0; -- } -+ if (!complain && deprecated_selected_frame == 0) -+ return 0; - -- func = get_frame_function (deprecated_selected_frame); -+ func = get_frame_function (get_selected_frame ()); - if (!func) - { - if (complain) -@@ -2700,7 +2695,7 @@ value_of_local (const char *name, int co - return NULL; - } - -- ret = read_var_value (sym, deprecated_selected_frame); -+ ret = read_var_value (sym, get_selected_frame ()); - if (ret == 0 && complain) - error ("`%s' argument unreadable", name); - return ret; -Index: gdb-6.3/gdb/varobj.c -=================================================================== ---- gdb-6.3.orig/gdb/varobj.c 2004-07-26 10:53:06.000000000 -0400 -+++ gdb-6.3/gdb/varobj.c 2004-11-09 22:51:07.377235677 -0500 -@@ -488,7 +488,7 @@ varobj_create (char *objname, - if (fi != NULL) - { - var->root->frame = get_frame_id (fi); -- old_fi = deprecated_selected_frame; -+ old_fi = get_selected_frame (); - select_frame (fi); - } - -Index: gdb-6.3/gdb/testsuite/gdb.base/default.exp -=================================================================== ---- gdb-6.3.orig/gdb/testsuite/gdb.base/default.exp 2003-03-20 09:45:50.000000000 -0500 -+++ gdb-6.3/gdb/testsuite/gdb.base/default.exp 2004-11-09 22:51:07.379235287 -0500 -@@ -167,7 +167,7 @@ gdb_test "disable breakpoints" "" "disab - #test disable display - gdb_test "disable display" "" "disable display" - #test disassemble --gdb_test "disassemble" "No frame selected." "disassemble" -+gdb_test "disassemble" "No (frame selected|registers)." "disassemble" - #test display - gdb_test "display" "" "display" - #test do -@@ -229,9 +229,9 @@ gdb_expect { - } - - #test frame "f" abbreviation --gdb_test "f" "No stack." "frame \"f\" abbreviation" -+gdb_test "f" "No (stack|registers)." "frame \"f\" abbreviation" - #test frame --gdb_test "frame" "No stack." "frame" -+gdb_test "frame" "No (stack|registers)." "frame" - #test fg - gdb_test "fg" "The program is not being run." "fg" - # FIXME: fg kills the udi connection -@@ -294,9 +294,9 @@ gdb_test "ignore" "Argument required .a - #test info address - gdb_test "info address" "Argument required." "info address" - #test info all-registers --gdb_test "info all-registers" "The program has no registers now." "info all-registers" -+gdb_test "info all-registers" "(The program has no registers now|No registers)." "info all-registers" - #test info args --gdb_test "info args" "No frame selected." "info args" -+gdb_test "info args" "No (frame selected|registers)." "info args" - #test info bogus-gdb-command - gdb_test "info bogus-gdb-command" "Undefined info command: \"bogus-gdb-command\". Try \"help info\".*" "info bogus-gdb-command" - #test info breakpoints -@@ -320,11 +320,11 @@ gdb_test "info frame" "No stack.|No sele - #test info files - gdb_test "info files" "" "info files" - #test info float --gdb_test "info float" "The program has no registers now." "info float" -+gdb_test "info float" "(The program has no registers now|No registers)." "info float" - #test info functions - gdb_test "info functions" "All defined functions:" "info functions" - #test info locals --gdb_test "info locals" "No frame selected." "info locals" -+gdb_test "info locals" "(No frame selected|No registers)." "info locals" - #test info program - gdb_test "info program" "The program being debugged is not being run." "info program" - #test info registers -@@ -352,7 +352,7 @@ gdb_test "info types" "All defined types - #test info variables - gdb_test "info variables" "All defined variables:" "info variables" - #test info vector --gdb_test "info vector" "The program has no registers now." "info vector" -+gdb_test "info vector" "(The program has no registers now|No registers)." "info vector" - #test info warranty - gdb_test "info warranty" "NO WARRANTY(\[^\r\n\]*\[\r\n\])+ *11. *BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY(\[^\r\n\]*\[\r\n\])+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN(\[^\r\n\]*\[\r\n\])+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES(\[^\r\n\]*\[\r\n\])+PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED(\[^\r\n\]*\[\r\n\])+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF(\[^\r\n\]*\[\r\n\])+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS(\[^\r\n\]*\[\r\n\])+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE(\[^\r\n\]*\[\r\n\])+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,(\[^\r\n\]*\[\r\n\])+REPAIR OR CORRECTION.(\[^\r\n\]*\[\r\n\])+ *12. *IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING(\[^\r\n\]*\[\r\n\])+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR(\[^\r\n\]*\[\r\n\])+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,(\[^\r\n\]*\[\r\n\])+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING(\[^\r\n\]*\[\r\n\])+OUT OF THE USE OR INABILITY TO USE THE PROGRAM .INCLUDING BUT NOT LIMITED(\[^\r\n\]*\[\r\n\])+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY(\[^\r\n\]*\[\r\n\])+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER(\[^\r\n\]*\[\r\n\])+PROGRAMS., EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE(\[^\r\n\]*\[\r\n\])+POSSIBILITY OF SUCH DAMAGES.*" "info warranty" - #test info watchpoints diff --git a/openwrt/toolchain/gdb/patches/620-debian_static-thread-db.patch b/openwrt/toolchain/gdb/patches/620-debian_static-thread-db.patch deleted file mode 100644 index c5ac5a6237..0000000000 --- a/openwrt/toolchain/gdb/patches/620-debian_static-thread-db.patch +++ /dev/null @@ -1,156 +0,0 @@ -Status: submitted similar patch 2004-12-08 - -This patch cleans up the initialization of thread_db. It works for static -binaries now. The vsyscall patches hide this problem, since new static -binaries will load the vsyscall DSO and then trigger thread_db; but -this is still a good cleanup. - -Index: gdb-6.3/gdb/thread-db.c -=================================================================== ---- gdb-6.3.orig/gdb/thread-db.c 2004-10-08 16:29:56.000000000 -0400 -+++ gdb-6.3/gdb/thread-db.c 2004-11-10 00:19:30.626530413 -0500 -@@ -34,6 +34,7 @@ - #include "target.h" - #include "regcache.h" - #include "solib-svr4.h" -+#include "observer.h" - - #ifdef HAVE_GNU_LIBC_VERSION_H - #include <gnu/libc-version.h> -@@ -627,59 +628,49 @@ check_thread_signals (void) - #endif - } - -+/* Check whether thread_db is usable. This function is called when -+ an inferior is created (or otherwise acquired, e.g. attached to) -+ and when new shared libraries are loaded into a running process. */ -+ - static void --thread_db_new_objfile (struct objfile *objfile) -+check_for_thread_db (void) - { - td_err_e err; -+ static int already_loaded; - - /* First time through, report that libthread_db was successfuly - loaded. Can't print this in in thread_db_load as, at that stage, -- the interpreter and it's console haven't started. The real -- problem here is that libthread_db is loaded too early - it should -- only be loaded when there is a program to debug. */ -- { -- static int dejavu; -- if (!dejavu) -- { -- Dl_info info; -- const char *library = NULL; -- /* Try dladdr. */ -- if (dladdr ((*td_ta_new_p), &info) != 0) -- library = info.dli_fname; -- /* Try dlinfo? */ -- if (library == NULL) -- /* Paranoid - don't let a NULL path slip through. */ -- library = LIBTHREAD_DB_SO; -- printf_unfiltered ("Using host libthread_db library \"%s\".\n", -- library); -- dejavu = 1; -- } -- } -+ the interpreter and it's console haven't started. */ - -- /* Don't attempt to use thread_db on targets which can not run -- (core files). */ -- if (objfile == NULL || !target_has_execution) -+ if (!already_loaded) - { -- /* All symbols have been discarded. If the thread_db target is -- active, deactivate it now. */ -- if (using_thread_db) -- { -- gdb_assert (proc_handle.pid == 0); -- unpush_target (&thread_db_ops); -- using_thread_db = 0; -- } -+ Dl_info info; -+ const char *library = NULL; -+ if (dladdr ((*td_ta_new_p), &info) != 0) -+ library = info.dli_fname; -+ -+ /* Try dlinfo? */ - -- goto quit; -+ if (library == NULL) -+ /* Paranoid - don't let a NULL path slip through. */ -+ library = LIBTHREAD_DB_SO; -+ -+ printf_unfiltered ("Using host libthread_db library \"%s\".\n", -+ library); -+ already_loaded = 1; - } - - if (using_thread_db) - /* Nothing to do. The thread library was already detected and the - target vector was already activated. */ -- goto quit; -+ return; -+ -+ /* Don't attempt to use thread_db on targets which can not run -+ (executables not running yet, core files) for now. */ -+ if (!target_has_execution) -+ return; - -- /* Initialize the structure that identifies the child process. Note -- that at this point there is no guarantee that we actually have a -- child process. */ -+ /* Initialize the structure that identifies the child process. */ - proc_handle.pid = GET_PID (inferior_ptid); - - /* Now attempt to open a connection to the thread library. */ -@@ -706,12 +697,24 @@ thread_db_new_objfile (struct objfile *o - thread_db_err_str (err)); - break; - } -+} -+ -+static void -+thread_db_new_objfile (struct objfile *objfile) -+{ -+ if (objfile != NULL) -+ check_for_thread_db (); - --quit: - if (target_new_objfile_chain) - target_new_objfile_chain (objfile); - } - -+static void -+check_for_thread_db_observer (struct target_ops *target, int from_tty) -+{ -+ check_for_thread_db (); -+} -+ - /* Attach to a new thread. This function is called when we receive a - TD_CREATE event or when we iterate over all threads and find one - that wasn't already in our list. */ -@@ -1366,5 +1369,8 @@ _initialize_thread_db (void) - /* Add ourselves to objfile event chain. */ - target_new_objfile_chain = deprecated_target_new_objfile_hook; - deprecated_target_new_objfile_hook = thread_db_new_objfile; -+ -+ /* Register ourselves for the new inferior observer. */ -+ observer_attach_inferior_created (check_for_thread_db_observer); - } - } -Index: gdb-6.3/gdb/Makefile.in -=================================================================== ---- gdb-6.3.orig/gdb/Makefile.in 2004-11-09 23:04:57.000000000 -0500 -+++ gdb-6.3/gdb/Makefile.in 2004-11-10 00:19:26.440347022 -0500 -@@ -2626,7 +2626,8 @@ thread.o: thread.c $(defs_h) $(symtab_h) - $(gdbcmd_h) $(regcache_h) $(gdb_h) $(gdb_string_h) $(ui_out_h) - thread-db.o: thread-db.c $(defs_h) $(gdb_assert_h) $(gdb_proc_service_h) \ - $(gdb_thread_db_h) $(bfd_h) $(gdbthread_h) $(inferior_h) \ -- $(symfile_h) $(objfiles_h) $(target_h) $(regcache_h) $(solib_svr4_h) -+ $(symfile_h) $(objfiles_h) $(target_h) $(regcache_h) $(solib_svr4_h) \ -+ $(observer_h) - top.o: top.c $(defs_h) $(gdbcmd_h) $(call_cmds_h) $(cli_cmds_h) \ - $(cli_script_h) $(cli_setshow_h) $(cli_decode_h) $(symtab_h) \ - $(inferior_h) $(target_h) $(breakpoint_h) $(gdbtypes_h) \ diff --git a/openwrt/toolchain/gdb/patches/630-debian_24.tracepoint-segv.patch b/openwrt/toolchain/gdb/patches/630-debian_24.tracepoint-segv.patch deleted file mode 100644 index d038ff8ecc..0000000000 --- a/openwrt/toolchain/gdb/patches/630-debian_24.tracepoint-segv.patch +++ /dev/null @@ -1,15 +0,0 @@ -Trivial. Still need to submit this. - -Index: gdb-6.1/gdb/tracepoint.c -=================================================================== ---- gdb-6.1.orig/gdb/tracepoint.c 2004-04-05 13:26:43.000000000 -0400 -+++ gdb-6.1/gdb/tracepoint.c 2004-04-05 13:26:45.000000000 -0400 -@@ -853,6 +853,8 @@ read_actions (struct tracepoint *t) - else - line = gdb_readline (0); - -+ if (line == NULL || *line == EOF) -+ break; - linetype = validate_actionline (&line, t); - if (linetype == BADLINE) - continue; /* already warned -- collect another line */ diff --git a/openwrt/toolchain/gdb/patches/640-debian_dwarf2-frame-signal-unwinder.patch b/openwrt/toolchain/gdb/patches/640-debian_dwarf2-frame-signal-unwinder.patch deleted file mode 100644 index 246427ee6f..0000000000 --- a/openwrt/toolchain/gdb/patches/640-debian_dwarf2-frame-signal-unwinder.patch +++ /dev/null @@ -1,120 +0,0 @@ -Status: Checked in to HEAD after 6.3. - -2004-11-07 Daniel Jacobowitz <dan@debian.org> - - * dwarf2-frame.c (struct dwarf2_frame_ops): Add signal_frame_p. - (dwarf2_frame_set_signal_frame_p, dwarf2_frame_signal_frame_p) - (dwarf2_signal_frame_unwind): New. - (dwarf2_frame_sniffer): Use dwarf2_frame_signal_frame_p. - * dwarf2-frame.h (dwarf2_frame_set_signal_frame_p): New prototype. - -Index: src/gdb/dwarf2-frame.c -=================================================================== -RCS file: /big/fsf/rsync/src-cvs/src/gdb/dwarf2-frame.c,v -retrieving revision 1.41 -diff -u -p -r1.41 dwarf2-frame.c ---- src/gdb/dwarf2-frame.c 4 Nov 2004 21:15:15 -0000 1.41 -+++ src/gdb/dwarf2-frame.c 7 Nov 2004 17:41:58 -0000 -@@ -471,6 +471,10 @@ struct dwarf2_frame_ops - { - /* Pre-initialize the register state REG for register REGNUM. */ - void (*init_reg) (struct gdbarch *, int, struct dwarf2_frame_state_reg *); -+ -+ /* Check whether the frame preceding NEXT_FRAME will be a signal -+ trampoline. */ -+ int (*signal_frame_p) (struct gdbarch *, struct frame_info *); - }; - - /* Default architecture-specific register state initialization -@@ -547,6 +551,33 @@ dwarf2_frame_init_reg (struct gdbarch *g - - ops->init_reg (gdbarch, regnum, reg); - } -+ -+/* Set the architecture-specific signal trampoline recognition -+ function for GDBARCH to SIGNAL_FRAME_P. */ -+ -+void -+dwarf2_frame_set_signal_frame_p (struct gdbarch *gdbarch, -+ int (*signal_frame_p) (struct gdbarch *, -+ struct frame_info *)) -+{ -+ struct dwarf2_frame_ops *ops = gdbarch_data (gdbarch, dwarf2_frame_data); -+ -+ ops->signal_frame_p = signal_frame_p; -+} -+ -+/* Query the architecture-specific signal frame recognizer for -+ NEXT_FRAME. */ -+ -+static int -+dwarf2_frame_signal_frame_p (struct gdbarch *gdbarch, -+ struct frame_info *next_frame) -+{ -+ struct dwarf2_frame_ops *ops = gdbarch_data (gdbarch, dwarf2_frame_data); -+ -+ if (ops->signal_frame_p == NULL) -+ return 0; -+ return ops->signal_frame_p (gdbarch, next_frame); -+} - - - struct dwarf2_frame_cache -@@ -841,6 +872,13 @@ static const struct frame_unwind dwarf2_ - dwarf2_frame_prev_register - }; - -+static const struct frame_unwind dwarf2_signal_frame_unwind = -+{ -+ SIGTRAMP_FRAME, -+ dwarf2_frame_this_id, -+ dwarf2_frame_prev_register -+}; -+ - const struct frame_unwind * - dwarf2_frame_sniffer (struct frame_info *next_frame) - { -@@ -848,10 +886,18 @@ dwarf2_frame_sniffer (struct frame_info - function. frame_pc_unwind(), for a no-return next function, can - end up returning something past the end of this function's body. */ - CORE_ADDR block_addr = frame_unwind_address_in_block (next_frame); -- if (dwarf2_frame_find_fde (&block_addr)) -- return &dwarf2_frame_unwind; -+ if (!dwarf2_frame_find_fde (&block_addr)) -+ return NULL; - -- return NULL; -+ /* On some targets, signal trampolines may have unwind information. -+ We need to recognize them so that we set the frame type -+ correctly. */ -+ -+ if (dwarf2_frame_signal_frame_p (get_frame_arch (next_frame), -+ next_frame)) -+ return &dwarf2_signal_frame_unwind; -+ -+ return &dwarf2_frame_unwind; - } - - -Index: src/gdb/dwarf2-frame.h -=================================================================== -RCS file: /big/fsf/rsync/src-cvs/src/gdb/dwarf2-frame.h,v -retrieving revision 1.6 -diff -u -p -r1.6 dwarf2-frame.h ---- src/gdb/dwarf2-frame.h 28 Feb 2004 16:59:32 -0000 1.6 -+++ src/gdb/dwarf2-frame.h 7 Nov 2004 17:40:41 -0000 -@@ -79,6 +79,14 @@ extern void dwarf2_frame_set_init_reg (s - void (*init_reg) (struct gdbarch *, int, - struct dwarf2_frame_state_reg *)); - -+/* Set the architecture-specific signal trampoline recognition -+ function for GDBARCH to SIGNAL_FRAME_P. */ -+ -+extern void -+ dwarf2_frame_set_signal_frame_p (struct gdbarch *gdbarch, -+ int (*signal_frame_p) (struct gdbarch *, -+ struct frame_info *)); -+ - /* Return the frame unwind methods for the function that contains PC, - or NULL if it can't be handled by DWARF CFI frame unwinder. */ - diff --git a/openwrt/toolchain/gdb/patches/650-debian_vsyscall-gdb-support.patch b/openwrt/toolchain/gdb/patches/650-debian_vsyscall-gdb-support.patch deleted file mode 100644 index e725f9c549..0000000000 --- a/openwrt/toolchain/gdb/patches/650-debian_vsyscall-gdb-support.patch +++ /dev/null @@ -1,245 +0,0 @@ -Status: Checked in to HEAD after 6.3. - -2004-11-07 Andrew Cagney <cagney@redhat.com> - Daniel Jacobowitz <dan@debian.org> - Roland McGrath <roland@redhat.com> - - * Makefile.in (symfile-mem.o): Update dependencies. - * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): New. - (i386_linux_init_abi): Call dwarf2_frame_set_signal_frame_p. - * inf-ptrace.c (inf_ptrace_attach): Call - observer_notify_inferior_created. - * inftarg.c (child_attach): Likewise. - * symfile-mem.c: Include "observer.h", "auxv.h", and "elf/common.h". - (symbol_file_add_from_memory): Take NAME argument. Use it for - the new BFD's filename. - (add_symbol_file_from_memory_command): Update call to - symbol_file_add_from_memory. - (struct symbol_file_add_from_memory_args, add_vsyscall_page) - (symbol_file_add_from_memory_wrapper): New. - (_initialize_symfile_mem): Register add_vsyscall_page as an - inferior_created observer. - -Index: gdb-6.3/gdb/i386-linux-tdep.c -=================================================================== ---- gdb-6.3.orig/gdb/i386-linux-tdep.c 2004-08-06 16:58:28.000000000 -0400 -+++ gdb-6.3/gdb/i386-linux-tdep.c 2004-11-10 00:55:06.669398770 -0500 -@@ -27,6 +27,7 @@ - #include "inferior.h" - #include "osabi.h" - #include "reggroups.h" -+#include "dwarf2-frame.h" - - #include "gdb_string.h" - -@@ -244,6 +245,27 @@ i386_linux_sigtramp_p (struct frame_info - || strcmp ("__restore_rt", name) == 0); - } - -+/* Return one if the unwound PC from NEXT_FRAME is in a signal trampoline -+ which may have DWARF-2 CFI. */ -+ -+static int -+i386_linux_dwarf_signal_frame_p (struct gdbarch *gdbarch, -+ struct frame_info *next_frame) -+{ -+ CORE_ADDR pc = frame_pc_unwind (next_frame); -+ char *name; -+ -+ find_pc_partial_function (pc, &name, NULL, NULL); -+ -+ /* If a vsyscall DSO is in use, the signal trampolines may have these -+ names. */ -+ if (name && (strcmp (name, "__kernel_sigreturn") == 0 -+ || strcmp (name, "__kernel_rt_sigreturn") == 0)) -+ return 1; -+ -+ return 0; -+} -+ - /* Offset to struct sigcontext in ucontext, from <asm/ucontext.h>. */ - #define I386_LINUX_UCONTEXT_SIGCONTEXT_OFFSET 20 - -@@ -414,6 +436,8 @@ i386_linux_init_abi (struct gdbarch_info - - /* GNU/Linux uses the dynamic linker included in the GNU C Library. */ - set_gdbarch_skip_solib_resolver (gdbarch, glibc_skip_solib_resolver); -+ -+ dwarf2_frame_set_signal_frame_p (gdbarch, i386_linux_dwarf_signal_frame_p); - } - - /* Provide a prototype to silence -Wmissing-prototypes. */ -Index: gdb-6.3/gdb/inf-ptrace.c -=================================================================== ---- gdb-6.3.orig/gdb/inf-ptrace.c 2004-10-15 09:29:33.000000000 -0400 -+++ gdb-6.3/gdb/inf-ptrace.c 2004-11-10 00:53:43.697615843 -0500 -@@ -220,6 +220,10 @@ inf_ptrace_attach (char *args, int from_ - - inferior_ptid = pid_to_ptid (pid); - push_target (ptrace_ops_hack); -+ -+ /* Do this first, before anything has had a chance to query the -+ inferior's symbol table or similar. */ -+ observer_notify_inferior_created (¤t_target, from_tty); - } - - static void -Index: gdb-6.3/gdb/inftarg.c -=================================================================== ---- gdb-6.3.orig/gdb/inftarg.c 2004-10-08 16:29:47.000000000 -0400 -+++ gdb-6.3/gdb/inftarg.c 2004-11-10 00:53:43.711613107 -0500 -@@ -211,6 +211,10 @@ child_attach (char *args, int from_tty) - - inferior_ptid = pid_to_ptid (pid); - push_target (&deprecated_child_ops); -+ -+ /* Do this first, before anything has had a chance to query the -+ inferior's symbol table or similar. */ -+ observer_notify_inferior_created (¤t_target, from_tty); - } - - #if !defined(CHILD_POST_ATTACH) -Index: gdb-6.3/gdb/symfile-mem.c -=================================================================== ---- gdb-6.3.orig/gdb/symfile-mem.c 2004-07-17 10:24:07.000000000 -0400 -+++ gdb-6.3/gdb/symfile-mem.c 2004-11-10 00:53:43.722610958 -0500 -@@ -52,13 +52,19 @@ - #include "target.h" - #include "value.h" - #include "symfile.h" -+#include "observer.h" -+#include "auxv.h" -+#include "elf/common.h" - - - /* Read inferior memory at ADDR to find the header of a loaded object file - and read its in-core symbols out of inferior memory. TEMPL is a bfd -- representing the target's format. */ -+ representing the target's format. NAME is the name to use for this -+ symbol file in messages; it can be NULL or a malloc-allocated string -+ which will be attached to the BFD. */ - static struct objfile * --symbol_file_add_from_memory (struct bfd *templ, CORE_ADDR addr, int from_tty) -+symbol_file_add_from_memory (struct bfd *templ, CORE_ADDR addr, char *name, -+ int from_tty) - { - struct objfile *objf; - struct bfd *nbfd; -@@ -75,7 +81,10 @@ symbol_file_add_from_memory (struct bfd - if (nbfd == NULL) - error ("Failed to read a valid object file image from memory."); - -- nbfd->filename = xstrdup ("shared object read from target memory"); -+ if (name == NULL) -+ nbfd->filename = xstrdup ("shared object read from target memory"); -+ else -+ nbfd->filename = name; - - if (!bfd_check_format (nbfd, bfd_object)) - { -@@ -129,7 +138,73 @@ add_symbol_file_from_memory_command (cha - error ("\ - Must use symbol-file or exec-file before add-symbol-file-from-memory."); - -- symbol_file_add_from_memory (templ, addr, from_tty); -+ symbol_file_add_from_memory (templ, addr, NULL, from_tty); -+} -+ -+/* Arguments for symbol_file_add_from_memory_wrapper. */ -+ -+struct symbol_file_add_from_memory_args -+{ -+ struct bfd *bfd; -+ CORE_ADDR sysinfo_ehdr; -+ char *name; -+ int from_tty; -+}; -+ -+/* Wrapper function for symbol_file_add_from_memory, for -+ catch_exceptions. */ -+ -+static int -+symbol_file_add_from_memory_wrapper (struct ui_out *uiout, void *data) -+{ -+ struct symbol_file_add_from_memory_args *args = data; -+ -+ symbol_file_add_from_memory (args->bfd, args->sysinfo_ehdr, args->name, -+ args->from_tty); -+ return 0; -+} -+ -+/* Try to add the symbols for the vsyscall page, if there is one. This function -+ is called via the inferior_created observer. */ -+ -+static void -+add_vsyscall_page (struct target_ops *target, int from_tty) -+{ -+ CORE_ADDR sysinfo_ehdr; -+ -+ if (target_auxv_search (target, AT_SYSINFO_EHDR, &sysinfo_ehdr) > 0 -+ && sysinfo_ehdr != (CORE_ADDR) 0) -+ { -+ struct bfd *bfd; -+ struct symbol_file_add_from_memory_args args; -+ -+ if (core_bfd != NULL) -+ bfd = core_bfd; -+ else if (exec_bfd != NULL) -+ bfd = exec_bfd; -+ else -+ /* FIXME: cagney/2004-05-06: Should not require an existing -+ BFD when trying to create a run-time BFD of the VSYSCALL -+ page in the inferior. Unfortunately that's the current -+ interface so for the moment bail. Introducing a -+ ``bfd_runtime'' (a BFD created using the loaded image) file -+ format should fix this. */ -+ { -+ warning ("could not load vsyscall page because no executable was specified"); -+ warning ("try using the \"file\" command first"); -+ return; -+ } -+ args.bfd = bfd; -+ args.sysinfo_ehdr = sysinfo_ehdr; -+ xasprintf (&args.name, "system-supplied DSO at 0x%s", -+ paddr_nz (sysinfo_ehdr)); -+ /* Pass zero for FROM_TTY, because the action of loading the -+ vsyscall DSO was not triggered by the user, even if the user -+ typed "run" at the TTY. */ -+ args.from_tty = 0; -+ catch_exceptions (uiout, symbol_file_add_from_memory_wrapper, -+ &args, NULL, RETURN_MASK_ALL); -+ } - } - - -@@ -143,4 +218,7 @@ Load the symbols out of memory from a dy - Give an expression for the address of the file's shared object file header.", - &cmdlist); - -+ /* Want to know of each new inferior so that its vsyscall info can -+ be extracted. */ -+ observer_attach_inferior_created (add_vsyscall_page); - } -Index: gdb-6.3/gdb/Makefile.in -=================================================================== ---- gdb-6.3.orig/gdb/Makefile.in 2004-11-10 00:29:00.000000000 -0500 -+++ gdb-6.3/gdb/Makefile.in 2004-11-10 00:54:47.728100986 -0500 -@@ -2020,7 +2020,7 @@ i386-linux-nat.o: i386-linux-nat.c $(def - i386-linux-tdep.o: i386-linux-tdep.c $(defs_h) $(gdbcore_h) $(frame_h) \ - $(value_h) $(regcache_h) $(inferior_h) $(osabi_h) $(reggroups_h) \ - $(gdb_string_h) $(i386_tdep_h) $(i386_linux_tdep_h) $(glibc_tdep_h) \ -- $(solib_svr4_h) -+ $(solib_svr4_h) $(dwarf2_frame_h) - i386ly-tdep.o: i386ly-tdep.c $(defs_h) $(gdbcore_h) $(inferior_h) \ - $(regcache_h) $(target_h) $(osabi_h) $(i386_tdep_h) - i386-nat.o: i386-nat.c $(defs_h) $(breakpoint_h) $(command_h) $(gdbcmd_h) -@@ -2606,7 +2606,8 @@ symfile.o: symfile.c $(defs_h) $(bfdlink - $(hashtab_h) $(readline_h) $(gdb_assert_h) $(block_h) \ - $(gdb_string_h) $(gdb_stat_h) - symfile-mem.o: symfile-mem.c $(defs_h) $(symtab_h) $(gdbcore_h) \ -- $(objfiles_h) $(gdbcmd_h) $(target_h) $(value_h) $(symfile_h) -+ $(objfiles_h) $(gdbcmd_h) $(target_h) $(value_h) $(symfile_h) \ -+ $(observer_h) $(auxv_h) $(elf_common_h) - symmisc.o: symmisc.c $(defs_h) $(symtab_h) $(gdbtypes_h) $(bfd_h) \ - $(symfile_h) $(objfiles_h) $(breakpoint_h) $(command_h) \ - $(gdb_obstack_h) $(language_h) $(bcache_h) $(block_h) $(gdb_regex_h) \ diff --git a/openwrt/toolchain/gdb/patches/660-debian_dwarf-cfa-restore.patch b/openwrt/toolchain/gdb/patches/660-debian_dwarf-cfa-restore.patch deleted file mode 100644 index 8b81cca710..0000000000 --- a/openwrt/toolchain/gdb/patches/660-debian_dwarf-cfa-restore.patch +++ /dev/null @@ -1,23 +0,0 @@ -Status: Checked in to HEAD after 6.3. - -2004-11-09 Daniel Jacobowitz <dan@debian.org> - - * dwarf2-frame.c (dwarf2_frame_state_alloc_regs): Correct allocated - size. - -Index: src/gdb/dwarf2-frame.c -=================================================================== -RCS file: /cvs/src/src/gdb/dwarf2-frame.c,v -retrieving revision 1.45 -diff -u -p -r1.45 dwarf2-frame.c ---- src/gdb/dwarf2-frame.c 7 Nov 2004 21:16:11 -0000 1.45 -+++ src/gdb/dwarf2-frame.c 9 Nov 2004 14:42:52 -0000 -@@ -162,7 +162,7 @@ dwarf2_frame_state_alloc_regs (struct dw - static struct dwarf2_frame_state_reg * - dwarf2_frame_state_copy_regs (struct dwarf2_frame_state_reg_info *rs) - { -- size_t size = rs->num_regs * sizeof (struct dwarf2_frame_state_reg_info); -+ size_t size = rs->num_regs * sizeof (struct dwarf2_frame_state_reg); - struct dwarf2_frame_state_reg *reg; - - reg = (struct dwarf2_frame_state_reg *) xmalloc (size); diff --git a/openwrt/toolchain/gdb/patches/680-debian_sim-destdir.patch b/openwrt/toolchain/gdb/patches/680-debian_sim-destdir.patch deleted file mode 100644 index 71f60b5c67..0000000000 --- a/openwrt/toolchain/gdb/patches/680-debian_sim-destdir.patch +++ /dev/null @@ -1,53 +0,0 @@ -Fix some missing uses of DESTDIR in the sim/ directories. The Debian -packages use DESTDIR to build. - -%patch -Index: gdb-6.3/sim/Makefile.in -=================================================================== ---- gdb-6.3.orig/sim/Makefile.in 2003-09-03 14:46:52.000000000 -0400 -+++ gdb-6.3/sim/Makefile.in 2004-11-10 00:39:25.381315738 -0500 -@@ -93,6 +93,7 @@ FLAGS_TO_PASS = \ - "CC=$(CC)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ -+ "DESTDIR=$(DESTDIR)" \ - "RANLIB=$(RANLIB)" \ - "MAKEINFO=$(MAKEINFO)" \ - "INSTALL=$(INSTALL)" \ -Index: gdb-6.3/sim/common/Make-common.in -=================================================================== ---- gdb-6.3.orig/sim/common/Make-common.in 2003-09-08 13:24:59.000000000 -0400 -+++ gdb-6.3/sim/common/Make-common.in 2004-11-10 00:39:25.383315347 -0500 -@@ -581,14 +581,14 @@ install: install-common $(SIM_EXTRA_INST - - install-common: installdirs - n=`echo run | sed '$(program_transform_name)'`; \ -- $(INSTALL_PROGRAM) run$(EXEEXT) $(bindir)/$$n$(EXEEXT) -+ $(INSTALL_PROGRAM) run$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT) - n=`echo libsim.a | sed s/libsim.a/lib$(target_alias)-sim.a/`; \ -- $(INSTALL_DATA) libsim.a $(libdir)/$$n ; \ -- ( cd $(libdir) ; $(RANLIB) $$n ) -+ $(INSTALL_DATA) libsim.a $(DESTDIR)$(libdir)/$$n ; \ -+ ( cd $(DESTDIR)$(libdir) ; $(RANLIB) $$n ) - - installdirs: -- $(SHELL) $(srcdir)/../../mkinstalldirs $(bindir) -- $(SHELL) $(srcdir)/../../mkinstalldirs $(libdir) -+ $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(bindir) -+ $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(libdir) - - check: - cd ../testsuite && $(MAKE) check RUNTESTFLAGS="$(RUNTESTFLAGS)" -Index: gdb-6.3/sim/erc32/Makefile.in -=================================================================== ---- gdb-6.3.orig/sim/erc32/Makefile.in 2000-03-07 10:32:49.000000000 -0500 -+++ gdb-6.3/sim/erc32/Makefile.in 2004-11-10 00:39:25.385314957 -0500 -@@ -53,7 +53,7 @@ end.h: end - # Copy the files into directories where they will be run. - install-sis: installdirs - n=`echo sis | sed '$(program_transform_name)'`; \ -- $(INSTALL_PROGRAM) sis$(EXEEXT) $(bindir)/$$n$(EXEEXT) -+ $(INSTALL_PROGRAM) sis$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT) - - clean-sis: - rm -f sis end end.h diff --git a/openwrt/toolchain/gdb/patches/690-debian_member-field-symtab.patch b/openwrt/toolchain/gdb/patches/690-debian_member-field-symtab.patch deleted file mode 100644 index 4f5fb45c33..0000000000 --- a/openwrt/toolchain/gdb/patches/690-debian_member-field-symtab.patch +++ /dev/null @@ -1,35 +0,0 @@ -Status: unsubmitted - -This patch was for Debian bug #239535. It needs to be tested, and -submitted. - -Index: gdb-6.3/gdb/valops.c -=================================================================== ---- gdb-6.3.orig/gdb/valops.c 2004-11-09 22:51:07.000000000 -0500 -+++ gdb-6.3/gdb/valops.c 2004-11-10 00:43:54.036837699 -0500 -@@ -2314,8 +2314,10 @@ check_field_in (struct type *type, const - return 1; - } - -+ /* Check each baseclass. Call check_typedef, which will follow typedefs -+ and do opaque/stub type resolution. */ - for (i = TYPE_N_BASECLASSES (type) - 1; i >= 0; i--) -- if (check_field_in (TYPE_BASECLASS (type, i), name)) -+ if (check_field_in (check_typedef (TYPE_BASECLASS (type, i)), name)) - return 1; - - return 0; -Index: gdb-6.3/gdb/dwarf2read.c -=================================================================== ---- gdb-6.3.orig/gdb/dwarf2read.c 2004-10-15 20:41:00.000000000 -0400 -+++ gdb-6.3/gdb/dwarf2read.c 2004-11-10 00:46:21.970935829 -0500 -@@ -2099,8 +2099,8 @@ guess_structure_name (struct partial_die - strlen (actual_class_name), - &cu->comp_unit_obstack); - xfree (actual_class_name); -+ break; - } -- break; - } - - child_pdi = child_pdi->die_sibling; diff --git a/openwrt/toolchain/gdb/patches/700-debian_cp-pass-by-reference.patch b/openwrt/toolchain/gdb/patches/700-debian_cp-pass-by-reference.patch deleted file mode 100644 index 666d343429..0000000000 --- a/openwrt/toolchain/gdb/patches/700-debian_cp-pass-by-reference.patch +++ /dev/null @@ -1,464 +0,0 @@ -This patch needs to be submitted for the FSF. Also, there may be testcases -already in the GDB testsuite (currently disabled) that it would probably fix. - -Index: gdb-6.3/gdb/infcall.c -=================================================================== ---- gdb-6.3.orig/gdb/infcall.c 2004-10-08 04:15:56.000000000 -0400 -+++ gdb-6.3/gdb/infcall.c 2004-11-10 12:30:07.000000000 -0500 -@@ -36,6 +36,7 @@ - #include "gdb_string.h" - #include "infcall.h" - #include "dummy-frame.h" -+#include "cp-abi.h" - - /* NOTE: cagney/2003-04-16: What's the future of this code? - -@@ -297,8 +298,8 @@ call_function_by_hand (struct value *fun - { - CORE_ADDR sp; - CORE_ADDR dummy_addr; -- struct type *value_type; -- unsigned char struct_return; -+ struct type *value_type, *target_value_type; -+ unsigned char struct_return = 0, cp_struct_return = 0; - CORE_ADDR struct_addr = 0; - struct regcache *retbuf; - struct cleanup *retbuf_cleanup; -@@ -312,6 +313,7 @@ call_function_by_hand (struct value *fun - struct regcache *caller_regcache; - struct cleanup *caller_regcache_cleanup; - struct frame_id dummy_id; -+ struct cleanup *args_cleanup; - - if (!target_has_execution) - noprocess (); -@@ -410,10 +412,31 @@ call_function_by_hand (struct value *fun - using_gcc = (b == NULL ? 2 : BLOCK_GCC_COMPILED (b)); - } - -- /* Are we returning a value using a structure return or a normal -- value return? */ -+ /* Are we returning a value using a structure return (passing a -+ hidden argument pointing to storage) or a normal value return? -+ There are two cases: C++ ABI mandated structure return and -+ target ABI structure return. The variable STRUCT_RETURN only -+ describes the latter. The C++ version is handled by passing -+ the return location as the first parameter to the function, -+ even preceding "this". This is different from the target -+ ABI version, which is target-specific; for instance, on ia64 -+ the first argument is passed in out0 but the hidden structure -+ return pointer would normally be passed in r8. */ - -- struct_return = using_struct_return (value_type, using_gcc); -+ if (current_language->la_language == language_cplus -+ && cp_pass_by_reference (value_type)) -+ { -+ cp_struct_return = 1; -+ -+ /* Tell the target specific argument pushing routine not to -+ expect a value. */ -+ target_value_type = builtin_type_void; -+ } -+ else -+ { -+ struct_return = using_struct_return (value_type, using_gcc); -+ target_value_type = value_type; -+ } - - /* Determine the location of the breakpoint (and possibly other - stuff) that the called function will return to. The SPARC, for a -@@ -432,7 +455,7 @@ call_function_by_hand (struct value *fun - if (INNER_THAN (1, 2)) - { - sp = push_dummy_code (current_gdbarch, sp, funaddr, -- using_gcc, args, nargs, value_type, -+ using_gcc, args, nargs, target_value_type, - &real_pc, &bp_addr); - dummy_addr = sp; - } -@@ -440,7 +463,7 @@ call_function_by_hand (struct value *fun - { - dummy_addr = sp; - sp = push_dummy_code (current_gdbarch, sp, funaddr, -- using_gcc, args, nargs, value_type, -+ using_gcc, args, nargs, target_value_type, - &real_pc, &bp_addr); - } - break; -@@ -507,9 +530,15 @@ call_function_by_hand (struct value *fun - param_type = TYPE_FIELD_TYPE (ftype, i); - else - param_type = NULL; -- -+ - args[i] = value_arg_coerce (args[i], param_type, prototyped); - -+ /* FIXME: Is current_language the right language? */ -+ if (current_language->la_language == language_cplus -+ && param_type != NULL -+ && cp_pass_by_reference (param_type)) -+ args[i] = value_addr (args[i]); -+ - /* elz: this code is to handle the case in which the function - to be called has a pointer to function as parameter and the - corresponding actual argument is the address of a function -@@ -607,7 +636,7 @@ You must use a pointer to function type - stack, if necessary. Make certain that the value is correctly - aligned. */ - -- if (struct_return) -+ if (struct_return || cp_struct_return) - { - int len = TYPE_LENGTH (value_type); - if (INNER_THAN (1, 2)) -@@ -632,6 +661,22 @@ You must use a pointer to function type - } - } - -+ if (cp_struct_return) -+ { -+ struct value **new_args; -+ -+ /* Add the new argument to the front of the argument list. */ -+ new_args = xmalloc (sizeof (struct value *) * (nargs + 1)); -+ new_args[0] = value_from_pointer (lookup_pointer_type (value_type), -+ struct_addr); -+ memcpy (&new_args[1], &args[0], sizeof (struct value *) * nargs); -+ args = new_args; -+ nargs++; -+ args_cleanup = make_cleanup (xfree, args); -+ } -+ else -+ args_cleanup = make_cleanup (null_cleanup, NULL); -+ - /* Create the dummy stack frame. Pass in the call dummy address as, - presumably, the ABI code knows where, in the call dummy, the - return address should be pointed. */ -@@ -649,6 +694,8 @@ You must use a pointer to function type - else - error ("This target does not support function calls"); - -+ do_cleanups (args_cleanup); -+ - /* Set up a frame ID for the dummy frame so we can pass it to - set_momentary_breakpoint. We need to give the breakpoint a frame - ID so that the breakpoint code can correctly re-identify the -@@ -839,11 +886,7 @@ the function call).", name); - /* Figure out the value returned by the function, return that. */ - { - struct value *retval; -- if (TYPE_CODE (value_type) == TYPE_CODE_VOID) -- /* If the function returns void, don't bother fetching the -- return value. */ -- retval = allocate_value (value_type); -- else if (struct_return) -+ if (struct_return || cp_struct_return) - /* NOTE: cagney/2003-09-27: This assumes that PUSH_DUMMY_CALL - has correctly stored STRUCT_ADDR in the target. In the past - that hasn't been the case, the old MIPS PUSH_ARGUMENTS -@@ -853,6 +896,10 @@ the function call).", name); - "struct return convention", check that PUSH_DUMMY_CALL isn't - playing tricks. */ - retval = value_at (value_type, struct_addr, NULL); -+ else if (TYPE_CODE (value_type) == TYPE_CODE_VOID) -+ /* If the function returns void, don't bother fetching the -+ return value. */ -+ retval = allocate_value (value_type); - else - { - /* This code only handles "register convention". */ -Index: gdb-6.3/gdb/cp-abi.h -=================================================================== ---- gdb-6.3.orig/gdb/cp-abi.h 2003-04-12 13:41:25.000000000 -0400 -+++ gdb-6.3/gdb/cp-abi.h 2004-11-10 12:30:07.000000000 -0500 -@@ -1,7 +1,7 @@ - /* Abstraction of various C++ ABI's we support, and the info we need - to get from them. - Contributed by Daniel Berlin <dberlin@redhat.com> -- Copyright 2001 Free Software Foundation, Inc. -+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc. - - This file is part of GDB. - -@@ -145,6 +145,10 @@ extern struct type *value_rtti_type (str - extern int baseclass_offset (struct type *type, int index, char *valaddr, - CORE_ADDR address); - -+/* Return non-zero if an argument of type TYPE should be passed by reference -+ instead of value. */ -+extern int cp_pass_by_reference (struct type *type); -+ - struct cp_abi_ops - { - const char *shortname; -@@ -162,6 +166,7 @@ struct cp_abi_ops - int *using_enc); - int (*baseclass_offset) (struct type *type, int index, char *valaddr, - CORE_ADDR address); -+ int (*pass_by_reference) (struct type *type); - }; - - -Index: gdb-6.3/gdb/cp-abi.c -=================================================================== ---- gdb-6.3.orig/gdb/cp-abi.c 2003-11-26 17:04:00.000000000 -0500 -+++ gdb-6.3/gdb/cp-abi.c 2004-11-10 12:30:07.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Generic code for supporting multiple C++ ABI's -- Copyright 2001, 2002, 2003 Free Software Foundation, Inc. -+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc. - - This file is part of GDB. - -@@ -94,6 +94,14 @@ value_rtti_type (struct value *v, int *f - return (*current_cp_abi.rtti_type) (v, full, top, using_enc); - } - -+int -+cp_pass_by_reference (struct type *type) -+{ -+ if ((current_cp_abi.pass_by_reference) == NULL) -+ return 0; -+ return (*current_cp_abi.pass_by_reference) (type); -+} -+ - /* Set the current C++ ABI to SHORT_NAME. */ - - static int -Index: gdb-6.3/gdb/gnu-v3-abi.c -=================================================================== ---- gdb-6.3.orig/gdb/gnu-v3-abi.c 2004-03-15 15:38:08.000000000 -0500 -+++ gdb-6.3/gdb/gnu-v3-abi.c 2004-11-10 12:30:07.000000000 -0500 -@@ -1,7 +1,7 @@ - /* Abstraction of GNU v3 abi. - Contributed by Jim Blandy <jimb@redhat.com> - -- Copyright 2001, 2002, 2003 Free Software Foundation, Inc. -+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc. - - This file is part of GDB. - -@@ -419,6 +419,84 @@ gnuv3_baseclass_offset (struct type *typ - return base_offset; - } - -+/* Return nonzero if a type should be passed by reference. -+ -+ The rule in the v3 ABI document comes from section 3.1.1. If the -+ type has a non-trivial copy constructor or destructor, then the -+ caller must make a copy (by calling the copy constructor if there -+ is one or perform the copy itself otherwise), pass the address of -+ the copy, and then destroy the temporary (if necessary). -+ -+ For return values with non-trivial copy constructors or -+ destructors, space will be allocated in the caller, and a pointer -+ will be passed as the first argument (preceding "this"). -+ -+ We don't have a bulletproof mechanism for determining whether a -+ constructor or destructor is trivial. For GCC and DWARF2 debug -+ information, we can check the artificial flag. -+ -+ We don't do anything with the constructors or destructors yet, -+ but we have to get the argument passing right anyway. */ -+static int -+gnuv3_pass_by_reference (struct type *type) -+{ -+ int fieldnum, fieldelem, basenum; -+ -+ CHECK_TYPEDEF (type); -+ -+ /* We're only interested in things that can have methods. */ -+ if (TYPE_CODE (type) != TYPE_CODE_STRUCT -+ && TYPE_CODE (type) != TYPE_CODE_CLASS -+ && TYPE_CODE (type) != TYPE_CODE_UNION) -+ return 0; -+ -+ for (fieldnum = 0; fieldnum < TYPE_NFN_FIELDS (type); fieldnum++) -+ for (fieldelem = 0; fieldelem < TYPE_FN_FIELDLIST_LENGTH (type, fieldnum); -+ fieldelem++) -+ { -+ struct fn_field *fn = TYPE_FN_FIELDLIST1 (type, fieldnum); -+ char *name = TYPE_FN_FIELDLIST_NAME (type, fieldnum); -+ struct type *fieldtype = TYPE_FN_FIELD_TYPE (fn, fieldelem); -+ -+ /* If this function is marked as artificial, it is compiler-generated, -+ and we assume it is trivial. */ -+ if (TYPE_FN_FIELD_ARTIFICIAL (fn, fieldelem)) -+ continue; -+ -+ /* If we've found a destructor, we must pass this by reference. */ -+ if (name[0] == '~') -+ return 1; -+ -+ /* If the mangled name of this method doesn't indicate that it -+ is a constructor, we're not interested. -+ -+ FIXME drow/2004-05-27: We could do this using the name of -+ the method and the name of the class instead of dealing -+ with the mangled name. We don't have a convenient function -+ to strip off both leading scope qualifiers and trailing -+ template arguments yet. */ -+ if (!is_constructor_name (TYPE_FN_FIELD_PHYSNAME (fn, fieldelem))) -+ continue; -+ -+ /* If this method takes two arguments, and the second argument is -+ a reference to this class, then it is a copy constructor. */ -+ if (TYPE_NFIELDS (fieldtype) == 2 -+ && TYPE_CODE (TYPE_FIELD_TYPE (fieldtype, 1)) == TYPE_CODE_REF -+ && check_typedef (TYPE_TARGET_TYPE (TYPE_FIELD_TYPE (fieldtype, 1))) == type) -+ return 1; -+ } -+ -+ /* Even if all the constructors and destructors were artificial, one -+ of them may have invoked a non-artificial constructor or -+ destructor in a base class. If any base class needs to be passed -+ by reference, so does this class. */ -+ for (basenum = 0; basenum < TYPE_N_BASECLASSES (type); basenum++) -+ if (gnuv3_pass_by_reference (TYPE_BASECLASS (type, basenum))) -+ return 1; -+ -+ return 0; -+} -+ - static void - init_gnuv3_ops (void) - { -@@ -434,6 +512,7 @@ init_gnuv3_ops (void) - gnu_v3_abi_ops.rtti_type = gnuv3_rtti_type; - gnu_v3_abi_ops.virtual_fn_field = gnuv3_virtual_fn_field; - gnu_v3_abi_ops.baseclass_offset = gnuv3_baseclass_offset; -+ gnu_v3_abi_ops.pass_by_reference = gnuv3_pass_by_reference; - } - - extern initialize_file_ftype _initialize_gnu_v3_abi; /* -Wmissing-prototypes */ -Index: gdb-6.3/gdb/hpacc-abi.c -=================================================================== ---- gdb-6.3.orig/gdb/hpacc-abi.c 2003-06-08 14:27:13.000000000 -0400 -+++ gdb-6.3/gdb/hpacc-abi.c 2004-11-10 12:30:07.000000000 -0500 -@@ -3,7 +3,7 @@ - Most of the real code is from HP, i've just fiddled it to fit in - the C++ ABI abstraction framework. - -- Copyright 2001 Free Software Foundation, Inc. -+ Copyright 2001, 2002, 2003 Free Software Foundation, Inc. - - This file is part of GDB. - -Index: gdb-6.3/gdb/Makefile.in -=================================================================== ---- gdb-6.3.orig/gdb/Makefile.in 2004-11-10 12:30:06.000000000 -0500 -+++ gdb-6.3/gdb/Makefile.in 2004-11-10 12:30:07.000000000 -0500 -@@ -2073,7 +2073,7 @@ ia64-tdep.o: ia64-tdep.c $(defs_h) $(inf - infcall.o: infcall.c $(defs_h) $(breakpoint_h) $(target_h) $(regcache_h) \ - $(inferior_h) $(gdb_assert_h) $(block_h) $(gdbcore_h) $(language_h) \ - $(objfiles_h) $(gdbcmd_h) $(command_h) $(gdb_string_h) $(infcall_h) \ -- $(dummy_frame_h) -+ $(dummy_frame_h) $(cp_abi_h) - inf-child.o: inf-child.c $(defs_h) $(regcache_h) $(memattr_h) $(symtab_h) \ - $(target_h) $(inferior_h) $(gdb_string_h) - infcmd.o: infcmd.c $(defs_h) $(gdb_string_h) $(symtab_h) $(gdbtypes_h) \ -Index: gdb-6.3/gdb/testsuite/gdb.cp/pass-by-ref.exp -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ gdb-6.3/gdb/testsuite/gdb.cp/pass-by-ref.exp 2004-11-11 09:48:00.498518899 -0500 -@@ -0,0 +1,38 @@ -+# This testcase is part of GDB, the GNU debugger. -+ -+# Copyright 2004 Free Software Foundation, Inc. -+ -+# This program is free software; you can redistribute it and/or modify -+# it 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. -+# -+# This program 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 General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ -+# Check that GDB can call C++ functions whose parameters have -+# object type, but are passed by reference. -+ -+set testfile "pass-by-ref" -+set srcfile ${testfile}.cc -+set binfile ${objdir}/${subdir}/${testfile} -+if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { -+ return -1 -+} -+ -+gdb_exit -+gdb_start -+gdb_reinitialize_dir $srcdir/$subdir -+gdb_load ${binfile} -+ -+if ![runto_main] then { -+ return -1 -+} -+ -+gdb_test "print foo (global_obj)" " = 3" "call function" -Index: gdb-6.3/gdb/testsuite/gdb.cp/pass-by-ref.cc -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ gdb-6.3/gdb/testsuite/gdb.cp/pass-by-ref.cc 2004-11-11 09:44:17.815014667 -0500 -@@ -0,0 +1,57 @@ -+/* This testcase is part of GDB, the GNU debugger. -+ -+ Copyright 2004 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify -+ it 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. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+class Obj { -+public: -+ Obj (); -+ Obj (const Obj &); -+ ~Obj (); -+ int var[2]; -+}; -+ -+int foo (Obj arg) -+{ -+ return arg.var[0] + arg.var[1]; -+} -+ -+Obj::Obj () -+{ -+ var[0] = 1; -+ var[1] = 2; -+} -+ -+Obj::Obj (const Obj &obj) -+{ -+ var[0] = obj.var[0]; -+ var[1] = obj.var[1]; -+} -+ -+Obj::~Obj () -+{ -+ -+} -+ -+Obj global_obj; -+ -+int -+main () -+{ -+ int bar = foo (global_obj); -+ return bar; -+} diff --git a/openwrt/toolchain/gdb/patches/710-debian_thread-db-multiple-libraries.patch b/openwrt/toolchain/gdb/patches/710-debian_thread-db-multiple-libraries.patch deleted file mode 100644 index c164bd11a2..0000000000 --- a/openwrt/toolchain/gdb/patches/710-debian_thread-db-multiple-libraries.patch +++ /dev/null @@ -1,593 +0,0 @@ -Support loading two libthread_db DSOs. In this case, the LinuxThreads -and NPTL ones. - -Index: gdb-6.3/gdb/thread-db.c -=================================================================== ---- gdb-6.3.orig/gdb/thread-db.c 2004-11-10 10:46:24.000000000 -0500 -+++ gdb-6.3/gdb/thread-db.c 2004-11-10 11:22:34.858812426 -0500 -@@ -79,53 +79,63 @@ static td_thragent_t *thread_agent; - - /* Pointers to the libthread_db functions. */ - --static td_err_e (*td_init_p) (void); -+struct thread_db_pointers -+{ -+ const char *filename; -+ -+ td_err_e (*td_init_p) (void); - --static td_err_e (*td_ta_new_p) (struct ps_prochandle * ps, -- td_thragent_t **ta); --static td_err_e (*td_ta_map_id2thr_p) (const td_thragent_t *ta, thread_t pt, -- td_thrhandle_t *__th); --static td_err_e (*td_ta_map_lwp2thr_p) (const td_thragent_t *ta, -- lwpid_t lwpid, td_thrhandle_t *th); --static td_err_e (*td_ta_thr_iter_p) (const td_thragent_t *ta, -- td_thr_iter_f *callback, void *cbdata_p, -- td_thr_state_e state, int ti_pri, -- sigset_t *ti_sigmask_p, -- unsigned int ti_user_flags); --static td_err_e (*td_ta_event_addr_p) (const td_thragent_t *ta, -- td_event_e event, td_notify_t *ptr); --static td_err_e (*td_ta_set_event_p) (const td_thragent_t *ta, -- td_thr_events_t *event); --static td_err_e (*td_ta_event_getmsg_p) (const td_thragent_t *ta, -- td_event_msg_t *msg); -- --static td_err_e (*td_thr_validate_p) (const td_thrhandle_t *th); --static td_err_e (*td_thr_get_info_p) (const td_thrhandle_t *th, -- td_thrinfo_t *infop); --static td_err_e (*td_thr_getfpregs_p) (const td_thrhandle_t *th, -- gdb_prfpregset_t *regset); --static td_err_e (*td_thr_getgregs_p) (const td_thrhandle_t *th, -- prgregset_t gregs); --static td_err_e (*td_thr_setfpregs_p) (const td_thrhandle_t *th, -- const gdb_prfpregset_t *fpregs); --static td_err_e (*td_thr_setgregs_p) (const td_thrhandle_t *th, -- prgregset_t gregs); --static td_err_e (*td_thr_event_enable_p) (const td_thrhandle_t *th, -- int event); -- --static td_err_e (*td_thr_tls_get_addr_p) (const td_thrhandle_t *th, -- void *map_address, -- size_t offset, void **address); -+ td_err_e (*td_ta_new_p) (struct ps_prochandle * ps, -+ td_thragent_t **ta); -+ td_err_e (*td_ta_map_id2thr_p) (const td_thragent_t *ta, thread_t pt, -+ td_thrhandle_t *__th); -+ td_err_e (*td_ta_map_lwp2thr_p) (const td_thragent_t *ta, -+ lwpid_t lwpid, td_thrhandle_t *th); -+ -+ td_err_e (*td_ta_thr_iter_p) (const td_thragent_t *ta, -+ td_thr_iter_f *callback, void *cbdata_p, -+ td_thr_state_e state, int ti_pri, -+ sigset_t *ti_sigmask_p, -+ unsigned int ti_user_flags); -+ td_err_e (*td_ta_event_addr_p) (const td_thragent_t *ta, -+ td_event_e event, td_notify_t *ptr); -+ td_err_e (*td_ta_set_event_p) (const td_thragent_t *ta, -+ td_thr_events_t *event); -+ td_err_e (*td_ta_event_getmsg_p) (const td_thragent_t *ta, -+ td_event_msg_t *msg); -+ -+ td_err_e (*td_thr_validate_p) (const td_thrhandle_t *th); -+ td_err_e (*td_thr_get_info_p) (const td_thrhandle_t *th, -+ td_thrinfo_t *infop); -+ td_err_e (*td_thr_getfpregs_p) (const td_thrhandle_t *th, -+ gdb_prfpregset_t *regset); -+ td_err_e (*td_thr_getgregs_p) (const td_thrhandle_t *th, -+ prgregset_t gregs); -+ td_err_e (*td_thr_setfpregs_p) (const td_thrhandle_t *th, -+ const gdb_prfpregset_t *fpregs); -+ td_err_e (*td_thr_setgregs_p) (const td_thrhandle_t *th, -+ prgregset_t gregs); -+ td_err_e (*td_thr_event_enable_p) (const td_thrhandle_t *th, -+ int event); -+ -+ td_err_e (*td_thr_tls_get_addr_p) (const td_thrhandle_t *th, -+ void *map_address, -+ size_t offset, void **address); -+ -+ struct thread_db_pointers *next; -+}; - - /* Location of the thread creation event breakpoint. The code at this - location in the child process will be called by the pthread library - whenever a new thread is created. By setting a special breakpoint - at this location, GDB can detect when a new thread is created. We - obtain this location via the td_ta_event_addr call. */ --static CORE_ADDR td_create_bp_addr; -+CORE_ADDR td_create_bp_addr; - - /* Location of the thread death event breakpoint. */ --static CORE_ADDR td_death_bp_addr; -+CORE_ADDR td_death_bp_addr; -+ -+static struct thread_db_pointers *current_pointers, *all_pointers; - - /* Prototypes for local functions. */ - static void thread_db_find_new_threads (void); -@@ -262,7 +272,7 @@ thread_get_info_callback (const td_thrha - struct thread_info *thread_info; - ptid_t thread_ptid; - -- err = td_thr_get_info_p (thp, &ti); -+ err = current_pointers->td_thr_get_info_p (thp, &ti); - if (err != TD_OK) - error ("thread_get_info_callback: cannot get thread info: %s", - thread_db_err_str (err)); -@@ -316,8 +326,9 @@ thread_db_map_id2thr (struct thread_info - if (thread_info->private->th_valid) - return; - -- err = td_ta_map_id2thr_p (thread_agent, GET_THREAD (thread_info->ptid), -- &thread_info->private->th); -+ err = current_pointers->td_ta_map_id2thr_p (thread_agent, -+ GET_THREAD (thread_info->ptid), -+ &thread_info->private->th); - if (err != TD_OK) - { - if (fatal) -@@ -340,8 +351,8 @@ thread_db_get_info (struct thread_info * - if (!thread_info->private->th_valid) - thread_db_map_id2thr (thread_info, 1); - -- err = -- td_thr_get_info_p (&thread_info->private->th, &thread_info->private->ti); -+ err = current_pointers->td_thr_get_info_p (&thread_info->private->th, -+ &thread_info->private->ti); - if (err != TD_OK) - error ("thread_db_get_info: cannot get thread info: %s", - thread_db_err_str (err)); -@@ -365,7 +376,8 @@ thread_from_lwp (ptid_t ptid) - - gdb_assert (is_lwp (ptid)); - -- err = td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), &th); -+ err = current_pointers->td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), -+ &th); - if (err != TD_OK) - error ("Cannot find user-level thread for LWP %ld: %s", - GET_LWP (ptid), thread_db_err_str (err)); -@@ -420,85 +432,102 @@ verbose_dlsym (void *handle, const char - return sym; - } - --static int --thread_db_load (void) -+static struct thread_db_pointers * -+thread_db_load (const char *name) - { -+ struct thread_db_pointers *ptrs; -+ Dl_info info; - void *handle; - td_err_e err; - -- handle = dlopen (LIBTHREAD_DB_SO, RTLD_NOW); -+ ptrs = xcalloc (1, sizeof (struct thread_db_pointers)); -+ -+ handle = dlopen (name, RTLD_NOW); - if (handle == NULL) - { -- fprintf_filtered (gdb_stderr, "\n\ndlopen failed on '%s' - %s\n", -- LIBTHREAD_DB_SO, dlerror ()); -- fprintf_filtered (gdb_stderr, -- "GDB will not be able to debug pthreads.\n\n"); -+ if (all_pointers == NULL) -+ { -+ fprintf_filtered (gdb_stderr, "\n\ndlopen failed on '%s' - %s\n", -+ name, dlerror ()); -+ fprintf_filtered (gdb_stderr, -+ "GDB will not be able to debug pthreads.\n\n"); -+ } - return 0; - } - - /* Initialize pointers to the dynamic library functions we will use. - Essential functions first. */ - -- td_init_p = verbose_dlsym (handle, "td_init"); -- if (td_init_p == NULL) -+ ptrs->td_init_p = verbose_dlsym (handle, "td_init"); -+ if (ptrs->td_init_p == NULL) - return 0; - -- td_ta_new_p = verbose_dlsym (handle, "td_ta_new"); -- if (td_ta_new_p == NULL) -+ ptrs->td_ta_new_p = verbose_dlsym (handle, "td_ta_new"); -+ if (ptrs->td_ta_new_p == NULL) - return 0; - -- td_ta_map_id2thr_p = verbose_dlsym (handle, "td_ta_map_id2thr"); -- if (td_ta_map_id2thr_p == NULL) -+ ptrs->td_ta_map_id2thr_p = verbose_dlsym (handle, "td_ta_map_id2thr"); -+ if (ptrs->td_ta_map_id2thr_p == NULL) - return 0; - -- td_ta_map_lwp2thr_p = verbose_dlsym (handle, "td_ta_map_lwp2thr"); -- if (td_ta_map_lwp2thr_p == NULL) -+ ptrs->td_ta_map_lwp2thr_p = verbose_dlsym (handle, "td_ta_map_lwp2thr"); -+ if (ptrs->td_ta_map_lwp2thr_p == NULL) - return 0; - -- td_ta_thr_iter_p = verbose_dlsym (handle, "td_ta_thr_iter"); -- if (td_ta_thr_iter_p == NULL) -+ ptrs->td_ta_thr_iter_p = verbose_dlsym (handle, "td_ta_thr_iter"); -+ if (ptrs->td_ta_thr_iter_p == NULL) - return 0; - -- td_thr_validate_p = verbose_dlsym (handle, "td_thr_validate"); -- if (td_thr_validate_p == NULL) -+ ptrs->td_thr_validate_p = verbose_dlsym (handle, "td_thr_validate"); -+ if (ptrs->td_thr_validate_p == NULL) - return 0; - -- td_thr_get_info_p = verbose_dlsym (handle, "td_thr_get_info"); -- if (td_thr_get_info_p == NULL) -+ ptrs->td_thr_get_info_p = verbose_dlsym (handle, "td_thr_get_info"); -+ if (ptrs->td_thr_get_info_p == NULL) - return 0; - -- td_thr_getfpregs_p = verbose_dlsym (handle, "td_thr_getfpregs"); -- if (td_thr_getfpregs_p == NULL) -+ ptrs->td_thr_getfpregs_p = verbose_dlsym (handle, "td_thr_getfpregs"); -+ if (ptrs->td_thr_getfpregs_p == NULL) - return 0; - -- td_thr_getgregs_p = verbose_dlsym (handle, "td_thr_getgregs"); -- if (td_thr_getgregs_p == NULL) -+ ptrs->td_thr_getgregs_p = verbose_dlsym (handle, "td_thr_getgregs"); -+ if (ptrs->td_thr_getgregs_p == NULL) - return 0; - -- td_thr_setfpregs_p = verbose_dlsym (handle, "td_thr_setfpregs"); -- if (td_thr_setfpregs_p == NULL) -+ ptrs->td_thr_setfpregs_p = verbose_dlsym (handle, "td_thr_setfpregs"); -+ if (ptrs->td_thr_setfpregs_p == NULL) - return 0; - -- td_thr_setgregs_p = verbose_dlsym (handle, "td_thr_setgregs"); -- if (td_thr_setgregs_p == NULL) -+ ptrs->td_thr_setgregs_p = verbose_dlsym (handle, "td_thr_setgregs"); -+ if (ptrs->td_thr_setgregs_p == NULL) - return 0; - - /* Initialize the library. */ -- err = td_init_p (); -+ err = ptrs->td_init_p (); - if (err != TD_OK) - { - warning ("Cannot initialize libthread_db: %s", thread_db_err_str (err)); -+ xfree (ptrs); - return 0; - } - - /* These are not essential. */ -- td_ta_event_addr_p = dlsym (handle, "td_ta_event_addr"); -- td_ta_set_event_p = dlsym (handle, "td_ta_set_event"); -- td_ta_event_getmsg_p = dlsym (handle, "td_ta_event_getmsg"); -- td_thr_event_enable_p = dlsym (handle, "td_thr_event_enable"); -- td_thr_tls_get_addr_p = dlsym (handle, "td_thr_tls_get_addr"); -+ ptrs->td_ta_event_addr_p = dlsym (handle, "td_ta_event_addr"); -+ ptrs->td_ta_set_event_p = dlsym (handle, "td_ta_set_event"); -+ ptrs->td_ta_event_getmsg_p = dlsym (handle, "td_ta_event_getmsg"); -+ ptrs->td_thr_event_enable_p = dlsym (handle, "td_thr_event_enable"); -+ ptrs->td_thr_tls_get_addr_p = dlsym (handle, "td_thr_tls_get_addr"); -+ -+ if (dladdr (ptrs->td_ta_new_p, &info) != 0) -+ ptrs->filename = info.dli_fname; -+ -+ /* Try dlinfo? */ -+ -+ if (ptrs->filename == NULL) -+ /* Paranoid - don't let a NULL path slip through. */ -+ ptrs->filename = name; - -- return 1; -+ return ptrs; - } - - static td_err_e -@@ -508,7 +537,7 @@ enable_thread_event (td_thragent_t *thre - td_err_e err; - - /* Get the breakpoint address for thread EVENT. */ -- err = td_ta_event_addr_p (thread_agent, event, ¬ify); -+ err = current_pointers->td_ta_event_addr_p (thread_agent, event, ¬ify); - if (err != TD_OK) - return err; - -@@ -534,8 +563,10 @@ enable_thread_event_reporting (void) - - /* We cannot use the thread event reporting facility if these - functions aren't available. */ -- if (td_ta_event_addr_p == NULL || td_ta_set_event_p == NULL -- || td_ta_event_getmsg_p == NULL || td_thr_event_enable_p == NULL) -+ if (current_pointers->td_ta_event_addr_p == NULL -+ || current_pointers->td_ta_set_event_p == NULL -+ || current_pointers->td_ta_event_getmsg_p == NULL -+ || current_pointers->td_thr_event_enable_p == NULL) - return; - - /* Set the process wide mask saying which events we're interested in. */ -@@ -552,7 +583,7 @@ enable_thread_event_reporting (void) - #endif - td_event_addset (&events, TD_DEATH); - -- err = td_ta_set_event_p (thread_agent, &events); -+ err = current_pointers->td_ta_set_event_p (thread_agent, &events); - if (err != TD_OK) - { - warning ("Unable to set global thread event mask: %s", -@@ -592,7 +623,7 @@ disable_thread_event_reporting (void) - /* Set the process wide mask saying we aren't interested in any - events anymore. */ - td_event_emptyset (&events); -- td_ta_set_event_p (thread_agent, &events); -+ current_pointers->td_ta_set_event_p (thread_agent, &events); - - /* Delete thread event breakpoints, if any. */ - remove_thread_event_breakpoints (); -@@ -635,7 +666,6 @@ check_thread_signals (void) - static void - check_for_thread_db (void) - { -- td_err_e err; - static int already_loaded; - - /* First time through, report that libthread_db was successfuly -@@ -644,19 +674,8 @@ check_for_thread_db (void) - - if (!already_loaded) - { -- Dl_info info; -- const char *library = NULL; -- if (dladdr ((*td_ta_new_p), &info) != 0) -- library = info.dli_fname; -- -- /* Try dlinfo? */ -- -- if (library == NULL) -- /* Paranoid - don't let a NULL path slip through. */ -- library = LIBTHREAD_DB_SO; -- - printf_unfiltered ("Using host libthread_db library \"%s\".\n", -- library); -+ all_pointers->filename); - already_loaded = 1; - } - -@@ -674,28 +693,34 @@ check_for_thread_db (void) - proc_handle.pid = GET_PID (inferior_ptid); - - /* Now attempt to open a connection to the thread library. */ -- err = td_ta_new_p (&proc_handle, &thread_agent); -- switch (err) -+ for (current_pointers = all_pointers; -+ current_pointers != NULL; -+ current_pointers = current_pointers->next) - { -- case TD_NOLIBTHREAD: -- /* No thread library was detected. */ -- break; -- -- case TD_OK: -- printf_unfiltered ("[Thread debugging using libthread_db enabled]\n"); -+ td_err_e err; -+ err = current_pointers->td_ta_new_p (&proc_handle, &thread_agent); -+ switch (err) -+ { -+ case TD_NOLIBTHREAD: -+ /* No thread library was detected. */ -+ break; - -- /* The thread library was detected. Activate the thread_db target. */ -- push_target (&thread_db_ops); -- using_thread_db = 1; -+ case TD_OK: -+ printf_unfiltered ("[Thread debugging using libthread_db enabled]\n"); - -- enable_thread_event_reporting (); -- thread_db_find_new_threads (); -- break; -+ /* The thread library was detected. Activate the thread_db target. */ -+ push_target (&thread_db_ops); -+ using_thread_db = 1; -+ -+ enable_thread_event_reporting (); -+ thread_db_find_new_threads (); -+ return; - -- default: -- warning ("Cannot initialize thread debugging library: %s", -- thread_db_err_str (err)); -- break; -+ default: -+ warning ("Cannot initialize thread debugging library: %s", -+ thread_db_err_str (err)); -+ break; -+ } - } - } - -@@ -766,7 +791,7 @@ attach_thread (ptid_t ptid, const td_thr - #endif - - /* Enable thread event reporting for this thread. */ -- err = td_thr_event_enable_p (th_p, 1); -+ err = current_pointers->td_thr_event_enable_p (th_p, 1); - if (err != TD_OK) - error ("Cannot enable thread event reporting for %s: %s", - target_pid_to_str (ptid), thread_db_err_str (err)); -@@ -892,7 +917,7 @@ check_event (ptid_t ptid) - - do - { -- err = td_ta_event_getmsg_p (thread_agent, &msg); -+ err = current_pointers->td_ta_event_getmsg_p (thread_agent, &msg); - if (err != TD_OK) - { - if (err == TD_NOMSG) -@@ -902,7 +927,7 @@ check_event (ptid_t ptid) - thread_db_err_str (err)); - } - -- err = td_thr_get_info_p (msg.th_p, &ti); -+ err = current_pointers->td_thr_get_info_p (msg.th_p, &ti); - if (err != TD_OK) - error ("Cannot get thread info: %s", thread_db_err_str (err)); - -@@ -1015,12 +1040,14 @@ thread_db_fetch_registers (int regno) - thread_info = find_thread_pid (inferior_ptid); - thread_db_map_id2thr (thread_info, 1); - -- err = td_thr_getgregs_p (&thread_info->private->th, gregset); -+ err = current_pointers->td_thr_getgregs_p (&thread_info->private->th, -+ gregset); - if (err != TD_OK) - error ("Cannot fetch general-purpose registers for thread %ld: %s", - (long) GET_THREAD (inferior_ptid), thread_db_err_str (err)); - -- err = td_thr_getfpregs_p (&thread_info->private->th, &fpregset); -+ err = current_pointers->td_thr_getfpregs_p (&thread_info->private->th, -+ &fpregset); - if (err != TD_OK) - error ("Cannot get floating-point registers for thread %ld: %s", - (long) GET_THREAD (inferior_ptid), thread_db_err_str (err)); -@@ -1062,11 +1089,13 @@ thread_db_store_registers (int regno) - fill_gregset ((gdb_gregset_t *) gregset, -1); - fill_fpregset (&fpregset, -1); - -- err = td_thr_setgregs_p (&thread_info->private->th, gregset); -+ err = current_pointers->td_thr_setgregs_p (&thread_info->private->th, -+ gregset); - if (err != TD_OK) - error ("Cannot store general-purpose registers for thread %ld: %s", - (long) GET_THREAD (inferior_ptid), thread_db_err_str (err)); -- err = td_thr_setfpregs_p (&thread_info->private->th, &fpregset); -+ err = current_pointers->td_thr_setfpregs_p (&thread_info->private->th, -+ &fpregset); - if (err != TD_OK) - error ("Cannot store floating-point registers for thread %ld: %s", - (long) GET_THREAD (inferior_ptid), thread_db_err_str (err)); -@@ -1136,15 +1165,14 @@ thread_db_thread_alive (ptid_t ptid) - if (!thread_info->private->th_valid) - return 0; - -- err = td_thr_validate_p (&thread_info->private->th); -+ err = current_pointers->td_thr_validate_p (&thread_info->private->th); - if (err != TD_OK) - return 0; - - if (!thread_info->private->ti_valid) - { -- err = -- td_thr_get_info_p (&thread_info->private->th, -- &thread_info->private->ti); -+ err = current_pointers->td_thr_get_info_p -+ (&thread_info->private->th, &thread_info->private->ti); - if (err != TD_OK) - return 0; - thread_info->private->ti_valid = 1; -@@ -1170,7 +1198,7 @@ find_new_threads_callback (const td_thrh - td_err_e err; - ptid_t ptid; - -- err = td_thr_get_info_p (th_p, &ti); -+ err = current_pointers->td_thr_get_info_p (th_p, &ti); - if (err != TD_OK) - error ("find_new_threads_callback: cannot get thread info: %s", - thread_db_err_str (err)); -@@ -1192,9 +1220,10 @@ thread_db_find_new_threads (void) - td_err_e err; - - /* Iterate over all user-space threads to discover new threads. */ -- err = td_ta_thr_iter_p (thread_agent, find_new_threads_callback, NULL, -- TD_THR_ANY_STATE, TD_THR_LOWEST_PRIORITY, -- TD_SIGNO_MASK, TD_THR_ANY_USER_FLAGS); -+ err = current_pointers->td_ta_thr_iter_p -+ (thread_agent, find_new_threads_callback, NULL, -+ TD_THR_ANY_STATE, TD_THR_LOWEST_PRIORITY, -+ TD_SIGNO_MASK, TD_THR_ANY_USER_FLAGS); - if (err != TD_OK) - error ("Cannot find new threads: %s", thread_db_err_str (err)); - } -@@ -1257,7 +1286,7 @@ thread_db_get_thread_local_address (ptid - struct thread_info *thread_info; - - /* glibc doesn't provide the needed interface. */ -- if (!td_thr_tls_get_addr_p) -+ if (!current_pointers->td_thr_tls_get_addr_p) - error ("Cannot find thread-local variables in this thread library."); - - /* Get the address of the link map for this objfile. */ -@@ -1279,8 +1308,8 @@ thread_db_get_thread_local_address (ptid - thread_db_map_id2thr (thread_info, 1); - - /* Finally, get the address of the variable. */ -- err = td_thr_tls_get_addr_p (&thread_info->private->th, (void *) lm, -- offset, &address); -+ err = current_pointers->td_thr_tls_get_addr_p -+ (&thread_info->private->th, (void *) lm, offset, &address); - - #ifdef THREAD_DB_HAS_TD_NOTALLOC - /* The memory hasn't been allocated, yet. */ -@@ -1360,17 +1389,49 @@ init_thread_db_ops (void) - void - _initialize_thread_db (void) - { -+ struct thread_db_pointers *ptrs; -+ const char *p; -+ - /* Only initialize the module if we can load libthread_db. */ -- if (thread_db_load ()) -- { -- init_thread_db_ops (); -- add_target (&thread_db_ops); -+ ptrs = thread_db_load (LIBTHREAD_DB_SO); -+ if (ptrs == NULL) -+ return; -+ -+ all_pointers = ptrs; - -- /* Add ourselves to objfile event chain. */ -- target_new_objfile_chain = deprecated_target_new_objfile_hook; -- deprecated_target_new_objfile_hook = thread_db_new_objfile; -+ /* Some GNU/Linux systems have more than one binary-compatible copy -+ of libthread_db. If we can find a second one, load that too. -+ The inferior may force the use of a different threading package -+ than we expect. Our guess for the location is somewhat hokey: -+ strip out anything between /lib (or /lib64) and LIBTHREAD_DB_SO. -+ If we loaded the NPTL libthread_db by default, this may find us -+ the LinuxThreads copy. */ -+ p = strrchr (ptrs->filename, '/'); -+ while (p != NULL && p > ptrs->filename) -+ { -+ const char *component; - -- /* Register ourselves for the new inferior observer. */ -- observer_attach_inferior_created (check_for_thread_db_observer); -+ component = memrchr (ptrs->filename, '/', p - ptrs->filename); -+ if (component != NULL && strncmp (component, "/lib", 4) == 0) -+ { -+ char *new_name = xmalloc (p - ptrs->filename + 2 -+ + strlen (LIBTHREAD_DB_SO)); -+ memcpy (new_name, ptrs->filename, p - ptrs->filename + 1); -+ strcpy (new_name + (p - ptrs->filename) + 1, LIBTHREAD_DB_SO); -+ ptrs->next = thread_db_load (new_name); -+ xfree (new_name); -+ break; -+ } -+ p = component; - } -+ -+ init_thread_db_ops (); -+ add_target (&thread_db_ops); -+ -+ /* Add ourselves to objfile event chain. */ -+ target_new_objfile_chain = deprecated_target_new_objfile_hook; -+ deprecated_target_new_objfile_hook = thread_db_new_objfile; -+ -+ /* Register ourselves for the new inferior observer. */ -+ observer_attach_inferior_created (check_for_thread_db_observer); - } diff --git a/openwrt/toolchain/gdb/patches/720-debian_static-threads-test.patch b/openwrt/toolchain/gdb/patches/720-debian_static-threads-test.patch deleted file mode 100644 index 448c9b1d7c..0000000000 --- a/openwrt/toolchain/gdb/patches/720-debian_static-threads-test.patch +++ /dev/null @@ -1,36 +0,0 @@ -Update staticthreads.exp to handle debugging info in libpthread.a. - -Index: gdb-6.3/gdb/testsuite/gdb.threads/staticthreads.exp -=================================================================== ---- gdb-6.3.orig/gdb/testsuite/gdb.threads/staticthreads.exp 2004-11-10 10:35:15.000000000 -0500 -+++ gdb-6.3/gdb/testsuite/gdb.threads/staticthreads.exp 2004-11-10 11:22:48.671121466 -0500 -@@ -53,6 +53,10 @@ gdb_test_multiple "continue" "$test" { - -re " sem_post .*$gdb_prompt " { - pass "$test" - } -+ -re " (.*_)sem_post .*$gdb_prompt " { -+ # Glibc uses aliases for internal symbols; match __new_sem_post. -+ pass "$test" -+ } - -re "Program received signal .*$gdb_prompt " { - kfail gdb/1328 "$test" - } -@@ -64,8 +68,16 @@ gdb_test_multiple "continue" "$test" { - - rerun_to_main - gdb_test "handle SIG32 nostop noprint pass" --set test "Handle SIG32 helps" --gdb_test "continue" " sem_post .*" "handle SIG32 helps" -+set test "handle SIG32 helps" -+gdb_test_multiple "continue" "$test" { -+ -re " sem_post .*$gdb_prompt $" { -+ pass "$test" -+ } -+ -re " (.*_)sem_post .*$gdb_prompt $" { -+ # Glibc uses aliases for internal symbols; match __new_sem_post. -+ pass "$test" -+ } -+} - - - # See if info threads produces anything approaching a thread list. diff --git a/openwrt/toolchain/gdb/patches/730-debian_gdb-fix-tracefork-check.patch b/openwrt/toolchain/gdb/patches/730-debian_gdb-fix-tracefork-check.patch deleted file mode 100644 index 9890d80c3e..0000000000 --- a/openwrt/toolchain/gdb/patches/730-debian_gdb-fix-tracefork-check.patch +++ /dev/null @@ -1,225 +0,0 @@ -Status: submitted for comments - -2004-11-12 Daniel Jacobowitz <dan@debian.org> - - * linux-nat.c (my_waitpid): New function. - (linux_test_for_tracefork): Make more robust and verbose. Take - an ORIGINAL_PID argument and test for PTRACE_SETOPTIONS first. - (linux_supports_tracefork, linux_supports_tracevforkdone): Take a PID - argument. Update calls to linux_test_for_tracefork. - (linux_enable_event_reporting, child_follow_fork) - (child_insert_fork_catchpoint, child_insert_vfork_catchpoint) - (child_insert_exec_catchpoint): Update calls to - linux_supports_tracefork and linux_supports_tracevforkdone. - -Index: gdb-6.3/gdb/linux-nat.c -=================================================================== ---- gdb-6.3.orig/gdb/linux-nat.c 2004-10-08 16:29:47.000000000 -0400 -+++ gdb-6.3/gdb/linux-nat.c 2004-11-13 16:41:51.368720845 -0500 -@@ -150,18 +150,47 @@ linux_tracefork_child (void) - exit (0); - } - --/* Determine if PTRACE_O_TRACEFORK can be used to follow fork events. We -+/* Wrapper function for waitpid which handles EINTR. */ -+ -+static int -+my_waitpid (int pid, int *status, int flags) -+{ -+ int ret; -+ do -+ { -+ ret = waitpid (pid, status, flags); -+ } -+ while (ret == -1 && errno == EINTR); -+ -+ return ret; -+} -+ -+/* Determine if PTRACE_O_TRACEFORK can be used to follow fork events. -+ -+ First, we try to enable fork tracing on ORIGINAL_PID. If this fails, -+ we know that the feature is not available. This may change the tracing -+ options for ORIGINAL_PID, but we'll be setting them shortly anyway. -+ -+ However, if it succeeds, we don't know for sure that the feature is -+ available; old versions of PTRACE_SETOPTIONS ignored unknown options. We - create a child process, attach to it, use PTRACE_SETOPTIONS to enable -- fork tracing, and let it fork. If the process exits, we assume that -- we can't use TRACEFORK; if we get the fork notification, and we can -- extract the new child's PID, then we assume that we can. */ -+ fork tracing, and let it fork. If the process exits, we assume that we -+ can't use TRACEFORK; if we get the fork notification, and we can extract -+ the new child's PID, then we assume that we can. */ - - static void --linux_test_for_tracefork (void) -+linux_test_for_tracefork (int original_pid) - { - int child_pid, ret, status; - long second_pid; - -+ linux_supports_tracefork_flag = 0; -+ linux_supports_tracevforkdone_flag = 0; -+ -+ ret = ptrace (PTRACE_SETOPTIONS, original_pid, 0, PTRACE_O_TRACEFORK); -+ if (ret != 0) -+ return; -+ - child_pid = fork (); - if (child_pid == -1) - perror_with_name ("linux_test_for_tracefork: fork"); -@@ -169,7 +198,7 @@ linux_test_for_tracefork (void) - if (child_pid == 0) - linux_tracefork_child (); - -- ret = waitpid (child_pid, &status, 0); -+ ret = my_waitpid (child_pid, &status, 0); - if (ret == -1) - perror_with_name ("linux_test_for_tracefork: waitpid"); - else if (ret != child_pid) -@@ -177,13 +206,23 @@ linux_test_for_tracefork (void) - if (! WIFSTOPPED (status)) - error ("linux_test_for_tracefork: waitpid: unexpected status %d.", status); - -- linux_supports_tracefork_flag = 0; -- - ret = ptrace (PTRACE_SETOPTIONS, child_pid, 0, PTRACE_O_TRACEFORK); - if (ret != 0) - { -- ptrace (PTRACE_KILL, child_pid, 0, 0); -- waitpid (child_pid, &status, 0); -+ ret = ptrace (PTRACE_KILL, child_pid, 0, 0); -+ if (ret != 0) -+ { -+ warning ("linux_test_for_tracefork: failed to kill child"); -+ return; -+ } -+ -+ ret = my_waitpid (child_pid, &status, 0); -+ if (ret != child_pid) -+ warning ("linux_test_for_tracefork: failed to wait for killed child"); -+ else if (!WIFSIGNALED (status)) -+ warning ("linux_test_for_tracefork: unexpected wait status 0x%x from " -+ "killed child", status); -+ - return; - } - -@@ -192,8 +231,12 @@ linux_test_for_tracefork (void) - PTRACE_O_TRACEFORK | PTRACE_O_TRACEVFORKDONE); - linux_supports_tracevforkdone_flag = (ret == 0); - -- ptrace (PTRACE_CONT, child_pid, 0, 0); -- ret = waitpid (child_pid, &status, 0); -+ ret = ptrace (PTRACE_CONT, child_pid, 0, 0); -+ if (ret != 0) -+ warning ("linux_test_for_tracefork: failed to resume child"); -+ -+ ret = my_waitpid (child_pid, &status, 0); -+ - if (ret == child_pid && WIFSTOPPED (status) - && status >> 16 == PTRACE_EVENT_FORK) - { -@@ -204,34 +247,38 @@ linux_test_for_tracefork (void) - int second_status; - - linux_supports_tracefork_flag = 1; -- waitpid (second_pid, &second_status, 0); -- ptrace (PTRACE_DETACH, second_pid, 0, 0); -+ my_waitpid (second_pid, &second_status, 0); -+ ret = ptrace (PTRACE_KILL, second_pid, 0, 0); -+ if (ret != 0) -+ warning ("linux_test_for_tracefork: failed to kill second child"); - } - } -+ else -+ warning ("linux_test_for_tracefork: unexpected result from waitpid " -+ "(%d, status 0x%x)", ret, status); - -- if (WIFSTOPPED (status)) -- { -- ptrace (PTRACE_DETACH, child_pid, 0, 0); -- waitpid (child_pid, &status, 0); -- } -+ ret = ptrace (PTRACE_KILL, child_pid, 0, 0); -+ if (ret != 0) -+ warning ("linux_test_for_tracefork: failed to kill child"); -+ my_waitpid (child_pid, &status, 0); - } - - /* Return non-zero iff we have tracefork functionality available. - This function also sets linux_supports_tracefork_flag. */ - - static int --linux_supports_tracefork (void) -+linux_supports_tracefork (int pid) - { - if (linux_supports_tracefork_flag == -1) -- linux_test_for_tracefork (); -+ linux_test_for_tracefork (pid); - return linux_supports_tracefork_flag; - } - - static int --linux_supports_tracevforkdone (void) -+linux_supports_tracevforkdone (int pid) - { - if (linux_supports_tracefork_flag == -1) -- linux_test_for_tracefork (); -+ linux_test_for_tracefork (pid); - return linux_supports_tracevforkdone_flag; - } - -@@ -242,12 +289,12 @@ linux_enable_event_reporting (ptid_t pti - int pid = ptid_get_pid (ptid); - int options; - -- if (! linux_supports_tracefork ()) -+ if (! linux_supports_tracefork (pid)) - return; - - options = PTRACE_O_TRACEFORK | PTRACE_O_TRACEVFORK | PTRACE_O_TRACEEXEC - | PTRACE_O_TRACECLONE; -- if (linux_supports_tracevforkdone ()) -+ if (linux_supports_tracevforkdone (pid)) - options |= PTRACE_O_TRACEVFORKDONE; - - /* Do not enable PTRACE_O_TRACEEXIT until GDB is more prepared to support -@@ -308,7 +355,8 @@ child_follow_fork (int follow_child) - - if (has_vforked) - { -- if (linux_supports_tracevforkdone ()) -+ gdb_assert (linux_supports_tracefork_flag >= 0); -+ if (linux_supports_tracevforkdone (0)) - { - int status; - -@@ -476,7 +524,7 @@ linux_handle_extended_wait (int pid, int - int - child_insert_fork_catchpoint (int pid) - { -- if (! linux_supports_tracefork ()) -+ if (! linux_supports_tracefork (pid)) - error ("Your system does not support fork catchpoints."); - - return 0; -@@ -485,7 +533,7 @@ child_insert_fork_catchpoint (int pid) - int - child_insert_vfork_catchpoint (int pid) - { -- if (!linux_supports_tracefork ()) -+ if (!linux_supports_tracefork (pid)) - error ("Your system does not support vfork catchpoints."); - - return 0; -@@ -494,7 +542,7 @@ child_insert_vfork_catchpoint (int pid) - int - child_insert_exec_catchpoint (int pid) - { -- if (!linux_supports_tracefork ()) -+ if (!linux_supports_tracefork (pid)) - error ("Your system does not support exec catchpoints."); - - return 0; diff --git a/openwrt/toolchain/gdb/patches/740-debian_make-cv-type-crash.patch b/openwrt/toolchain/gdb/patches/740-debian_make-cv-type-crash.patch deleted file mode 100644 index 4e0b8cd72a..0000000000 --- a/openwrt/toolchain/gdb/patches/740-debian_make-cv-type-crash.patch +++ /dev/null @@ -1,132 +0,0 @@ -2004-11-04 Jim Blandy <jimb@redhat.com> - - * gdbtypes.c (make_qualified_type): Doc fix. Add assertion to - prevent cross-objfile references. - (make_cv_type): Doc fix. Don't create cross-objfile references, - even for stub types. - (replace_type): Add assertion to prevent cross-objfile references. - (check_typedef): Never resolve a stub type by copying over a type - from another file. - -Index: src/gdb/gdbtypes.c -=================================================================== -RCS file: /big/fsf/rsync/src-cvs/src/gdb/gdbtypes.c,v -retrieving revision 1.92 -retrieving revision 1.93 -diff -u -p -r1.92 -r1.93 ---- src/gdb/gdbtypes.c 8 Aug 2004 17:18:16 -0000 1.92 -+++ src/gdb/gdbtypes.c 4 Nov 2004 17:50:16 -0000 1.93 -@@ -433,7 +433,9 @@ address_space_int_to_name (int space_fla - } - - /* Create a new type with instance flags NEW_FLAGS, based on TYPE. -- If STORAGE is non-NULL, create the new type instance there. */ -+ -+ If STORAGE is non-NULL, create the new type instance there. -+ STORAGE must be in the same obstack as TYPE. */ - - static struct type * - make_qualified_type (struct type *type, int new_flags, -@@ -453,6 +455,12 @@ make_qualified_type (struct type *type, - ntype = alloc_type_instance (type); - else - { -+ /* If STORAGE was provided, it had better be in the same objfile as -+ TYPE. Otherwise, we can't link it into TYPE's cv chain: if one -+ objfile is freed and the other kept, we'd have dangling -+ pointers. */ -+ gdb_assert (TYPE_OBJFILE (type) == TYPE_OBJFILE (storage)); -+ - ntype = storage; - TYPE_MAIN_TYPE (ntype) = TYPE_MAIN_TYPE (type); - TYPE_CHAIN (ntype) = ntype; -@@ -501,11 +509,12 @@ make_type_with_address_space (struct typ - CNST is a flag for setting the const attribute - VOLTL is a flag for setting the volatile attribute - TYPE is the base type whose variant we are creating. -- TYPEPTR, if nonzero, points -- to a pointer to memory where the reference type should be stored. -- If *TYPEPTR is zero, update it to point to the reference type we return. -- We allocate new memory if needed. */ - -+ If TYPEPTR and *TYPEPTR are non-zero, then *TYPEPTR points to -+ storage to hold the new qualified type; *TYPEPTR and TYPE must be -+ in the same objfile. Otherwise, allocate fresh memory for the new -+ type whereever TYPE lives. If TYPEPTR is non-zero, set it to the -+ new type we construct. */ - struct type * - make_cv_type (int cnst, int voltl, struct type *type, struct type **typeptr) - { -@@ -524,20 +533,19 @@ make_cv_type (int cnst, int voltl, struc - - if (typeptr && *typeptr != NULL) - { -- /* Objfile is per-core-type. This const-qualified type had best -- belong to the same objfile as the type it is qualifying, unless -- we are overwriting a stub type, in which case the safest thing -- to do is to copy the core type into the new objfile. */ -- -- gdb_assert (TYPE_OBJFILE (*typeptr) == TYPE_OBJFILE (type) -- || TYPE_STUB (*typeptr)); -- if (TYPE_OBJFILE (*typeptr) != TYPE_OBJFILE (type)) -- { -- TYPE_MAIN_TYPE (*typeptr) -- = TYPE_ALLOC (*typeptr, sizeof (struct main_type)); -- *TYPE_MAIN_TYPE (*typeptr) -- = *TYPE_MAIN_TYPE (type); -- } -+ /* TYPE and *TYPEPTR must be in the same objfile. We can't have -+ a C-V variant chain that threads across objfiles: if one -+ objfile gets freed, then the other has a broken C-V chain. -+ -+ This code used to try to copy over the main type from TYPE to -+ *TYPEPTR if they were in different objfiles, but that's -+ wrong, too: TYPE may have a field list or member function -+ lists, which refer to types of their own, etc. etc. The -+ whole shebang would need to be copied over recursively; you -+ can't have inter-objfile pointers. The only thing to do is -+ to leave stub types as stub types, and look them up afresh by -+ name each time you encounter them. */ -+ gdb_assert (TYPE_OBJFILE (*typeptr) == TYPE_OBJFILE (type)); - } - - ntype = make_qualified_type (type, new_flags, typeptr ? *typeptr : NULL); -@@ -562,6 +570,12 @@ replace_type (struct type *ntype, struct - { - struct type *chain; - -+ /* These two types had better be in the same objfile. Otherwise, -+ the assignment of one type's main type structure to the other -+ will produce a type with references to objects (names; field -+ lists; etc.) allocated on an objfile other than its own. */ -+ gdb_assert (TYPE_OBJFILE (ntype) == TYPE_OBJFILE (ntype)); -+ - *TYPE_MAIN_TYPE (ntype) = *TYPE_MAIN_TYPE (type); - - /* The type length is not a part of the main type. Update it for each -@@ -1416,8 +1430,24 @@ check_typedef (struct type *type) - return type; - } - newtype = lookup_transparent_type (name); -+ - if (newtype) -- make_cv_type (is_const, is_volatile, newtype, &type); -+ { -+ /* If the resolved type and the stub are in the same objfile, -+ then replace the stub type with the real deal. But if -+ they're in separate objfiles, leave the stub alone; we'll -+ just look up the transparent type every time we call -+ check_typedef. We can't create pointers between types -+ allocated to different objfiles, since they may have -+ different lifetimes. Trying to copy NEWTYPE over to TYPE's -+ objfile is pointless, too, since you'll have to move over any -+ other types NEWTYPE refers to, which could be an unbounded -+ amount of stuff. */ -+ if (TYPE_OBJFILE (newtype) == TYPE_OBJFILE (type)) -+ make_cv_type (is_const, is_volatile, newtype, &type); -+ else -+ type = newtype; -+ } - } - /* Otherwise, rely on the stub flag being set for opaque/stubbed types */ - else if (TYPE_STUB (type) && !currently_reading_symtab) diff --git a/openwrt/toolchain/gdb/patches/750-debian_sparc-singlestep.patch b/openwrt/toolchain/gdb/patches/750-debian_sparc-singlestep.patch deleted file mode 100644 index 904883c2fc..0000000000 --- a/openwrt/toolchain/gdb/patches/750-debian_sparc-singlestep.patch +++ /dev/null @@ -1,37 +0,0 @@ -Status: submitted for comments - -2004-11-13 Daniel Jacobowitz <dan@debian.org> - - * sparc-tdep.c (sparc_software_single_step): Handle stepping to NULL. - -Index: gdb-6.3/gdb/sparc-tdep.c -=================================================================== ---- gdb-6.3.orig/gdb/sparc-tdep.c 2004-06-06 22:02:55.000000000 -0400 -+++ gdb-6.3/gdb/sparc-tdep.c 2004-11-13 17:06:05.000000000 -0500 -@@ -1026,10 +1026,10 @@ - - if (insert_breakpoints_p) - { -- CORE_ADDR pc; -+ CORE_ADDR pc, orig_npc; - - pc = sparc_address_from_register (tdep->pc_regnum); -- npc = sparc_address_from_register (tdep->npc_regnum); -+ orig_npc = npc = sparc_address_from_register (tdep->npc_regnum); - - /* Analyze the instruction at PC. */ - nnpc = sparc_analyze_control_transfer (pc, &npc); -@@ -1039,9 +1039,10 @@ - target_insert_breakpoint (nnpc, nnpc_save); - - /* Assert that we have set at least one breakpoint, and that -- they're not set at the same spot. */ -- gdb_assert (npc != 0 || nnpc != 0); -- gdb_assert (nnpc != npc); -+ they're not set at the same spot - unless we're going -+ from here straight to NULL, i.e. a call or jump to 0. */ -+ gdb_assert (npc != 0 || nnpc != 0 || orig_npc == 0); -+ gdb_assert (nnpc != npc || orig_npc == 0); - } - else - { diff --git a/openwrt/toolchain/gdb/patches/760-debian_vsyscall-bfd-close-result.patch b/openwrt/toolchain/gdb/patches/760-debian_vsyscall-bfd-close-result.patch deleted file mode 100644 index 56002bed0c..0000000000 --- a/openwrt/toolchain/gdb/patches/760-debian_vsyscall-bfd-close-result.patch +++ /dev/null @@ -1,20 +0,0 @@ -2004-10-24 Daniel Jacobowitz <dan@debian.org> - - * opncls.c (bfd_close): Return TRUE for BFD_IN_MEMORY. - -Index: src/bfd/opncls.c -=================================================================== -RCS file: /big/fsf/rsync/src-cvs/src/bfd/opncls.c,v -retrieving revision 1.25 -diff -u -p -r1.25 opncls.c ---- src/bfd/opncls.c 10 Oct 2004 13:58:05 -0000 1.25 -+++ src/bfd/opncls.c 24 Oct 2004 17:52:53 -0000 -@@ -598,7 +598,7 @@ bfd_close (bfd *abfd) - if (!(abfd->flags & BFD_IN_MEMORY)) - ret = abfd->iovec->bclose (abfd); - else -- ret = 0; -+ ret = TRUE; - - /* If the file was open for writing and is now executable, - make it so. */ diff --git a/openwrt/toolchain/gdb/patches/770-debian_vfork-done-spelling.patch b/openwrt/toolchain/gdb/patches/770-debian_vfork-done-spelling.patch deleted file mode 100644 index f65db8d091..0000000000 --- a/openwrt/toolchain/gdb/patches/770-debian_vfork-done-spelling.patch +++ /dev/null @@ -1,31 +0,0 @@ -Index: gdb-6.3/gdb/linux-nat.c -=================================================================== ---- gdb-6.3.orig/gdb/linux-nat.c 2004-11-14 00:36:41.000000000 -0500 -+++ gdb-6.3/gdb/linux-nat.c 2004-11-15 11:51:43.954161476 -0500 -@@ -69,7 +69,7 @@ - #define PTRACE_EVENT_VFORK 2 - #define PTRACE_EVENT_CLONE 3 - #define PTRACE_EVENT_EXEC 4 --#define PTRACE_EVENT_VFORKDONE 5 -+#define PTRACE_EVENT_VFORK_DONE 5 - #define PTRACE_EVENT_EXIT 6 - - #endif /* PTRACE_EVENT_FORK */ -@@ -362,7 +362,7 @@ child_follow_fork (int follow_child) - - ptrace (PTRACE_CONT, parent_pid, 0, 0); - waitpid (parent_pid, &status, __WALL); -- if ((status >> 16) != PTRACE_EVENT_VFORKDONE) -+ if ((status >> 16) != PTRACE_EVENT_VFORK_DONE) - warning ("Unexpected waitpid result %06x when waiting for " - "vfork-done", status); - } -@@ -434,7 +434,7 @@ child_follow_fork (int follow_child) - generally not encounter vfork (vfork is defined to fork - in libpthread.so). - -- The holding part is very easy if we have VFORKDONE events; -+ The holding part is very easy if we have VFORK_DONE events; - but keeping track of both processes is beyond GDB at the - moment. So we don't expose the parent to the rest of GDB. - Instead we quietly hold onto it until such time as we can diff --git a/openwrt/toolchain/gdb/patches/780-debian_gdbserver-rdynamic.patch b/openwrt/toolchain/gdb/patches/780-debian_gdbserver-rdynamic.patch deleted file mode 100644 index 0311dde390..0000000000 --- a/openwrt/toolchain/gdb/patches/780-debian_gdbserver-rdynamic.patch +++ /dev/null @@ -1,675 +0,0 @@ -Status: Commited to GDB after 6.3. - -Index: gdb-6.3/gdb/gdbserver/acinclude.m4 -=================================================================== ---- gdb-6.3.orig/gdb/gdbserver/acinclude.m4 2002-06-11 13:32:39.000000000 -0400 -+++ gdb-6.3/gdb/gdbserver/acinclude.m4 2004-12-07 17:19:31.115089905 -0500 -@@ -13,6 +13,7 @@ AC_DEFUN([SRV_CHECK_THREAD_DB], - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {}], - [td_ta_new();], - [srv_cv_thread_db="-lthread_db"], -@@ -32,10 +33,11 @@ AC_DEFUN([SRV_CHECK_THREAD_DB], - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {}], - [td_ta_new();], - [srv_cv_thread_db="$thread_db"], - [srv_cv_thread_db=no]) -+ ]]) - LIBS="$old_LIBS" -- ]]) - )]) -Index: gdb-6.3/gdb/gdbserver/configure -=================================================================== ---- gdb-6.3.orig/gdb/gdbserver/configure 2004-10-16 12:18:54.000000000 -0400 -+++ gdb-6.3/gdb/gdbserver/configure 2004-12-07 17:22:17.343129771 -0500 -@@ -28,6 +28,7 @@ program_suffix=NONE - program_transform_name=s,x,x, - silent= - site= -+sitefile= - srcdir= - target=NONE - verbose= -@@ -142,6 +143,7 @@ Configuration: - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages -+ --site-file=FILE use FILE as the site file - --version print the version of autoconf that created configure - Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX -@@ -312,6 +314,11 @@ EOF - -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; - -+ -site-file | --site-file | --site-fil | --site-fi | --site-f) -+ ac_prev=sitefile ;; -+ -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*) -+ sitefile="$ac_optarg" ;; -+ - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) -@@ -477,12 +484,16 @@ fi - srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - - # Prefer explicitly selected file to automatically selected ones. --if test -z "$CONFIG_SITE"; then -- if test "x$prefix" != xNONE; then -- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -- else -- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -+if test -z "$sitefile"; then -+ if test -z "$CONFIG_SITE"; then -+ if test "x$prefix" != xNONE; then -+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -+ else -+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -+ fi - fi -+else -+ CONFIG_SITE="$sitefile" - fi - for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then -@@ -526,7 +537,7 @@ fi - # Extract the first word of "gcc", so it can be a program name with args. - set dummy gcc; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:530: checking for $ac_word" >&5 -+echo "configure:541: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -556,7 +567,7 @@ if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. - set dummy cc; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:560: checking for $ac_word" >&5 -+echo "configure:571: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -607,7 +618,7 @@ fi - # Extract the first word of "cl", so it can be a program name with args. - set dummy cl; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:611: checking for $ac_word" >&5 -+echo "configure:622: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -639,7 +650,7 @@ fi - fi - - echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 --echo "configure:643: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 -+echo "configure:654: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 - - ac_ext=c - # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -@@ -650,12 +661,12 @@ cross_compiling=$ac_cv_prog_cc_cross - - cat > conftest.$ac_ext << EOF - --#line 654 "configure" -+#line 665 "configure" - #include "confdefs.h" - - main(){return(0);} - EOF --if { (eval echo configure:659: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:670: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - ac_cv_prog_cc_works=yes - # If we can't run a trivial program, we are probably using a cross compiler. - if (./conftest; exit) 2>/dev/null; then -@@ -681,12 +692,12 @@ if test $ac_cv_prog_cc_works = no; then - { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } - fi - echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 --echo "configure:685: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 -+echo "configure:696: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 - echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 - cross_compiling=$ac_cv_prog_cc_cross - - echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 --echo "configure:690: checking whether we are using GNU C" >&5 -+echo "configure:701: checking whether we are using GNU C" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -695,7 +706,7 @@ else - yes; - #endif - EOF --if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:699: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then -+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:710: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes - else - ac_cv_prog_gcc=no -@@ -714,7 +725,7 @@ ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 --echo "configure:718: checking whether ${CC-cc} accepts -g" >&5 -+echo "configure:729: checking whether ${CC-cc} accepts -g" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -793,7 +804,7 @@ else { echo "configure: error: can not r - fi - - echo $ac_n "checking host system type""... $ac_c" 1>&6 --echo "configure:797: checking host system type" >&5 -+echo "configure:808: checking host system type" >&5 - - host_alias=$host - case "$host_alias" in -@@ -814,7 +825,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)- - echo "$ac_t""$host" 1>&6 - - echo $ac_n "checking target system type""... $ac_c" 1>&6 --echo "configure:818: checking target system type" >&5 -+echo "configure:829: checking target system type" >&5 - - target_alias=$target - case "$target_alias" in -@@ -832,7 +843,7 @@ target_os=`echo $target | sed 's/^\([^-] - echo "$ac_t""$target" 1>&6 - - echo $ac_n "checking build system type""... $ac_c" 1>&6 --echo "configure:836: checking build system type" >&5 -+echo "configure:847: checking build system type" >&5 - - build_alias=$build - case "$build_alias" in -@@ -867,7 +878,7 @@ test "$host_alias" != "$target_alias" && - # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" - # ./install, which can be erroneously created by make from ./install.sh. - echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 --echo "configure:871: checking for a BSD compatible install" >&5 -+echo "configure:882: checking for a BSD compatible install" >&5 - if test -z "$INSTALL"; then - if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -@@ -921,7 +932,7 @@ test -z "$INSTALL_DATA" && INSTALL_DATA= - - - echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 --echo "configure:925: checking how to run the C preprocessor" >&5 -+echo "configure:936: checking how to run the C preprocessor" >&5 - # On Suns, sometimes $CPP names a directory. - if test -n "$CPP" && test -d "$CPP"; then - CPP= -@@ -936,13 +947,13 @@ else - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. - cat > conftest.$ac_ext <<EOF --#line 940 "configure" -+#line 951 "configure" - #include "confdefs.h" - #include <assert.h> - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:946: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:957: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -953,13 +964,13 @@ else - rm -rf conftest* - CPP="${CC-cc} -E -traditional-cpp" - cat > conftest.$ac_ext <<EOF --#line 957 "configure" -+#line 968 "configure" - #include "confdefs.h" - #include <assert.h> - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:963: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:974: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -970,13 +981,13 @@ else - rm -rf conftest* - CPP="${CC-cc} -nologo -E" - cat > conftest.$ac_ext <<EOF --#line 974 "configure" -+#line 985 "configure" - #include "confdefs.h" - #include <assert.h> - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:980: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:991: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -1001,12 +1012,12 @@ fi - echo "$ac_t""$CPP" 1>&6 - - echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 --echo "configure:1005: checking for ANSI C header files" >&5 -+echo "configure:1016: checking for ANSI C header files" >&5 - if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1010 "configure" -+#line 1021 "configure" - #include "confdefs.h" - #include <stdlib.h> - #include <stdarg.h> -@@ -1014,7 +1025,7 @@ else - #include <float.h> - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1018: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1029: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -1031,7 +1042,7 @@ rm -f conftest* - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat > conftest.$ac_ext <<EOF --#line 1035 "configure" -+#line 1046 "configure" - #include "confdefs.h" - #include <string.h> - EOF -@@ -1049,7 +1060,7 @@ fi - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat > conftest.$ac_ext <<EOF --#line 1053 "configure" -+#line 1064 "configure" - #include "confdefs.h" - #include <stdlib.h> - EOF -@@ -1070,7 +1081,7 @@ if test "$cross_compiling" = yes; then - : - else - cat > conftest.$ac_ext <<EOF --#line 1074 "configure" -+#line 1085 "configure" - #include "confdefs.h" - #include <ctype.h> - #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -@@ -1081,7 +1092,7 @@ if (XOR (islower (i), ISLOWER (i)) || to - exit (0); } - - EOF --if { (eval echo configure:1085: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:1096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - : - else -@@ -1109,17 +1120,17 @@ for ac_hdr in sgtty.h termio.h termios.h - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:1113: checking for $ac_hdr" >&5 -+echo "configure:1124: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1118 "configure" -+#line 1129 "configure" - #include "confdefs.h" - #include <$ac_hdr> - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1123: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1134: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -1147,12 +1158,12 @@ done - - - echo $ac_n "checking whether strerror must be declared""... $ac_c" 1>&6 --echo "configure:1151: checking whether strerror must be declared" >&5 -+echo "configure:1162: checking whether strerror must be declared" >&5 - if eval "test \"`echo '$''{'bfd_cv_decl_needed_strerror'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1156 "configure" -+#line 1167 "configure" - #include "confdefs.h" - - #include <stdio.h> -@@ -1173,7 +1184,7 @@ int main() { - char *(*pfn) = (char *(*)) strerror - ; return 0; } - EOF --if { (eval echo configure:1177: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1188: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_decl_needed_strerror=no - else -@@ -1205,19 +1216,19 @@ fi - - if test "${srv_linux_regsets}" = "yes"; then - echo $ac_n "checking for PTRACE_GETREGS""... $ac_c" 1>&6 --echo "configure:1209: checking for PTRACE_GETREGS" >&5 -+echo "configure:1220: checking for PTRACE_GETREGS" >&5 - if eval "test \"`echo '$''{'gdbsrv_cv_have_ptrace_getregs'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1214 "configure" -+#line 1225 "configure" - #include "confdefs.h" - #include <sys/ptrace.h> - int main() { - PTRACE_GETREGS; - ; return 0; } - EOF --if { (eval echo configure:1221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1232: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - gdbsrv_cv_have_ptrace_getregs=yes - else -@@ -1238,19 +1249,19 @@ EOF - fi - - echo $ac_n "checking for PTRACE_GETFPXREGS""... $ac_c" 1>&6 --echo "configure:1242: checking for PTRACE_GETFPXREGS" >&5 -+echo "configure:1253: checking for PTRACE_GETFPXREGS" >&5 - if eval "test \"`echo '$''{'gdbsrv_cv_have_ptrace_getfpxregs'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1247 "configure" -+#line 1258 "configure" - #include "confdefs.h" - #include <sys/ptrace.h> - int main() { - PTRACE_GETFPXREGS; - ; return 0; } - EOF --if { (eval echo configure:1254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1265: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - gdbsrv_cv_have_ptrace_getfpxregs=yes - else -@@ -1273,12 +1284,12 @@ fi - - if test "$ac_cv_header_sys_procfs_h" = yes; then - echo $ac_n "checking for lwpid_t in sys/procfs.h""... $ac_c" 1>&6 --echo "configure:1277: checking for lwpid_t in sys/procfs.h" >&5 -+echo "configure:1288: checking for lwpid_t in sys/procfs.h" >&5 - if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_lwpid_t'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1282 "configure" -+#line 1293 "configure" - #include "confdefs.h" - - #define _SYSCALL32 -@@ -1287,7 +1298,7 @@ int main() { - lwpid_t avar - ; return 0; } - EOF --if { (eval echo configure:1291: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1302: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_have_sys_procfs_type_lwpid_t=yes - else -@@ -1309,12 +1320,12 @@ EOF - echo "$ac_t""$bfd_cv_have_sys_procfs_type_lwpid_t" 1>&6 - - echo $ac_n "checking for psaddr_t in sys/procfs.h""... $ac_c" 1>&6 --echo "configure:1313: checking for psaddr_t in sys/procfs.h" >&5 -+echo "configure:1324: checking for psaddr_t in sys/procfs.h" >&5 - if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_psaddr_t'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1318 "configure" -+#line 1329 "configure" - #include "confdefs.h" - - #define _SYSCALL32 -@@ -1323,7 +1334,7 @@ int main() { - psaddr_t avar - ; return 0; } - EOF --if { (eval echo configure:1327: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1338: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_have_sys_procfs_type_psaddr_t=yes - else -@@ -1345,12 +1356,12 @@ EOF - echo "$ac_t""$bfd_cv_have_sys_procfs_type_psaddr_t" 1>&6 - - echo $ac_n "checking for prgregset_t in sys/procfs.h""... $ac_c" 1>&6 --echo "configure:1349: checking for prgregset_t in sys/procfs.h" >&5 -+echo "configure:1360: checking for prgregset_t in sys/procfs.h" >&5 - if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prgregset_t'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1354 "configure" -+#line 1365 "configure" - #include "confdefs.h" - - #define _SYSCALL32 -@@ -1359,7 +1370,7 @@ int main() { - prgregset_t avar - ; return 0; } - EOF --if { (eval echo configure:1363: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_have_sys_procfs_type_prgregset_t=yes - else -@@ -1381,12 +1392,12 @@ EOF - echo "$ac_t""$bfd_cv_have_sys_procfs_type_prgregset_t" 1>&6 - - echo $ac_n "checking for prfpregset_t in sys/procfs.h""... $ac_c" 1>&6 --echo "configure:1385: checking for prfpregset_t in sys/procfs.h" >&5 -+echo "configure:1396: checking for prfpregset_t in sys/procfs.h" >&5 - if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prfpregset_t'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1390 "configure" -+#line 1401 "configure" - #include "confdefs.h" - - #define _SYSCALL32 -@@ -1395,7 +1406,7 @@ int main() { - prfpregset_t avar - ; return 0; } - EOF --if { (eval echo configure:1399: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1410: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_have_sys_procfs_type_prfpregset_t=yes - else -@@ -1421,7 +1432,7 @@ EOF - - if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then - echo $ac_n "checking whether prfpregset_t type is broken""... $ac_c" 1>&6 --echo "configure:1425: checking whether prfpregset_t type is broken" >&5 -+echo "configure:1436: checking whether prfpregset_t type is broken" >&5 - if eval "test \"`echo '$''{'gdb_cv_prfpregset_t_broken'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -1429,7 +1440,7 @@ else - gdb_cv_prfpregset_t_broken=yes - else - cat > conftest.$ac_ext <<EOF --#line 1433 "configure" -+#line 1444 "configure" - #include "confdefs.h" - #include <sys/procfs.h> - int main () -@@ -1439,7 +1450,7 @@ else - return 0; - } - EOF --if { (eval echo configure:1443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:1454: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - gdb_cv_prfpregset_t_broken=no - else -@@ -1463,12 +1474,12 @@ EOF - fi - - echo $ac_n "checking for elf_fpregset_t in sys/procfs.h""... $ac_c" 1>&6 --echo "configure:1467: checking for elf_fpregset_t in sys/procfs.h" >&5 -+echo "configure:1478: checking for elf_fpregset_t in sys/procfs.h" >&5 - if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_elf_fpregset_t'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <<EOF --#line 1472 "configure" -+#line 1483 "configure" - #include "confdefs.h" - - #define _SYSCALL32 -@@ -1477,7 +1488,7 @@ int main() { - elf_fpregset_t avar - ; return 0; } - EOF --if { (eval echo configure:1481: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:1492: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - bfd_cv_have_sys_procfs_type_elf_fpregset_t=yes - else -@@ -1506,14 +1517,14 @@ USE_THREAD_DB= - - if test "$srv_linux_thread_db" = "yes"; then - echo $ac_n "checking for libthread_db""... $ac_c" 1>&6 --echo "configure:1510: checking for libthread_db" >&5 -+echo "configure:1521: checking for libthread_db" >&5 - if eval "test \"`echo '$''{'srv_cv_thread_db'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - old_LIBS="$LIBS" - LIBS="$LIBS -lthread_db" - cat > conftest.$ac_ext <<EOF --#line 1517 "configure" -+#line 1528 "configure" - #include "confdefs.h" - void ps_pglobal_lookup() {} - void ps_pdread() {} -@@ -1522,12 +1533,13 @@ void ps_pglobal_lookup() {} - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {} - int main() { - td_ta_new(); - ; return 0; } - EOF --if { (eval echo configure:1531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:1543: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - srv_cv_thread_db="-lthread_db" - else -@@ -1543,7 +1555,7 @@ else - fi - LIBS="$old_LIBS `eval echo "$thread_db"`" - cat > conftest.$ac_ext <<EOF --#line 1547 "configure" -+#line 1559 "configure" - #include "confdefs.h" - void ps_pglobal_lookup() {} - void ps_pdread() {} -@@ -1552,12 +1564,13 @@ void ps_pglobal_lookup() {} - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {} - int main() { - td_ta_new(); - ; return 0; } - EOF --if { (eval echo configure:1561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:1574: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - srv_cv_thread_db="$thread_db" - else -@@ -1567,11 +1580,11 @@ else - srv_cv_thread_db=no - fi - rm -f conftest* -- LIBS="$old_LIBS" -- -+ - fi - - echo "$ac_t""$srv_cv_thread_db" 1>&6 -+ LIBS="$old_LIBS" - - fi - rm -f conftest* -@@ -1585,14 +1598,14 @@ rm -f conftest* - old_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -rdynamic" - cat > conftest.$ac_ext <<EOF --#line 1589 "configure" -+#line 1602 "configure" - #include "confdefs.h" - - int main() { - - ; return 0; } - EOF --if { (eval echo configure:1596: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:1609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - RDYNAMIC=-rdynamic - else -Index: gdb-6.3/gdb/gdbserver/aclocal.m4 -=================================================================== ---- gdb-6.3.orig/gdb/gdbserver/aclocal.m4 2002-06-11 13:32:39.000000000 -0400 -+++ gdb-6.3/gdb/gdbserver/aclocal.m4 2004-12-07 17:22:00.382495519 -0500 -@@ -1,4 +1,4 @@ --dnl aclocal.m4 generated automatically by aclocal 1.4-p4 -+dnl aclocal.m4 generated automatically by aclocal 1.4 - - dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. - dnl This file is free software; the Free Software Foundation -@@ -25,6 +25,7 @@ AC_DEFUN([SRV_CHECK_THREAD_DB], - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {}], - [td_ta_new();], - [srv_cv_thread_db="-lthread_db"], -@@ -44,11 +45,12 @@ AC_DEFUN([SRV_CHECK_THREAD_DB], - void ps_lsetregs() {} - void ps_lgetfpregs() {} - void ps_lsetfpregs() {} -+ void ps_get_thread_area() {} - void ps_getpid() {}], - [td_ta_new();], - [srv_cv_thread_db="$thread_db"], - [srv_cv_thread_db=no]) -+ ]]) - LIBS="$old_LIBS" -- ]]) - )]) - diff --git a/openwrt/toolchain/gdb/patches/790-debian_dwarf2-cfi-warning.patch b/openwrt/toolchain/gdb/patches/790-debian_dwarf2-cfi-warning.patch deleted file mode 100644 index cfb3d95de5..0000000000 --- a/openwrt/toolchain/gdb/patches/790-debian_dwarf2-cfi-warning.patch +++ /dev/null @@ -1,39 +0,0 @@ -Status: Unsuitable for upstream (at least, without a lot of arguing). - -GCC does not specify the state of every last register in the CIE. Since -GCC's focus is on correctness of runtime unwinding, any registers which -have to be unwound will be specified; but unmodified registers will not -be explicitly marked. (How about modified, call-clobbered registers? -I'm not sure if they are marked as unavailable.) - -GDB issues a noisy warning about this. The warning is generally not useful, -and we can get it extremely frequently (any time we load a new CIE). - -This patch disables the warning. Alternately we could set the complaints -threshold to zero, or implement a default frame init-register method for -every architecture. But someday the compiler will support using different -calling conventions for internal functions, so that's not much of a stopgap. -ARM has a complex algorithm for handling this, involving scanning all CIEs - -benefit not completely clear outside of the ARM context of flexible register -sets. - -Index: gdb-6.3/gdb/dwarf2-frame.c -=================================================================== ---- gdb-6.3.orig/gdb/dwarf2-frame.c 2004-11-15 11:54:57.000000000 -0500 -+++ gdb-6.3/gdb/dwarf2-frame.c 2004-12-08 18:02:23.896409471 -0500 -@@ -705,9 +705,12 @@ dwarf2_frame_cache (struct frame_info *n - table. We need a way of iterating through all the valid - DWARF2 register numbers. */ - if (fs->regs.reg[column].how == DWARF2_FRAME_REG_UNSPECIFIED) -- complaint (&symfile_complaints, -- "Incomplete CFI data; unspecified registers at 0x%s", -- paddr (fs->pc)); -+ { -+ if (0) -+ complaint (&symfile_complaints, -+ "Incomplete CFI data; unspecified registers at 0x%s", -+ paddr (fs->pc)); -+ } - else - cache->reg[regnum] = fs->regs.reg[column]; - } diff --git a/openwrt/toolchain/gdb/patches/800-debian_linux-use-underscore-exit.patch b/openwrt/toolchain/gdb/patches/800-debian_linux-use-underscore-exit.patch deleted file mode 100644 index 198918ccce..0000000000 --- a/openwrt/toolchain/gdb/patches/800-debian_linux-use-underscore-exit.patch +++ /dev/null @@ -1,22 +0,0 @@ -Status: committed upstream after 6.3. Fixes some terminal mangling in -gdbtui. - -2004-12-04 Daniel Jacobowitz <dan@debian.org> - - PR tui/1703 - * linux-nat.c (linux_tracefork_child): Use _exit instead of exit. - Suggested by Joshua Neuheisel. - -Index: gdb-6.3/gdb/linux-nat.c -=================================================================== ---- gdb-6.3.orig/gdb/linux-nat.c 2004-12-08 18:22:04.996973094 -0500 -+++ gdb-6.3/gdb/linux-nat.c 2004-12-08 18:22:20.386956067 -0500 -@@ -147,7 +147,7 @@ linux_tracefork_child (void) - ptrace (PTRACE_TRACEME, 0, 0, 0); - kill (getpid (), SIGSTOP); - fork (); -- exit (0); -+ _exit (0); - } - - /* Wrapper function for waitpid which handles EINTR. */ diff --git a/openwrt/toolchain/gdb/patches/810-debian_bfd-no-kylix-crash.patch b/openwrt/toolchain/gdb/patches/810-debian_bfd-no-kylix-crash.patch deleted file mode 100644 index 9aba5ca236..0000000000 --- a/openwrt/toolchain/gdb/patches/810-debian_bfd-no-kylix-crash.patch +++ /dev/null @@ -1,47 +0,0 @@ -Status: committed upstream after 6.3. - -Fix a crash triggered by Kylix libraries. - -2004-12-06 Daniel Jacobowitz <dan@debian.org> - - Suggested by Fergal Daly <fergal@esatclear.ie>: - * simple.c (simple_dummy_multiple_definition): New function. - (bfd_simple_get_relocated_section_contents): Use it. - -Index: src/bfd/simple.c -=================================================================== -RCS file: /cvs/src/src/bfd/simple.c,v -retrieving revision 1.19 -retrieving revision 1.20 -Index: gdb-6.3/bfd/simple.c -=================================================================== ---- gdb-6.3.orig/bfd/simple.c 2004-09-24 03:07:19.000000000 -0400 -+++ gdb-6.3/bfd/simple.c 2004-12-08 18:25:58.415216808 -0500 -@@ -78,6 +78,19 @@ simple_dummy_unattached_reloc (struct bf - return TRUE; - } - -+static bfd_boolean -+simple_dummy_multiple_definition (struct bfd_link_info *link_info ATTRIBUTE_UNUSED, -+ const char *name ATTRIBUTE_UNUSED, -+ bfd *obfd ATTRIBUTE_UNUSED, -+ asection *osec ATTRIBUTE_UNUSED, -+ bfd_vma oval ATTRIBUTE_UNUSED, -+ bfd *nbfd ATTRIBUTE_UNUSED, -+ asection *nsec ATTRIBUTE_UNUSED, -+ bfd_vma nval ATTRIBUTE_UNUSED) -+{ -+ return TRUE; -+} -+ - struct saved_output_info - { - bfd_vma offset; -@@ -172,6 +185,7 @@ bfd_simple_get_relocated_section_content - callbacks.reloc_overflow = simple_dummy_reloc_overflow; - callbacks.reloc_dangerous = simple_dummy_reloc_dangerous; - callbacks.unattached_reloc = simple_dummy_unattached_reloc; -+ callbacks.multiple_definition = simple_dummy_multiple_definition; - - memset (&link_order, 0, sizeof (link_order)); - link_order.next = NULL; diff --git a/openwrt/toolchain/gdb/patches/820-debian_disable-linux-fork-messages.patch b/openwrt/toolchain/gdb/patches/820-debian_disable-linux-fork-messages.patch deleted file mode 100644 index 60730abc19..0000000000 --- a/openwrt/toolchain/gdb/patches/820-debian_disable-linux-fork-messages.patch +++ /dev/null @@ -1,46 +0,0 @@ -Status: Proposed upstream after 6.3, not yet committed. - -2004-12-06 Daniel Jacobowitz <dan@debian.org> - - * linux-nat.c (child_follow_fork): Call target_terminal_ours before - printing output. Use fprintf_unfiltered. Only print output when - debugging. - -Index: gdb-6.3/gdb/linux-nat.c -=================================================================== ---- gdb-6.3.orig/gdb/linux-nat.c 2004-12-08 18:22:20.386956067 -0500 -+++ gdb-6.3/gdb/linux-nat.c 2004-12-08 18:28:49.995585970 -0500 -@@ -347,9 +347,13 @@ child_follow_fork (int follow_child) - also, but they'll be reinserted below. */ - detach_breakpoints (child_pid); - -- fprintf_filtered (gdb_stdout, -- "Detaching after fork from child process %d.\n", -- child_pid); -+ if (debug_linux_nat) -+ { -+ target_terminal_ours (); -+ fprintf_unfiltered (gdb_stdlog, -+ "Detaching after fork from child process %d.\n", -+ child_pid); -+ } - - ptrace (PTRACE_DETACH, child_pid, 0, 0); - -@@ -418,9 +422,13 @@ child_follow_fork (int follow_child) - /* Before detaching from the parent, remove all breakpoints from it. */ - remove_breakpoints (); - -- fprintf_filtered (gdb_stdout, -- "Attaching after fork to child process %d.\n", -- child_pid); -+ if (debug_linux_nat) -+ { -+ target_terminal_ours (); -+ fprintf_unfiltered (gdb_stdlog, -+ "Attaching after fork to child process %d.\n", -+ child_pid); -+ } - - /* If we're vforking, we may want to hold on to the parent until - the child exits or execs. At exec time we can remove the old diff --git a/openwrt/toolchain/gdb/patches/830-arm_gcc4.patch b/openwrt/toolchain/gdb/patches/830-arm_gcc4.patch deleted file mode 100644 index 5441e17121..0000000000 --- a/openwrt/toolchain/gdb/patches/830-arm_gcc4.patch +++ /dev/null @@ -1,93 +0,0 @@ -diff -ur gdb-6.3/sim/arm/iwmmxt.c gdb-6.3-owrt/sim/arm/iwmmxt.c ---- gdb-6.3/sim/arm/iwmmxt.c 2003-03-27 18:13:33.000000000 +0100 -+++ gdb-6.3-owrt/sim/arm/iwmmxt.c 2006-04-12 15:06:03.000000000 +0200 -@@ -2114,7 +2114,7 @@ - - s = (signed long) a * (signed long) b; - -- (signed long long) t += s; -+ t = t + (ARMdword) s; - } - else - { -@@ -2130,7 +2130,7 @@ - wR [BITS (12, 15)] = 0; - - if (BIT (21)) /* Signed. */ -- (signed long long) wR[BITS (12, 15)] += (signed long long) t; -+ wR[BITS (12, 15)] += t; - else - wR [BITS (12, 15)] += t; - -@@ -2166,7 +2166,7 @@ - b = wRHALF (BITS (0, 3), i * 2); - b = EXTEND16 (b); - -- (signed long) s1 = a * b; -+ s1 = (ARMdword) (a * b); - - a = wRHALF (BITS (16, 19), i * 2 + 1); - a = EXTEND16 (a); -@@ -2174,7 +2174,7 @@ - b = wRHALF (BITS (0, 3), i * 2 + 1); - b = EXTEND16 (b); - -- (signed long) s2 = a * b; -+ s2 = (ARMdword) (a * b); - } - else /* Unsigned. */ - { -@@ -2183,12 +2183,12 @@ - a = wRHALF (BITS (16, 19), i * 2); - b = wRHALF (BITS ( 0, 3), i * 2); - -- (unsigned long) s1 = a * b; -+ s1 = (ARMdword) (a * b); - - a = wRHALF (BITS (16, 19), i * 2 + 1); - b = wRHALF (BITS ( 0, 3), i * 2 + 1); - -- (signed long) s2 = a * b; -+ s2 = (ARMdword) a * b; - } - - r |= (ARMdword) ((s1 + s2) & 0xffffffff) << (i ? 32 : 0); -@@ -2914,9 +2914,9 @@ - - case Dqual: - if (shift > 63) -- r = (wR [BITS (16, 19)] & 0x8000000000000000) ? 0xffffffffffffffff : 0; -+ r = (wR [BITS (16, 19)] & 0x8000000000000000ULL) ? 0xffffffffffffffffULL : 0; - else -- r = ((signed long long) (wR[BITS (16, 19)] & 0xffffffffffffffff) >> shift); -+ r = ((signed long long) (wR[BITS (16, 19)] & 0xffffffffffffffffULL) >> shift); - SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT); - SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT); - break; -@@ -2985,7 +2985,7 @@ - if (shift > 63) - r = 0; - else -- r = (wR [BITS (16, 19)] & 0xffffffffffffffff) >> shift; -+ r = (wR [BITS (16, 19)] & 0xffffffffffffffffULL) >> shift; - - SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT); - SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT); -@@ -3287,7 +3287,7 @@ - r = wRWORD (BITS (16, 19), 1); - - if (BIT (21) && NBIT32 (r)) -- r |= 0xffffffff00000000; -+ r |= 0xffffffff00000000ULL; - - SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT); - SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT); -@@ -3354,7 +3354,7 @@ - r = wRWORD (BITS (16, 19), 0); - - if (BIT (21) && NBIT32 (r)) -- r |= 0xffffffff00000000; -+ r |= 0xffffffff00000000ULL; - - SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT); - SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT); diff --git a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_clean.patch b/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_clean.patch deleted file mode 100644 index 4cff731d5b..0000000000 --- a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_clean.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -ruN ipkg-utils-1.7-old/ipkg-build ipkg-utils-1.7-new/ipkg-build ---- ipkg-utils-1.7-old/ipkg-build 2004-08-24 04:56:12.000000000 +0200 -+++ ipkg-utils-1.7-new/ipkg-build 2004-08-24 04:55:49.000000000 +0200 -@@ -47,6 +47,19 @@ - - PKG_ERROR=0 - -+ cvs_dirs=`find . -name 'CVS'` -+ if [ -n "$cvs_dirs" ]; then -+ if [ "$noclean" = "1" ]; then -+ echo "*** Warning: The following CVS directories where found. -+You probably want to remove them: " >&2 -+ ls -ld $cvs_dirs -+ echo >&2 -+ else -+ echo "*** Removing the following files: $cvs_dirs" -+ rm -rf "$cvs_dirs" -+ fi -+ fi -+ - tilde_files=`find . -name '*~'` - if [ -n "$tilde_files" ]; then - if [ "$noclean" = "1" ]; then -@@ -134,8 +147,12 @@ - - for script in $CONTROL/preinst $CONTROL/postinst $CONTROL/prerm $CONTROL/postrm; do - if [ -f $script -a ! -x $script ]; then -+ if [ "$noclean" = "1" ]; then - echo "*** Error: package script $script is not executable" >&2 - PKG_ERROR=1 -+ else -+ chmod a+x $script -+ fi - fi - done - diff --git a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_tar.patch b/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_tar.patch deleted file mode 100644 index 441d3adf04..0000000000 --- a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_build_tar.patch +++ /dev/null @@ -1,16 +0,0 @@ -This patch from aorlinsk fixes an issue with order in options passed to tar - - http://openwrt.org/forum/viewtopic.php?pid=8332#p8332 - - ---- ipkg-utils-1.7/ipkg-build.orig 2005-06-14 23:48:36.000000000 +0200 -+++ ipkg-utils-1.7/ipkg-build 2005-06-14 23:50:03.000000000 +0200 -@@ -243,7 +243,7 @@ - mkdir $tmp_dir - - echo $CONTROL > $tmp_dir/tarX --( cd $pkg_dir && tar $ogargs -czf $tmp_dir/data.tar.gz . -X $tmp_dir/tarX ) -+( cd $pkg_dir && tar $ogargs -X $tmp_dir/tarX -czf $tmp_dir/data.tar.gz . ) - ( cd $pkg_dir/$CONTROL && tar $ogargs -czf $tmp_dir/control.tar.gz . ) - rm $tmp_dir/tarX - diff --git a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_buildpackage.patch b/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_buildpackage.patch deleted file mode 100644 index d0a30489ae..0000000000 --- a/openwrt/toolchain/ipkg-utils/1.7/ipkg-utils-1.7-ipkg_buildpackage.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -ruN ipkg-utils-1.7-old/ipkg-buildpackage ipkg-utils-1.7-new/ipkg-buildpackage ---- ipkg-utils-1.7-old/ipkg-buildpackage 2001-07-26 17:36:36.000000000 +0200 -+++ ipkg-utils-1.7-new/ipkg-buildpackage 2004-07-05 19:46:24.000000000 +0200 -@@ -30,8 +30,9 @@ - - set -e - --#SCRIPTDIR=/usr/local/bin --SCRIPTDIR=/other/kurth/ipaq-dev/familiar/dist/ipkg/util/ -+SCRIPTDIR=/usr/local/bin -+ -+IPKG_BUILD_OPTIONS=$* - - SCRIPTNAME=`basename $0` - -@@ -212,7 +213,7 @@ - # build the ipk package - owd=`pwd` - cd .. --ipkg-build /tmp/${pkg} || exit 1 -+ipkg-build $IPKG_BUILD_OPTIONS /tmp/${pkg} || exit 1 - - rm -rf /tmp/${pkg} - diff --git a/openwrt/toolchain/ipkg-utils/Makefile b/openwrt/toolchain/ipkg-utils/Makefile deleted file mode 100644 index 41c78fc24e..0000000000 --- a/openwrt/toolchain/ipkg-utils/Makefile +++ /dev/null @@ -1,55 +0,0 @@ -# ipkg-utils -# -# http://handhelds.org/packages/ipkg-utils -# - -PKG_NAME := ipkg-utils -PKG_VERSION := 1.7 - -PKG_SOURCE_SITE := http://handhelds.org/packages/ipkg-utils/ -PKG_SOURCE_FILE := $(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_CAT := zcat -PKG_SOURCE_DIR := $(PKG_NAME)-$(PKG_VERSION) - -include $(TOPDIR)/rules.mk - -PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_SOURCE_DIR) - - -$(DL_DIR)/$(PKG_SOURCE_FILE): - mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE_FILE) x $(PKG_SOURCE_SITE) - -$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(PKG_SOURCE_FILE) - mkdir -p $(BUILD_DIR) - $(PKG_SOURCE_CAT) $(DL_DIR)/$(PKG_SOURCE_FILE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - touch $(PKG_BUILD_DIR)/.unpacked - -$(PKG_BUILD_DIR)/.patched: $(PKG_BUILD_DIR)/.unpacked - $(PATCH) $(PKG_BUILD_DIR) $(PKG_VERSION)/ \*.patch - touch $(PKG_BUILD_DIR)/.patched - -$(STAGING_DIR)/usr/bin/ipkg-build: $(PKG_BUILD_DIR)/.patched - mkdir -p $(STAGING_DIR)/etc - echo "dest root /" > $(STAGING_DIR)/etc/ipkg.conf - echo "option offline_root $(TARGET_DIR)" >> $(STAGING_DIR)/etc/ipkg.conf - mkdir -p $(STAGING_DIR)/usr/bin - install -m0755 $(PKG_BUILD_DIR)/ipkg-build $(STAGING_DIR)/usr/bin - install -m0755 $(PKG_BUILD_DIR)/ipkg-buildpackage $(STAGING_DIR)/usr/bin - install -m0755 $(PKG_BUILD_DIR)/ipkg-make-index $(STAGING_DIR)/usr/bin - install -m0755 $(PKG_BUILD_DIR)/ipkg.py $(STAGING_DIR)/usr/bin - -source: $(DL_DIR)/$(PKG_SOURCE_FILE) - -prepare: $(PKG_BUILD_DIR)/.patched - -compile: - -install: $(STAGING_DIR)/usr/bin/ipkg-build - -clean: - rm -f $(STAGING_DIR)/etc/ipkg.conf - rm -f $(STAGING_DIR)/usr/bin/ipkg* - rm -rf $(PKG_BUILD_DIR) - - diff --git a/openwrt/toolchain/kernel-headers/Makefile b/openwrt/toolchain/kernel-headers/Makefile deleted file mode 100644 index 65fbed859b..0000000000 --- a/openwrt/toolchain/kernel-headers/Makefile +++ /dev/null @@ -1,53 +0,0 @@ -include $(TOPDIR)/rules.mk - -# linux kernel headers for toolchain - -LINUX_HEADERS_VERSION=2.4.32 -LINUX_KERNEL_MD5SUM:=38f4d0830e95a20f4bfed17622d5557c -LINUX_HEADERS_SITE= \ - http://www.de.kernel.org/pub/linux/kernel/v2.4 \ - http://www.fi.kernel.org/pub/linux/kernel/v2.4 \ - http://www.fr.kernel.org/pub/linux/kernel/v2.4 \ - http://www.kernel.org/pub/linux/kernel/v2.4 \ - -LINUX_HEADERS_SOURCE=linux-$(LINUX_HEADERS_VERSION).tar.bz2 -LINUX_HEADERS_ARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \ - -e 's/mipseb/mips/' \ - -e 's/mipsel/mips/' \ - -e 's/powerpc/ppc/' \ - -e 's/sh[234]/sh/' \ - -e 's/armeb/arm/' \ - ) - -$(DL_DIR)/$(LINUX_HEADERS_SOURCE): - -mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LINUX_HEADERS_SOURCE) $(LINUX_KERNEL_MD5SUM) $(LINUX_HEADERS_SITE) - -$(LINUX_HEADERS_DIR)/.unpacked: $(DL_DIR)/$(LINUX_HEADERS_SOURCE) - mkdir -p $(TOOL_BUILD_DIR) - bzcat $(DL_DIR)/$(LINUX_HEADERS_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - \ - linux-$(LINUX_HEADERS_VERSION)/include \ - linux-$(LINUX_HEADERS_VERSION)/Makefile \ - linux-$(LINUX_HEADERS_VERSION)/Rules.make \ - linux-$(LINUX_HEADERS_VERSION)/arch/$(LINUX_HEADERS_ARCH)/Makefile \ - linux-$(LINUX_HEADERS_VERSION)/scripts \ - linux-$(LINUX_HEADERS_VERSION)/arch/$(LINUX_HEADERS_ARCH)/config*.in \ - linux-$(LINUX_HEADERS_VERSION)/*/*/Config.in \ - linux-$(LINUX_HEADERS_VERSION)/*/Config.in - (cd $(LINUX_HEADERS_DIR)-$(LINUX_HEADERS_VERSION) ; patch -p1 < $(TOPDIR)/toolchain/kernel-headers/patches/include.patch) - ln -sf $(LINUX_HEADERS_DIR)-$(LINUX_HEADERS_VERSION) $(LINUX_HEADERS_DIR) - $(SED) 's/@expr length/@-expr length/' $(LINUX_HEADERS_DIR)/Makefile - touch $(LINUX_HEADERS_DIR)/.unpacked - -$(LINUX_HEADERS_DIR)/.configured: $(LINUX_HEADERS_DIR)/.unpacked - -$(CP) ./files/config.$(LINUX_HEADERS_ARCH) $(LINUX_HEADERS_DIR)/.config - $(MAKE) -C $(LINUX_HEADERS_DIR) ARCH=$(LINUX_HEADERS_ARCH) oldconfig include/linux/version.h - touch $(LINUX_HEADERS_DIR)/.configured - -source: $(DL_DIR)/$(LINUX_HEADERS_SOURCE) -prepare: $(LINUX_HEADERS_DIR)/.configured -compile: -install: -clean: - rm -rf $(LINUX_HEADERS_DIR) - diff --git a/openwrt/toolchain/kernel-headers/config.mips b/openwrt/toolchain/kernel-headers/config.mips deleted file mode 100644 index d6412028b4..0000000000 --- a/openwrt/toolchain/kernel-headers/config.mips +++ /dev/null @@ -1,1045 +0,0 @@ -# -# Automatically generated make config: don't edit -# -CONFIG_MIPS=y -CONFIG_MIPS32=y -# CONFIG_MIPS64 is not set - -# -# Code maturity level options -# -CONFIG_EXPERIMENTAL=y - -# -# Loadable module support -# -CONFIG_MODULES=y -# CONFIG_MODVERSIONS is not set -# CONFIG_KMOD is not set - -# -# Machine selection -# -# CONFIG_ACER_PICA_61 is not set -# CONFIG_MIPS_BOSPORUS is not set -# CONFIG_MIPS_MIRAGE is not set -# CONFIG_MIPS_DB1000 is not set -# CONFIG_MIPS_DB1100 is not set -# CONFIG_MIPS_DB1500 is not set -# CONFIG_MIPS_DB1550 is not set -# CONFIG_MIPS_PB1000 is not set -# CONFIG_MIPS_PB1100 is not set -# CONFIG_MIPS_PB1500 is not set -# CONFIG_MIPS_HYDROGEN3 is not set -# CONFIG_MIPS_PB1550 is not set -# CONFIG_MIPS_XXS1500 is not set -# CONFIG_MIPS_MTX1 is not set -# CONFIG_COGENT_CSB250 is not set -# CONFIG_BAGET_MIPS is not set -# CONFIG_CASIO_E55 is not set -# CONFIG_MIPS_COBALT is not set -# CONFIG_DECSTATION is not set -# CONFIG_MIPS_EV64120 is not set -# CONFIG_MIPS_EV96100 is not set -# CONFIG_MIPS_IVR is not set -# CONFIG_HP_LASERJET is not set -# CONFIG_IBM_WORKPAD is not set -# CONFIG_LASAT is not set -# CONFIG_MIPS_ITE8172 is not set -# CONFIG_MIPS_ATLAS is not set -# CONFIG_MIPS_MAGNUM_4000 is not set -# CONFIG_MIPS_MALTA is not set -# CONFIG_MIPS_SEAD is not set -# CONFIG_MOMENCO_OCELOT is not set -# CONFIG_MOMENCO_OCELOT_G is not set -# CONFIG_MOMENCO_OCELOT_C is not set -# CONFIG_MOMENCO_JAGUAR_ATX is not set -# CONFIG_PMC_BIG_SUR is not set -# CONFIG_PMC_STRETCH is not set -# CONFIG_PMC_YOSEMITE is not set -# CONFIG_DDB5074 is not set -# CONFIG_DDB5476 is not set -# CONFIG_DDB5477 is not set -# CONFIG_NEC_OSPREY is not set -# CONFIG_NEC_EAGLE is not set -# CONFIG_OLIVETTI_M700 is not set -# CONFIG_NINO is not set -# CONFIG_SGI_IP22 is not set -# CONFIG_SGI_IP27 is not set -# CONFIG_SIBYTE_SB1xxx_SOC is not set -# CONFIG_SNI_RM200_PCI is not set -# CONFIG_TANBAC_TB0226 is not set -# CONFIG_TANBAC_TB0229 is not set -# CONFIG_TOSHIBA_JMR3927 is not set -# CONFIG_TOSHIBA_RBTX4927 is not set -# CONFIG_VICTOR_MPC30X is not set -# CONFIG_ZAO_CAPCELLA is not set -# CONFIG_HIGHMEM is not set -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set -# CONFIG_MIPS_AU1000 is not set - -# -# CPU selection -# -CONFIG_CPU_MIPS32=y -# CONFIG_CPU_MIPS64 is not set -# CONFIG_CPU_R3000 is not set -# CONFIG_CPU_TX39XX is not set -# CONFIG_CPU_VR41XX is not set -# CONFIG_CPU_R4300 is not set -# CONFIG_CPU_R4X00 is not set -# CONFIG_CPU_TX49XX is not set -# CONFIG_CPU_R5000 is not set -# CONFIG_CPU_R5432 is not set -# CONFIG_CPU_R6000 is not set -# CONFIG_CPU_NEVADA is not set -# CONFIG_CPU_R8000 is not set -# CONFIG_CPU_R10000 is not set -# CONFIG_CPU_RM7000 is not set -# CONFIG_CPU_RM9000 is not set -# CONFIG_CPU_SB1 is not set -CONFIG_PAGE_SIZE_4KB=y -# CONFIG_PAGE_SIZE_16KB is not set -# CONFIG_PAGE_SIZE_64KB is not set -CONFIG_CPU_HAS_PREFETCH=y -# CONFIG_VTAG_ICACHE is not set -# CONFIG_64BIT_PHYS_ADDR is not set -# CONFIG_CPU_ADVANCED is not set -CONFIG_CPU_HAS_LLSC=y -# CONFIG_CPU_HAS_LLDSCD is not set -# CONFIG_CPU_HAS_WB is not set -CONFIG_CPU_HAS_SYNC=y - -# -# General setup -# -CONFIG_CPU_LITTLE_ENDIAN=y -# CONFIG_BUILD_ELF64 is not set -CONFIG_NET=y -CONFIG_PCI=y -# CONFIG_PCI_NEW is not set -CONFIG_PCI_AUTO=y -# CONFIG_PCI_NAMES is not set -# CONFIG_ISA is not set -# CONFIG_TC is not set -# CONFIG_MCA is not set -# CONFIG_SBUS is not set -# CONFIG_HOTPLUG is not set -# CONFIG_PCMCIA is not set -# CONFIG_HOTPLUG_PCI is not set -CONFIG_SYSVIPC=y -# CONFIG_BSD_PROCESS_ACCT is not set -CONFIG_SYSCTL=y -CONFIG_KCORE_ELF=y -# CONFIG_KCORE_AOUT is not set -# CONFIG_BINFMT_AOUT is not set -CONFIG_BINFMT_ELF=y -# CONFIG_MIPS32_COMPAT is not set -# CONFIG_MIPS32_O32 is not set -# CONFIG_MIPS32_N32 is not set -# CONFIG_BINFMT_ELF32 is not set -# CONFIG_BINFMT_MISC is not set -# CONFIG_OOM_KILLER is not set -# CONFIG_CMDLINE_BOOL is not set - -# -# Memory Technology Devices (MTD) -# -CONFIG_MTD=y -# CONFIG_MTD_DEBUG is not set -CONFIG_MTD_PARTITIONS=y -# CONFIG_MTD_CONCAT is not set -# CONFIG_MTD_REDBOOT_PARTS is not set -# CONFIG_MTD_CMDLINE_PARTS is not set - -# -# User Modules And Translation Layers -# -CONFIG_MTD_CHAR=y -CONFIG_MTD_BLOCK=y -# CONFIG_FTL is not set -# CONFIG_NFTL is not set - -# -# RAM/ROM/Flash chip drivers -# -CONFIG_MTD_CFI=y -# CONFIG_MTD_JEDECPROBE is not set -CONFIG_MTD_GEN_PROBE=y -CONFIG_MTD_CFI_ADV_OPTIONS=y -CONFIG_MTD_CFI_NOSWAP=y -# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set -# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set -CONFIG_MTD_CFI_GEOMETRY=y -# CONFIG_MTD_CFI_B1 is not set -CONFIG_MTD_CFI_B2=y -# CONFIG_MTD_CFI_B4 is not set -# CONFIG_MTD_CFI_B8 is not set -CONFIG_MTD_CFI_I1=y -# CONFIG_MTD_CFI_I2 is not set -# CONFIG_MTD_CFI_I4 is not set -# CONFIG_MTD_CFI_I8 is not set -CONFIG_MTD_CFI_INTELEXT=y -CONFIG_MTD_CFI_AMDSTD=y -# CONFIG_MTD_CFI_STAA is not set -# CONFIG_MTD_RAM is not set -# CONFIG_MTD_ROM is not set -# CONFIG_MTD_ABSENT is not set -# CONFIG_MTD_OBSOLETE_CHIPS is not set -# CONFIG_MTD_AMDSTD is not set -# CONFIG_MTD_SHARP is not set -# CONFIG_MTD_JEDEC is not set - -# -# Mapping drivers for chip access -# -# CONFIG_MTD_PHYSMAP is not set -# CONFIG_MTD_PB1000 is not set -# CONFIG_MTD_PB1500 is not set -# CONFIG_MTD_PB1100 is not set -# CONFIG_MTD_CSTM_MIPS_IXX is not set -# CONFIG_MTD_OCELOT is not set -# CONFIG_MTD_LASAT is not set -# CONFIG_MTD_PCI is not set -# CONFIG_MTD_PCMCIA is not set - -# -# Self-contained MTD device drivers -# -# CONFIG_MTD_PMC551 is not set -# CONFIG_MTD_SLRAM is not set -# CONFIG_MTD_MTDRAM is not set -# CONFIG_MTD_BLKMTD is not set - -# -# Disk-On-Chip Device Drivers -# -# CONFIG_MTD_DOC1000 is not set -# CONFIG_MTD_DOC2000 is not set -# CONFIG_MTD_DOC2001 is not set -# CONFIG_MTD_DOCPROBE is not set - -# -# NAND Flash Device Drivers -# -# CONFIG_MTD_NAND is not set - -# -# Parallel port support -# -# CONFIG_PARPORT is not set - -# -# Plug and Play configuration -# -# CONFIG_PNP is not set -# CONFIG_ISAPNP is not set - -# -# Block devices -# -# CONFIG_BLK_DEV_FD is not set -# CONFIG_BLK_DEV_XD is not set -# CONFIG_PARIDE is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_CISS_SCSI_TAPE is not set -# CONFIG_CISS_MONITOR_THREAD is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_SX8 is not set -CONFIG_BLK_DEV_LOOP=y -CONFIG_BLK_DEV_NBD=m -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_BLK_DEV_INITRD is not set -# CONFIG_BLK_STATS is not set - -# -# Multi-device support (RAID and LVM) -# -# CONFIG_MD is not set -# CONFIG_BLK_DEV_MD is not set -# CONFIG_MD_LINEAR is not set -# CONFIG_MD_RAID0 is not set -# CONFIG_MD_RAID1 is not set -# CONFIG_MD_RAID5 is not set -# CONFIG_MD_MULTIPATH is not set -# CONFIG_BLK_DEV_LVM is not set - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_PACKET_MMAP=y -CONFIG_NETLINK_DEV=m -CONFIG_NETFILTER=y -# CONFIG_NETFILTER_DEBUG is not set -# CONFIG_FILTER is not set -CONFIG_UNIX=y -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -CONFIG_IP_ADVANCED_ROUTER=y -CONFIG_IP_MULTIPLE_TABLES=y -CONFIG_IP_ROUTE_FWMARK=y -CONFIG_IP_ROUTE_NAT=y -CONFIG_IP_ROUTE_MULTIPATH=y -CONFIG_IP_ROUTE_TOS=y -# CONFIG_IP_ROUTE_VERBOSE is not set -# CONFIG_IP_PNP is not set -CONFIG_NET_IPIP=m -CONFIG_NET_IPGRE=m -# CONFIG_ARPD is not set -# CONFIG_INET_ECN is not set -# CONFIG_SYN_COOKIES is not set - -# -# IP: Netfilter Configuration -# -CONFIG_IP_NF_CONNTRACK=y -CONFIG_IP_NF_FTP=y -# CONFIG_IP_NF_AMANDA is not set -CONFIG_IP_NF_TFTP=y -CONFIG_IP_NF_IRC=y -CONFIG_IP_NF_QUEUE=m -CONFIG_IP_NF_IPTABLES=y -CONFIG_IP_NF_MATCH_LIMIT=m -CONFIG_IP_NF_MATCH_MAC=m -CONFIG_IP_NF_MATCH_PKTTYPE=m -CONFIG_IP_NF_MATCH_MARK=y -CONFIG_IP_NF_MATCH_MULTIPORT=y -CONFIG_IP_NF_MATCH_TOS=m -# CONFIG_IP_NF_MATCH_RECENT is not set -CONFIG_IP_NF_MATCH_ECN=m -CONFIG_IP_NF_MATCH_DSCP=m -CONFIG_IP_NF_MATCH_AH_ESP=m -CONFIG_IP_NF_MATCH_LENGTH=m -CONFIG_IP_NF_MATCH_TTL=m -CONFIG_IP_NF_MATCH_TCPMSS=y -CONFIG_IP_NF_MATCH_HELPER=m -CONFIG_IP_NF_MATCH_STATE=y -CONFIG_IP_NF_MATCH_CONNTRACK=m -CONFIG_IP_NF_MATCH_UNCLEAN=m -# CONFIG_IP_NF_MATCH_OWNER is not set -CONFIG_IP_NF_FILTER=y -CONFIG_IP_NF_TARGET_REJECT=y -CONFIG_IP_NF_TARGET_MIRROR=m -CONFIG_IP_NF_NAT=y -CONFIG_IP_NF_NAT_NEEDED=y -CONFIG_IP_NF_TARGET_MASQUERADE=y -CONFIG_IP_NF_TARGET_REDIRECT=y -CONFIG_IP_NF_NAT_SNMP_BASIC=m -CONFIG_IP_NF_NAT_IRC=y -CONFIG_IP_NF_NAT_FTP=y -CONFIG_IP_NF_NAT_TFTP=y -CONFIG_IP_NF_MANGLE=y -CONFIG_IP_NF_TARGET_TOS=m -CONFIG_IP_NF_TARGET_ECN=m -CONFIG_IP_NF_TARGET_DSCP=m -CONFIG_IP_NF_TARGET_MARK=y -CONFIG_IP_NF_TARGET_LOG=y -CONFIG_IP_NF_TARGET_ULOG=m -CONFIG_IP_NF_TARGET_TCPMSS=y -CONFIG_IP_NF_ARPTABLES=m -CONFIG_IP_NF_ARPFILTER=m -# CONFIG_IP_NF_ARP_MANGLE is not set - -# -# IP: Virtual Server Configuration -# -# CONFIG_IP_VS is not set -CONFIG_IPV6=m - -# -# IPv6: Netfilter Configuration -# -CONFIG_IP6_NF_QUEUE=m -CONFIG_IP6_NF_IPTABLES=m -CONFIG_IP6_NF_MATCH_LIMIT=m -CONFIG_IP6_NF_MATCH_MAC=m -# CONFIG_IP6_NF_MATCH_RT is not set -# CONFIG_IP6_NF_MATCH_OPTS is not set -# CONFIG_IP6_NF_MATCH_FRAG is not set -# CONFIG_IP6_NF_MATCH_HL is not set -CONFIG_IP6_NF_MATCH_MULTIPORT=m -CONFIG_IP6_NF_MATCH_OWNER=m -CONFIG_IP6_NF_MATCH_MARK=m -# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set -# CONFIG_IP6_NF_MATCH_AHESP is not set -CONFIG_IP6_NF_MATCH_LENGTH=m -CONFIG_IP6_NF_MATCH_EUI64=m -CONFIG_IP6_NF_FILTER=m -CONFIG_IP6_NF_TARGET_LOG=m -CONFIG_IP6_NF_MANGLE=m -CONFIG_IP6_NF_TARGET_MARK=m -# CONFIG_KHTTPD is not set - -# -# SCTP Configuration (EXPERIMENTAL) -# -# CONFIG_IP_SCTP is not set -# CONFIG_ATM is not set -CONFIG_VLAN_8021Q=y - -# -# -# -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_DECNET is not set -CONFIG_BRIDGE=y -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_LLC is not set -# CONFIG_NET_DIVERT is not set -# CONFIG_ECONET is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_NET_FASTROUTE is not set -# CONFIG_NET_HW_FLOWCONTROL is not set - -# -# QoS and/or fair queueing -# -CONFIG_NET_SCHED=y -CONFIG_NET_SCH_CBQ=m -CONFIG_NET_SCH_HTB=m -CONFIG_NET_SCH_CSZ=m -# CONFIG_NET_SCH_HFSC is not set -CONFIG_NET_SCH_PRIO=m -CONFIG_NET_SCH_RED=m -CONFIG_NET_SCH_SFQ=m -CONFIG_NET_SCH_TEQL=m -CONFIG_NET_SCH_TBF=m -CONFIG_NET_SCH_GRED=m -# CONFIG_NET_SCH_NETEM is not set -CONFIG_NET_SCH_DSMARK=m -CONFIG_NET_SCH_INGRESS=m -CONFIG_NET_QOS=y -CONFIG_NET_ESTIMATOR=y -CONFIG_NET_CLS=y -CONFIG_NET_CLS_TCINDEX=m -CONFIG_NET_CLS_ROUTE4=m -CONFIG_NET_CLS_ROUTE=y -CONFIG_NET_CLS_FW=m -CONFIG_NET_CLS_U32=m -CONFIG_NET_CLS_RSVP=m -CONFIG_NET_CLS_RSVP6=m -CONFIG_NET_CLS_POLICE=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set - -# -# Telephony Support -# -# CONFIG_PHONE is not set -# CONFIG_PHONE_IXJ is not set -# CONFIG_PHONE_IXJ_PCMCIA is not set - -# -# ATA/IDE/MFM/RLL support -# -# CONFIG_IDE is not set -# CONFIG_BLK_DEV_HD is not set - -# -# SCSI support -# -CONFIG_SCSI=m - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=m -CONFIG_SD_EXTRA_DEVS=5 -# CONFIG_CHR_DEV_ST is not set -# CONFIG_CHR_DEV_OSST is not set -# CONFIG_BLK_DEV_SR is not set -CONFIG_CHR_DEV_SG=m - -# -# Some SCSI devices (e.g. CD jukebox) support multiple LUNs -# -# CONFIG_SCSI_DEBUG_QUEUES is not set -# CONFIG_SCSI_MULTI_LUN is not set -# CONFIG_SCSI_CONSTANTS is not set -# CONFIG_SCSI_LOGGING is not set - -# -# SCSI low-level drivers -# -# CONFIG_BLK_DEV_3W_XXXX_RAID is not set -# CONFIG_SCSI_7000FASST is not set -# CONFIG_SCSI_ACARD is not set -# CONFIG_SCSI_AHA152X is not set -# CONFIG_SCSI_AHA1542 is not set -# CONFIG_SCSI_AHA1740 is not set -# CONFIG_SCSI_AACRAID is not set -# CONFIG_SCSI_AIC7XXX is not set -# CONFIG_SCSI_AIC79XX is not set -# CONFIG_SCSI_AIC7XXX_OLD is not set -# CONFIG_SCSI_DPT_I2O is not set -# CONFIG_SCSI_ADVANSYS is not set -# CONFIG_SCSI_IN2000 is not set -# CONFIG_SCSI_AM53C974 is not set -# CONFIG_SCSI_MEGARAID is not set -# CONFIG_SCSI_MEGARAID2 is not set -# CONFIG_SCSI_SATA is not set -# CONFIG_SCSI_SATA_AHCI is not set -# CONFIG_SCSI_SATA_SVW is not set -# CONFIG_SCSI_ATA_PIIX is not set -# CONFIG_SCSI_SATA_NV is not set -# CONFIG_SCSI_SATA_PROMISE is not set -# CONFIG_SCSI_SATA_SX4 is not set -# CONFIG_SCSI_SATA_SIL is not set -# CONFIG_SCSI_SATA_SIS is not set -# CONFIG_SCSI_SATA_ULI is not set -# CONFIG_SCSI_SATA_VIA is not set -# CONFIG_SCSI_SATA_VITESSE is not set -# CONFIG_SCSI_BUSLOGIC is not set -# CONFIG_SCSI_CPQFCTS is not set -# CONFIG_SCSI_DMX3191D is not set -# CONFIG_SCSI_DTC3280 is not set -# CONFIG_SCSI_EATA is not set -# CONFIG_SCSI_EATA_DMA is not set -# CONFIG_SCSI_EATA_PIO is not set -# CONFIG_SCSI_FUTURE_DOMAIN is not set -# CONFIG_SCSI_GDTH is not set -# CONFIG_SCSI_GENERIC_NCR5380 is not set -# CONFIG_SCSI_INITIO is not set -# CONFIG_SCSI_INIA100 is not set -# CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR53C7xx is not set -# CONFIG_SCSI_SYM53C8XX_2 is not set -# CONFIG_SCSI_NCR53C8XX is not set -# CONFIG_SCSI_SYM53C8XX is not set -# CONFIG_SCSI_PAS16 is not set -# CONFIG_SCSI_PCI2000 is not set -# CONFIG_SCSI_PCI2220I is not set -# CONFIG_SCSI_PSI240I is not set -# CONFIG_SCSI_QLOGIC_FAS is not set -# CONFIG_SCSI_QLOGIC_ISP is not set -# CONFIG_SCSI_QLOGIC_FC is not set -# CONFIG_SCSI_QLOGIC_1280 is not set -# CONFIG_SCSI_SIM710 is not set -# CONFIG_SCSI_SYM53C416 is not set -# CONFIG_SCSI_DC390T is not set -# CONFIG_SCSI_T128 is not set -# CONFIG_SCSI_U14_34F is not set -# CONFIG_SCSI_NSP32 is not set -# CONFIG_SCSI_DEBUG is not set - -# -# Fusion MPT device support -# -# CONFIG_FUSION is not set -# CONFIG_FUSION_BOOT is not set -# CONFIG_FUSION_ISENSE is not set -# CONFIG_FUSION_CTL is not set -# CONFIG_FUSION_LAN is not set - -# -# IEEE 1394 (FireWire) support (EXPERIMENTAL) -# -# CONFIG_IEEE1394 is not set - -# -# I2O device support -# -# CONFIG_I2O is not set -# CONFIG_I2O_PCI is not set -# CONFIG_I2O_BLOCK is not set -# CONFIG_I2O_LAN is not set -# CONFIG_I2O_SCSI is not set -# CONFIG_I2O_PROC is not set - -# -# Network device support -# -CONFIG_NETDEVICES=y - -# -# ARCnet devices -# -# CONFIG_ARCNET is not set -# CONFIG_DUMMY is not set -# CONFIG_BONDING is not set -# CONFIG_EQUALIZER is not set -CONFIG_TUN=m -# CONFIG_ETHERTAP is not set - -# -# Ethernet (10 or 100Mbit) -# -CONFIG_NET_ETHERNET=y -# CONFIG_SUNLANCE is not set -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNBMAC is not set -# CONFIG_SUNQE is not set -# CONFIG_SUNGEM is not set -# CONFIG_NET_VENDOR_3COM is not set -# CONFIG_LANCE is not set -# CONFIG_NET_VENDOR_SMC is not set -# CONFIG_NET_VENDOR_RACAL is not set -# CONFIG_HP100 is not set -# CONFIG_NET_ISA is not set -# CONFIG_NET_PCI is not set -# CONFIG_NET_POCKET is not set - -# -# Ethernet (1000 Mbit) -# -# CONFIG_ACENIC is not set -# CONFIG_DL2K is not set -# CONFIG_E1000 is not set -# CONFIG_MYRI_SBUS is not set -# CONFIG_NS83820 is not set -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -# CONFIG_R8169 is not set -# CONFIG_SK98LIN is not set -# CONFIG_TIGON3 is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_PLIP is not set -CONFIG_PPP=y -# CONFIG_PPP_MULTILINK is not set -# CONFIG_PPP_FILTER is not set -CONFIG_PPP_ASYNC=m -# CONFIG_PPP_SYNC_TTY is not set -CONFIG_PPP_DEFLATE=m -CONFIG_PPP_BSDCOMP=m -CONFIG_PPPOE=m -# CONFIG_SLIP is not set - -# -# Wireless LAN (non-hamradio) -# -# CONFIG_NET_RADIO is not set - -# -# Token Ring devices -# -# CONFIG_TR is not set -# CONFIG_NET_FC is not set -# CONFIG_RCPCI is not set -CONFIG_SHAPER=m - -# -# Wan interfaces -# -# CONFIG_WAN is not set - -# -# Amateur Radio support -# -# CONFIG_HAMRADIO is not set - -# -# IrDA (infrared) support -# -# CONFIG_IRDA is not set - -# -# ISDN subsystem -# -# CONFIG_ISDN is not set - -# -# Input core support -# -# CONFIG_INPUT is not set -# CONFIG_INPUT_KEYBDEV is not set -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_UINPUT is not set - -# -# Character devices -# -# CONFIG_VT is not set -CONFIG_SERIAL=y -CONFIG_SERIAL_CONSOLE=y -# CONFIG_SERIAL_EXTENDED is not set -# CONFIG_SERIAL_NONSTANDARD is not set -CONFIG_UNIX98_PTYS=y -CONFIG_UNIX98_PTY_COUNT=128 - -# -# I2C support -# -# CONFIG_I2C is not set - -# -# Mice -# -# CONFIG_BUSMOUSE is not set -# CONFIG_MOUSE is not set - -# -# Joysticks -# -# CONFIG_INPUT_GAMEPORT is not set - -# -# Input core support is needed for gameports -# - -# -# Input core support is needed for joysticks -# -# CONFIG_QIC02_TAPE is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_IPMI_PANIC_EVENT is not set -# CONFIG_IPMI_DEVICE_INTERFACE is not set -# CONFIG_IPMI_KCS is not set -# CONFIG_IPMI_WATCHDOG is not set - -# -# Watchdog Cards -# -CONFIG_WATCHDOG=y -CONFIG_WATCHDOG_NOWAYOUT=y -# CONFIG_ACQUIRE_WDT is not set -# CONFIG_ADVANTECH_WDT is not set -# CONFIG_ALIM1535_WDT is not set -# CONFIG_ALIM7101_WDT is not set -# CONFIG_SC520_WDT is not set -# CONFIG_PCWATCHDOG is not set -# CONFIG_EUROTECH_WDT is not set -# CONFIG_IB700_WDT is not set -# CONFIG_WAFER_WDT is not set -# CONFIG_I810_TCO is not set -# CONFIG_MIXCOMWD is not set -# CONFIG_60XX_WDT is not set -# CONFIG_SC1200_WDT is not set -# CONFIG_SCx200_WDT is not set -CONFIG_SOFT_WATCHDOG=y -# CONFIG_W83877F_WDT is not set -# CONFIG_WDT is not set -# CONFIG_WDTPCI is not set -# CONFIG_MACHZ_WDT is not set -# CONFIG_SCx200 is not set -# CONFIG_SCx200_GPIO is not set -# CONFIG_AMD_PM768 is not set -# CONFIG_NVRAM is not set -# CONFIG_RTC is not set -# CONFIG_MIPS_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set - -# -# Ftape, the floppy tape device driver -# -# CONFIG_FTAPE is not set -# CONFIG_AGP is not set - -# -# Direct Rendering Manager (XFree86 DRI support) -# -# CONFIG_DRM is not set - -# -# File systems -# -# CONFIG_QUOTA is not set -# CONFIG_QFMT_V2 is not set -# CONFIG_AUTOFS_FS is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_REISERFS_CHECK is not set -# CONFIG_REISERFS_PROC_INFO is not set -# CONFIG_ADFS_FS is not set -# CONFIG_ADFS_FS_RW is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BEFS_DEBUG is not set -# CONFIG_BFS_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_JBD is not set -# CONFIG_JBD_DEBUG is not set -CONFIG_FAT_FS=m -CONFIG_MSDOS_FS=m -# CONFIG_UMSDOS_FS is not set -CONFIG_VFAT_FS=m -# CONFIG_EFS_FS is not set -# CONFIG_JFFS_FS is not set -CONFIG_JFFS2_FS=y -CONFIG_JFFS2_FS_DEBUG=0 -CONFIG_CRAMFS=y -# CONFIG_TMPFS is not set -CONFIG_RAMFS=y -# CONFIG_ISO9660_FS is not set -# CONFIG_JOLIET is not set -# CONFIG_ZISOFS is not set -# CONFIG_JFS_FS is not set -# CONFIG_JFS_DEBUG is not set -# CONFIG_JFS_STATISTICS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_NTFS_FS is not set -# CONFIG_NTFS_RW is not set -# CONFIG_HPFS_FS is not set -CONFIG_PROC_FS=y -CONFIG_DEVFS_FS=y -CONFIG_DEVFS_MOUNT=y -# CONFIG_DEVFS_DEBUG is not set -# CONFIG_DEVPTS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX4FS_RW is not set -# CONFIG_ROMFS_FS is not set -CONFIG_EXT2_FS=m -# CONFIG_SYSV_FS is not set -# CONFIG_UDF_FS is not set -# CONFIG_UDF_RW is not set -# CONFIG_UFS_FS is not set -# CONFIG_UFS_FS_WRITE is not set -# CONFIG_XFS_FS is not set -# CONFIG_XFS_QUOTA is not set -# CONFIG_XFS_RT is not set -# CONFIG_XFS_TRACE is not set -# CONFIG_XFS_DEBUG is not set - -# -# Network File Systems -# -# CONFIG_CODA_FS is not set -# CONFIG_INTERMEZZO_FS is not set -CONFIG_NFS_FS=m -CONFIG_NFS_V3=y -# CONFIG_NFS_DIRECTIO is not set -# CONFIG_ROOT_NFS is not set -# CONFIG_NFSD is not set -# CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set -CONFIG_SUNRPC=m -CONFIG_LOCKD=m -CONFIG_LOCKD_V4=y -# CONFIG_SMB_FS is not set -# CONFIG_NCP_FS is not set -# CONFIG_NCPFS_PACKET_SIGNING is not set -# CONFIG_NCPFS_IOCTL_LOCKING is not set -# CONFIG_NCPFS_STRONG is not set -# CONFIG_NCPFS_NFS_NS is not set -# CONFIG_NCPFS_OS2_NS is not set -# CONFIG_NCPFS_SMALLDOS is not set -# CONFIG_NCPFS_NLS is not set -# CONFIG_NCPFS_EXTRAS is not set -# CONFIG_ZISOFS_FS is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_BSD_DISKLABEL is not set -# CONFIG_MINIX_SUBPARTITION is not set -# CONFIG_SOLARIS_X86_PARTITION is not set -# CONFIG_UNIXWARE_DISKLABEL is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -# CONFIG_EFI_PARTITION is not set -# CONFIG_SMB_NLS is not set -CONFIG_NLS=y - -# -# Native Language Support -# -CONFIG_NLS_DEFAULT="iso8859-1" -# CONFIG_NLS_CODEPAGE_437 is not set -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -# CONFIG_NLS_ISO8859_1 is not set -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_UTF8 is not set - -# -# Multimedia devices -# -# CONFIG_VIDEO_DEV is not set - -# -# Sound -# -# CONFIG_SOUND is not set - -# -# USB support -# -CONFIG_USB=m -# CONFIG_USB_DEBUG is not set - -# -# Miscellaneous USB options -# -CONFIG_USB_DEVICEFS=y -# CONFIG_USB_BANDWIDTH is not set - -# -# USB Host Controller Drivers -# -# CONFIG_USB_EHCI_HCD is not set -# CONFIG_USB_UHCI is not set -# CONFIG_USB_UHCI_ALT is not set -CONFIG_USB_OHCI=m - -# -# USB Device Class drivers -# -# CONFIG_USB_AUDIO is not set -# CONFIG_USB_EMI26 is not set -# CONFIG_USB_BLUETOOTH is not set -# CONFIG_USB_MIDI is not set -CONFIG_USB_STORAGE=m -# CONFIG_USB_STORAGE_DEBUG is not set -CONFIG_USB_STORAGE_DATAFAB=y -CONFIG_USB_STORAGE_FREECOM=y -# CONFIG_USB_STORAGE_ISD200 is not set -CONFIG_USB_STORAGE_DPCM=y -CONFIG_USB_STORAGE_HP8200e=y -CONFIG_USB_STORAGE_SDDR09=y -CONFIG_USB_STORAGE_SDDR55=y -CONFIG_USB_STORAGE_JUMPSHOT=y -# CONFIG_USB_ACM is not set -CONFIG_USB_PRINTER=m - -# -# USB Human Interface Devices (HID) -# -# CONFIG_USB_HID is not set - -# -# Input core support is needed for USB HID input layer or HIDBP support -# -# CONFIG_USB_HIDINPUT is not set -# CONFIG_USB_HIDDEV is not set -# CONFIG_USB_KBD is not set -# CONFIG_USB_MOUSE is not set -# CONFIG_USB_AIPTEK is not set -# CONFIG_USB_WACOM is not set -# CONFIG_USB_KBTAB is not set -# CONFIG_USB_POWERMATE is not set - -# -# USB Imaging devices -# -# CONFIG_USB_DC2XX is not set -# CONFIG_USB_MDC800 is not set -# CONFIG_USB_SCANNER is not set -# CONFIG_USB_MICROTEK is not set -# CONFIG_USB_HPUSBSCSI is not set - -# -# USB Multimedia devices -# - -# -# Video4Linux support is needed for USB Multimedia device support -# - -# -# USB Network adaptors -# -# CONFIG_USB_PEGASUS is not set -# CONFIG_USB_RTL8150 is not set -# CONFIG_USB_KAWETH is not set -# CONFIG_USB_CATC is not set -# CONFIG_USB_CDCETHER is not set -# CONFIG_USB_USBNET is not set - -# -# USB port drivers -# -# CONFIG_USB_USS720 is not set - -# -# USB Serial Converter support -# -# CONFIG_USB_SERIAL is not set - -# -# USB Miscellaneous drivers -# -# CONFIG_USB_RIO500 is not set -# CONFIG_USB_AUERSWALD is not set -# CONFIG_USB_TIGL is not set -# CONFIG_USB_BRLVGER is not set -# CONFIG_USB_LCD is not set - -# -# Support for USB gadgets -# -# CONFIG_USB_GADGET is not set - -# -# Bluetooth support -# -# CONFIG_BLUEZ is not set - -# -# Kernel hacking -# -CONFIG_CROSSCOMPILE=y -# CONFIG_RUNTIME_DEBUG is not set -# CONFIG_KGDB is not set -# CONFIG_GDB_CONSOLE is not set -# CONFIG_DEBUG_INFO is not set -# CONFIG_MAGIC_SYSRQ is not set -# CONFIG_MIPS_UNCACHED is not set -CONFIG_LOG_BUF_SHIFT=0 - -# -# Cryptographic options -# -# CONFIG_CRYPTO is not set - -# -# Library routines -# -# CONFIG_CRC32 is not set -CONFIG_ZLIB_INFLATE=y -CONFIG_ZLIB_DEFLATE=y diff --git a/openwrt/toolchain/kernel-headers/files/config.arm b/openwrt/toolchain/kernel-headers/files/config.arm deleted file mode 100644 index fc7630a1ac..0000000000 --- a/openwrt/toolchain/kernel-headers/files/config.arm +++ /dev/null @@ -1,778 +0,0 @@ -# -# Automatically generated make config: don't edit -# -CONFIG_ARM=y -# CONFIG_EISA is not set -# CONFIG_SBUS is not set -# CONFIG_MCA is not set -CONFIG_UID16=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set -# CONFIG_GENERIC_BUST_SPINLOCK is not set -# CONFIG_GENERIC_ISA_DMA is not set - -# -# Code maturity level options -# -CONFIG_EXPERIMENTAL=y -# CONFIG_OBSOLETE is not set - -# -# Loadable module support -# -CONFIG_MODULES=y -# CONFIG_MODVERSIONS is not set -# CONFIG_KMOD is not set - -# -# System Type -# -# CONFIG_ARCH_ANAKIN is not set -# CONFIG_ARCH_ARCA5K is not set -# CONFIG_ARCH_CLPS7500 is not set -# CONFIG_ARCH_CLPS711X is not set -# CONFIG_ARCH_CO285 is not set -# CONFIG_ARCH_EBSA110 is not set -# CONFIG_ARCH_CAMELOT is not set -# CONFIG_ARCH_FOOTBRIDGE is not set -CONFIG_ARCH_INTEGRATOR=y -# CONFIG_ARCH_OMAHA is not set -# CONFIG_ARCH_L7200 is not set -# CONFIG_ARCH_MX1ADS is not set -# CONFIG_ARCH_RPC is not set -# CONFIG_ARCH_RISCSTATION is not set -# CONFIG_ARCH_SA1100 is not set -# CONFIG_ARCH_SHARK is not set -# CONFIG_ARCH_AT91RM9200 is not set - -# -# Archimedes/A5000 Implementations -# - -# -# Archimedes/A5000 Implementations (select only ONE) -# -# CONFIG_ARCH_ARC is not set -# CONFIG_ARCH_A5K is not set - -# -# Footbridge Implementations -# -# CONFIG_ARCH_CATS is not set -# CONFIG_ARCH_PERSONAL_SERVER is not set -# CONFIG_ARCH_EBSA285_ADDIN is not set -# CONFIG_ARCH_EBSA285_HOST is not set -# CONFIG_ARCH_NETWINDER is not set - -# -# SA11x0 Implementations -# -# CONFIG_SA1100_ACCELENT is not set -# CONFIG_SA1100_ASSABET is not set -# CONFIG_ASSABET_NEPONSET is not set -# CONFIG_SA1100_ADSAGC is not set -# CONFIG_SA1100_ADSBITSY is not set -# CONFIG_SA1100_ADSBITSYPLUS is not set -# CONFIG_SA1100_BRUTUS is not set -# CONFIG_SA1100_CEP is not set -# CONFIG_SA1100_CERF is not set -# CONFIG_SA1100_H3100 is not set -# CONFIG_SA1100_H3600 is not set -# CONFIG_SA1100_H3800 is not set -# CONFIG_SA1100_H3XXX is not set -# CONFIG_H3600_SLEEVE is not set -# CONFIG_SA1100_EXTENEX1 is not set -# CONFIG_SA1100_FLEXANET is not set -# CONFIG_SA1100_FREEBIRD is not set -# CONFIG_SA1100_FRODO is not set -# CONFIG_SA1100_GRAPHICSCLIENT is not set -# CONFIG_SA1100_GRAPHICSMASTER is not set -# CONFIG_SA1100_HACKKIT is not set -# CONFIG_SA1100_BADGE4 is not set -# CONFIG_SA1100_JORNADA720 is not set -# CONFIG_SA1100_HUW_WEBPANEL is not set -# CONFIG_SA1100_ITSY is not set -# CONFIG_SA1100_LART is not set -# CONFIG_SA1100_NANOENGINE is not set -# CONFIG_SA1100_OMNIMETER is not set -# CONFIG_SA1100_PANGOLIN is not set -# CONFIG_SA1100_PLEB is not set -# CONFIG_SA1100_PT_SYSTEM3 is not set -# CONFIG_SA1100_SHANNON is not set -# CONFIG_SA1100_SHERMAN is not set -# CONFIG_SA1100_SIMPAD is not set -# CONFIG_SA1100_SIMPUTER is not set -# CONFIG_SA1100_PFS168 is not set -# CONFIG_SA1100_VICTOR is not set -# CONFIG_SA1100_XP860 is not set -# CONFIG_SA1100_YOPY is not set -# CONFIG_SA1100_USB is not set -# CONFIG_SA1100_USB_NETLINK is not set -# CONFIG_SA1100_USB_CHAR is not set -# CONFIG_SA1100_SSP is not set - -# -# AT91RM9200 Implementations -# -# CONFIG_ARCH_AT91RM9200DK is not set - -# -# CLPS711X/EP721X Implementations -# -# CONFIG_ARCH_AUTCPU12 is not set -# CONFIG_ARCH_CDB89712 is not set -# CONFIG_ARCH_CLEP7312 is not set -# CONFIG_ARCH_EDB7211 is not set -# CONFIG_ARCH_FORTUNET is not set -# CONFIG_ARCH_GUIDEA07 is not set -# CONFIG_ARCH_P720T is not set -# CONFIG_ARCH_EP7211 is not set -# CONFIG_ARCH_EP7212 is not set -# CONFIG_ARCH_ACORN is not set -# CONFIG_FOOTBRIDGE is not set -# CONFIG_FOOTBRIDGE_HOST is not set -# CONFIG_FOOTBRIDGE_ADDIN is not set - -# -# Processor Type -# -CONFIG_CPU_32=y -# CONFIG_CPU_26 is not set -# CONFIG_CPU_ARM610 is not set -# CONFIG_CPU_ARM710 is not set -# CONFIG_CPU_ARM720T is not set -# CONFIG_CPU_ARM920T is not set -# CONFIG_CPU_ARM922T is not set -# CONFIG_PLD is not set -# CONFIG_CPU_ARM926T is not set -# CONFIG_CPU_ARM1020 is not set -# CONFIG_CPU_ARM1026 is not set -# CONFIG_CPU_SA110 is not set -# CONFIG_CPU_SA1100 is not set -# CONFIG_CPU_32v3 is not set -CONFIG_CPU_32v4=y - -# -# Processor Features -# -# CONFIG_DISCONTIGMEM is not set - -# -# General setup -# -CONFIG_PCI_INTEGRATOR=y -CONFIG_PCI=y -# CONFIG_ISA is not set -# CONFIG_ISA_DMA is not set -# CONFIG_ZBOOT_ROM is not set -CONFIG_ZBOOT_ROM_TEXT=0x0 -CONFIG_ZBOOT_ROM_BSS=0x0 -# CONFIG_CPU_FREQ is not set -CONFIG_PCI_NAMES=y -# CONFIG_HOTPLUG is not set -# CONFIG_PCMCIA is not set -CONFIG_NET=y -CONFIG_SYSVIPC=y -# CONFIG_BSD_PROCESS_ACCT is not set -CONFIG_SYSCTL=y - -# -# At least one math emulation must be selected -# -# CONFIG_FPE_NWFPE is not set -# CONFIG_FPE_FASTFPE is not set -CONFIG_KCORE_ELF=y -# CONFIG_KCORE_AOUT is not set -CONFIG_BINFMT_AOUT=y -CONFIG_BINFMT_ELF=y -# CONFIG_BINFMT_MISC is not set -# CONFIG_PM is not set -# CONFIG_ARTHUR is not set -CONFIG_CMDLINE="root=1f04 mem=32M" -CONFIG_LEDS=y -CONFIG_LEDS_TIMER=y -CONFIG_LEDS_CPU=y -CONFIG_ALIGNMENT_TRAP=y - -# -# Parallel port support -# -# CONFIG_PARPORT is not set - -# -# Memory Technology Devices (MTD) -# -CONFIG_MTD=y -# CONFIG_MTD_DEBUG is not set -# CONFIG_MTD_PARTITIONS is not set -# CONFIG_MTD_CONCAT is not set -# CONFIG_MTD_REDBOOT_PARTS is not set -# CONFIG_MTD_CMDLINE_PARTS is not set -# CONFIG_MTD_AFS_PARTS is not set - -# -# User Modules And Translation Layers -# -CONFIG_MTD_CHAR=y -CONFIG_MTD_BLOCK=y -# CONFIG_FTL is not set -# CONFIG_NFTL is not set - -# -# RAM/ROM/Flash chip drivers -# -CONFIG_MTD_CFI=y -# CONFIG_MTD_JEDECPROBE is not set -CONFIG_MTD_GEN_PROBE=y -# CONFIG_MTD_CFI_ADV_OPTIONS is not set -CONFIG_MTD_CFI_INTELEXT=y -# CONFIG_MTD_CFI_AMDSTD is not set -# CONFIG_MTD_CFI_STAA is not set -# CONFIG_MTD_RAM is not set -# CONFIG_MTD_ROM is not set -# CONFIG_MTD_ABSENT is not set -# CONFIG_MTD_OBSOLETE_CHIPS is not set -# CONFIG_MTD_AMDSTD is not set -# CONFIG_MTD_SHARP is not set -# CONFIG_MTD_JEDEC is not set - -# -# Mapping drivers for chip access -# -# CONFIG_MTD_PHYSMAP is not set -# CONFIG_MTD_NORA is not set -# CONFIG_MTD_ARM_INTEGRATOR is not set -# CONFIG_MTD_CDB89712 is not set -# CONFIG_MTD_SA1100 is not set -# CONFIG_MTD_DC21285 is not set -# CONFIG_MTD_IQ80310 is not set -# CONFIG_MTD_EPXA10DB is not set -# CONFIG_MTD_FORTUNET is not set -# CONFIG_MTD_AUTCPU12 is not set -# CONFIG_MTD_EDB7312 is not set -# CONFIG_MTD_IMPA7 is not set -# CONFIG_MTD_CEIVA is not set -# CONFIG_MTD_PCI is not set -# CONFIG_MTD_PCMCIA is not set - -# -# Self-contained MTD device drivers -# -# CONFIG_MTD_PMC551 is not set -# CONFIG_MTD_SLRAM is not set -# CONFIG_MTD_MTDRAM is not set -# CONFIG_MTD_BLKMTD is not set - -# -# Disk-On-Chip Device Drivers -# -# CONFIG_MTD_DOC1000 is not set -# CONFIG_MTD_DOC2000 is not set -# CONFIG_MTD_DOC2001 is not set -# CONFIG_MTD_DOCPROBE is not set - -# -# NAND Flash Device Drivers -# -# CONFIG_MTD_NAND is not set - -# -# Plug and Play configuration -# -# CONFIG_PNP is not set -# CONFIG_ISAPNP is not set - -# -# Block devices -# -# CONFIG_BLK_DEV_FD is not set -# CONFIG_BLK_DEV_XD is not set -# CONFIG_PARIDE is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_CISS_SCSI_TAPE is not set -# CONFIG_CISS_MONITOR_THREAD is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_SX8 is not set -# CONFIG_BLK_DEV_LOOP is not set -# CONFIG_BLK_DEV_NBD is not set -CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_RAM_SIZE=4096 -# CONFIG_BLK_DEV_INITRD is not set -# CONFIG_BLK_STATS is not set - -# -# Multi-device support (RAID and LVM) -# -# CONFIG_MD is not set -# CONFIG_BLK_DEV_MD is not set -# CONFIG_MD_LINEAR is not set -# CONFIG_MD_RAID0 is not set -# CONFIG_MD_RAID1 is not set -# CONFIG_MD_RAID5 is not set -# CONFIG_MD_MULTIPATH is not set -# CONFIG_BLK_DEV_LVM is not set - -# -# Networking options -# -# CONFIG_PACKET is not set -# CONFIG_NETLINK_DEV is not set -# CONFIG_NETFILTER is not set -# CONFIG_FILTER is not set -CONFIG_UNIX=y -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_PNP=y -# CONFIG_IP_PNP_DHCP is not set -CONFIG_IP_PNP_BOOTP=y -# CONFIG_IP_PNP_RARP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE is not set -# CONFIG_ARPD is not set -# CONFIG_INET_ECN is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_IPV6 is not set -# CONFIG_KHTTPD is not set - -# -# SCTP Configuration (EXPERIMENTAL) -# -# CONFIG_IP_SCTP is not set -# CONFIG_ATM is not set -# CONFIG_VLAN_8021Q is not set - -# -# -# -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_DECNET is not set -# CONFIG_BRIDGE is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_LLC is not set -# CONFIG_NET_DIVERT is not set -# CONFIG_ECONET is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_NET_FASTROUTE is not set -# CONFIG_NET_HW_FLOWCONTROL is not set - -# -# QoS and/or fair queueing -# -# CONFIG_NET_SCHED is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set - -# -# Network device support -# -CONFIG_NETDEVICES=y - -# -# ARCnet devices -# -# CONFIG_ARCNET is not set -# CONFIG_DUMMY is not set -# CONFIG_BONDING is not set -# CONFIG_EQUALIZER is not set -# CONFIG_TUN is not set -# CONFIG_ETHERTAP is not set - -# -# Ethernet (10 or 100Mbit) -# -CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set -# CONFIG_ARM_CIRRUS is not set -# CONFIG_SUNLANCE is not set -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNBMAC is not set -# CONFIG_SUNQE is not set -# CONFIG_SUNGEM is not set -# CONFIG_NET_VENDOR_3COM is not set -# CONFIG_LANCE is not set -# CONFIG_NET_VENDOR_SMC is not set -# CONFIG_NET_VENDOR_RACAL is not set -# CONFIG_HP100 is not set -# CONFIG_NET_ISA is not set -CONFIG_NET_PCI=y -# CONFIG_PCNET32 is not set -# CONFIG_AMD8111_ETH is not set -# CONFIG_ADAPTEC_STARFIRE is not set -# CONFIG_APRICOT is not set -# CONFIG_B44 is not set -# CONFIG_CS89x0 is not set -CONFIG_TULIP=y -# CONFIG_TULIP_MWI is not set -# CONFIG_TULIP_MMIO is not set -# CONFIG_DE4X5 is not set -# CONFIG_DGRS is not set -# CONFIG_DM9102 is not set -CONFIG_EEPRO100=y -# CONFIG_EEPRO100_PIO is not set -# CONFIG_E100 is not set -# CONFIG_LNE390 is not set -# CONFIG_FEALNX is not set -# CONFIG_NATSEMI is not set -# CONFIG_NE2K_PCI is not set -# CONFIG_FORCEDETH is not set -# CONFIG_NE3210 is not set -# CONFIG_ES3210 is not set -# CONFIG_8139CP is not set -# CONFIG_8139TOO is not set -# CONFIG_8139TOO_PIO is not set -# CONFIG_8139TOO_TUNE_TWISTER is not set -# CONFIG_8139TOO_8129 is not set -# CONFIG_8139_OLD_RX_RESET is not set -# CONFIG_SIS900 is not set -# CONFIG_EPIC100 is not set -# CONFIG_SUNDANCE is not set -# CONFIG_SUNDANCE_MMIO is not set -# CONFIG_TLAN is not set -# CONFIG_VIA_RHINE is not set -# CONFIG_VIA_RHINE_MMIO is not set -# CONFIG_WINBOND_840 is not set -# CONFIG_NET_POCKET is not set - -# -# Ethernet (1000 Mbit) -# -# CONFIG_ACENIC is not set -# CONFIG_DL2K is not set -# CONFIG_E1000 is not set -# CONFIG_MYRI_SBUS is not set -# CONFIG_NS83820 is not set -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -# CONFIG_R8169 is not set -# CONFIG_SK98LIN is not set -# CONFIG_TIGON3 is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_PLIP is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set - -# -# Wireless LAN (non-hamradio) -# -# CONFIG_NET_RADIO is not set - -# -# Token Ring devices -# -# CONFIG_TR is not set -# CONFIG_NET_FC is not set -# CONFIG_RCPCI is not set -# CONFIG_SHAPER is not set - -# -# Wan interfaces -# -# CONFIG_WAN is not set - -# -# Amateur Radio support -# -# CONFIG_HAMRADIO is not set - -# -# IrDA (infrared) support -# -# CONFIG_IRDA is not set - -# -# ATA/ATAPI/MFM/RLL support -# -# CONFIG_IDE is not set -# CONFIG_BLK_DEV_HD is not set - -# -# SCSI support -# -# CONFIG_SCSI is not set - -# -# IEEE 1394 (FireWire) support (EXPERIMENTAL) -# -# CONFIG_IEEE1394 is not set - -# -# I2O device support -# -# CONFIG_I2O is not set -# CONFIG_I2O_PCI is not set -# CONFIG_I2O_BLOCK is not set -# CONFIG_I2O_LAN is not set -# CONFIG_I2O_SCSI is not set -# CONFIG_I2O_PROC is not set - -# -# ISDN subsystem -# -# CONFIG_ISDN is not set - -# -# Input core support -# -# CONFIG_INPUT is not set -# CONFIG_INPUT_KEYBDEV is not set -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_UINPUT is not set - -# -# Character devices -# -CONFIG_VT=y -CONFIG_VT_CONSOLE=y -# CONFIG_SERIAL is not set -# CONFIG_SERIAL_EXTENDED is not set -# CONFIG_SERIAL_NONSTANDARD is not set -CONFIG_UNIX98_PTYS=y -CONFIG_UNIX98_PTY_COUNT=256 - -# -# I2C support -# -# CONFIG_I2C is not set - -# -# Mice -# -# CONFIG_BUSMOUSE is not set -CONFIG_MOUSE=y -CONFIG_PSMOUSE=y -# CONFIG_82C710_MOUSE is not set -# CONFIG_PC110_PAD is not set -# CONFIG_MK712_MOUSE is not set - -# -# Joysticks -# -# CONFIG_INPUT_GAMEPORT is not set - -# -# Input core support is needed for gameports -# - -# -# Input core support is needed for joysticks -# -# CONFIG_QIC02_TAPE is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_IPMI_PANIC_EVENT is not set -# CONFIG_IPMI_DEVICE_INTERFACE is not set -# CONFIG_IPMI_KCS is not set -# CONFIG_IPMI_WATCHDOG is not set - -# -# Watchdog Cards -# -# CONFIG_WATCHDOG is not set -# CONFIG_SCx200 is not set -# CONFIG_SCx200_GPIO is not set -# CONFIG_AMD_PM768 is not set -# CONFIG_NVRAM is not set -# CONFIG_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set - -# -# Ftape, the floppy tape device driver -# -# CONFIG_FTAPE is not set -# CONFIG_AGP is not set - -# -# Direct Rendering Manager (XFree86 DRI support) -# -# CONFIG_DRM is not set - -# -# Multimedia devices -# -# CONFIG_VIDEO_DEV is not set - -# -# File systems -# -# CONFIG_QUOTA is not set -# CONFIG_QFMT_V2 is not set -# CONFIG_AUTOFS_FS is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_REISERFS_CHECK is not set -# CONFIG_REISERFS_PROC_INFO is not set -# CONFIG_ADFS_FS is not set -# CONFIG_ADFS_FS_RW is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BEFS_DEBUG is not set -# CONFIG_BFS_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_JBD is not set -# CONFIG_JBD_DEBUG is not set -# CONFIG_FAT_FS is not set -# CONFIG_MSDOS_FS is not set -# CONFIG_UMSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_JFFS_FS is not set -# CONFIG_JFFS2_FS is not set -# CONFIG_CRAMFS is not set -# CONFIG_TMPFS is not set -CONFIG_RAMFS=y -# CONFIG_ISO9660_FS is not set -# CONFIG_JOLIET is not set -# CONFIG_ZISOFS is not set -# CONFIG_JFS_FS is not set -# CONFIG_JFS_DEBUG is not set -# CONFIG_JFS_STATISTICS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_NTFS_FS is not set -# CONFIG_NTFS_RW is not set -# CONFIG_HPFS_FS is not set -CONFIG_PROC_FS=y -# CONFIG_DEVFS_FS is not set -# CONFIG_DEVFS_MOUNT is not set -# CONFIG_DEVFS_DEBUG is not set -CONFIG_DEVPTS_FS=y -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX4FS_RW is not set -CONFIG_ROMFS_FS=y -CONFIG_EXT2_FS=y -# CONFIG_SYSV_FS is not set -# CONFIG_UDF_FS is not set -# CONFIG_UDF_RW is not set -# CONFIG_UFS_FS is not set -# CONFIG_UFS_FS_WRITE is not set -# CONFIG_XFS_FS is not set -# CONFIG_XFS_QUOTA is not set -# CONFIG_XFS_RT is not set -# CONFIG_XFS_TRACE is not set -# CONFIG_XFS_DEBUG is not set - -# -# Network File Systems -# -# CONFIG_CODA_FS is not set -# CONFIG_INTERMEZZO_FS is not set -CONFIG_NFS_FS=y -# CONFIG_NFS_V3 is not set -# CONFIG_NFS_DIRECTIO is not set -CONFIG_ROOT_NFS=y -# CONFIG_NFSD is not set -# CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set -CONFIG_SUNRPC=y -CONFIG_LOCKD=y -# CONFIG_SMB_FS is not set -# CONFIG_NCP_FS is not set -# CONFIG_NCPFS_PACKET_SIGNING is not set -# CONFIG_NCPFS_IOCTL_LOCKING is not set -# CONFIG_NCPFS_STRONG is not set -# CONFIG_NCPFS_NFS_NS is not set -# CONFIG_NCPFS_OS2_NS is not set -# CONFIG_NCPFS_SMALLDOS is not set -# CONFIG_NCPFS_NLS is not set -# CONFIG_NCPFS_EXTRAS is not set -# CONFIG_ZISOFS_FS is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -# CONFIG_MSDOS_PARTITION is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -# CONFIG_EFI_PARTITION is not set -# CONFIG_SMB_NLS is not set -# CONFIG_NLS is not set - -# -# Console drivers -# -CONFIG_KMI_KEYB=y -CONFIG_KMI_MOUSE=y -CONFIG_PC_KEYMAP=y -CONFIG_VGA_CONSOLE=y - -# -# Frame-buffer support -# -# CONFIG_FB is not set - -# -# Sound -# -# CONFIG_SOUND is not set - -# -# Misc devices -# - -# -# USB support -# -# CONFIG_USB is not set - -# -# Support for USB gadgets -# -# CONFIG_USB_GADGET is not set - -# -# Bluetooth support -# -# CONFIG_BLUEZ is not set - -# -# Kernel hacking -# -CONFIG_FRAME_POINTER=y -CONFIG_DEBUG_USER=y -# CONFIG_DEBUG_INFO is not set -# CONFIG_NO_PGT_CACHE is not set -# CONFIG_DEBUG_KERNEL is not set -# CONFIG_DEBUG_SLAB is not set -# CONFIG_MAGIC_SYSRQ is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_WAITQ is not set -# CONFIG_DEBUG_BUGVERBOSE is not set -# CONFIG_DEBUG_ERRORS is not set -# CONFIG_DEBUG_LL is not set -# CONFIG_DEBUG_DC21285_PORT is not set -# CONFIG_DEBUG_CLPS711X_UART2 is not set -CONFIG_LOG_BUF_SHIFT=0 - -# -# Cryptographic options -# -# CONFIG_CRYPTO is not set - -# -# Library routines -# -# CONFIG_CRC32 is not set -# CONFIG_ZLIB_INFLATE is not set -# CONFIG_ZLIB_DEFLATE is not set diff --git a/openwrt/toolchain/kernel-headers/files/config.i386 b/openwrt/toolchain/kernel-headers/files/config.i386 deleted file mode 100644 index 2d218093ce..0000000000 --- a/openwrt/toolchain/kernel-headers/files/config.i386 +++ /dev/null @@ -1,950 +0,0 @@ -# -# Automatically generated make config: don't edit -# -CONFIG_X86=y -# CONFIG_SBUS is not set -CONFIG_UID16=y - -# -# Code maturity level options -# -# CONFIG_EXPERIMENTAL is not set - -# -# Loadable module support -# -CONFIG_MODULES=y -CONFIG_MODVERSIONS=y -CONFIG_KMOD=y - -# -# Processor type and features -# -# CONFIG_M386 is not set -# CONFIG_M486 is not set -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -# CONFIG_M686 is not set -CONFIG_MPENTIUMIII=y -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MELAN is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP2 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -CONFIG_X86_WP_WORKS_OK=y -CONFIG_X86_INVLPG=y -CONFIG_X86_CMPXCHG=y -CONFIG_X86_XADD=y -CONFIG_X86_BSWAP=y -CONFIG_X86_POPAD_OK=y -# CONFIG_RWSEM_GENERIC_SPINLOCK is not set -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_X86_L1_CACHE_SHIFT=5 -CONFIG_X86_HAS_TSC=y -CONFIG_X86_GOOD_APIC=y -CONFIG_X86_PGE=y -CONFIG_X86_USE_PPRO_CHECKSUM=y -CONFIG_X86_F00F_WORKS_OK=y -CONFIG_X86_MCE=y -# CONFIG_TOSHIBA is not set -# CONFIG_I8K is not set -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -CONFIG_NOHIGHMEM=y -# CONFIG_HIGHMEM4G is not set -# CONFIG_HIGHMEM64G is not set -# CONFIG_HIGHMEM is not set -# CONFIG_MATH_EMULATION is not set -# CONFIG_MTRR is not set -CONFIG_SMP=y -CONFIG_NR_CPUS=32 -# CONFIG_X86_NUMA is not set -# CONFIG_X86_TSC_DISABLE is not set -CONFIG_X86_TSC=y -CONFIG_HAVE_DEC_LOCK=y - -# -# General setup -# -CONFIG_NET=y -CONFIG_X86_IO_APIC=y -CONFIG_X86_LOCAL_APIC=y -CONFIG_PCI=y -# CONFIG_PCI_GOBIOS is not set -# CONFIG_PCI_GODIRECT is not set -CONFIG_PCI_GOANY=y -CONFIG_PCI_BIOS=y -CONFIG_PCI_DIRECT=y -CONFIG_ISA=y -CONFIG_PCI_NAMES=y -# CONFIG_EISA is not set -# CONFIG_MCA is not set -CONFIG_HOTPLUG=y - -# -# PCMCIA/CardBus support -# -CONFIG_PCMCIA=y -CONFIG_CARDBUS=y -# CONFIG_TCIC is not set -# CONFIG_I82092 is not set -# CONFIG_I82365 is not set - -# -# PCI Hotplug Support -# -# CONFIG_HOTPLUG_PCI is not set -# CONFIG_HOTPLUG_PCI_COMPAQ is not set -# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set -# CONFIG_HOTPLUG_PCI_IBM is not set -# CONFIG_HOTPLUG_PCI_SHPC is not set -# CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE is not set -# CONFIG_HOTPLUG_PCI_SHPC_PHPRM_LEGACY is not set -# CONFIG_HOTPLUG_PCI_PCIE is not set -# CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE is not set -CONFIG_SYSVIPC=y -# CONFIG_BSD_PROCESS_ACCT is not set -CONFIG_SYSCTL=y -CONFIG_KCORE_ELF=y -# CONFIG_KCORE_AOUT is not set -CONFIG_BINFMT_AOUT=y -CONFIG_BINFMT_ELF=y -CONFIG_BINFMT_MISC=y -# CONFIG_OOM_KILLER is not set -CONFIG_PM=y -# CONFIG_APM is not set - -# -# ACPI Support -# -# CONFIG_ACPI is not set -CONFIG_ACPI_BOOT=y - -# -# Memory Technology Devices (MTD) -# -# CONFIG_MTD is not set - -# -# Parallel port support -# -# CONFIG_PARPORT is not set - -# -# Plug and Play configuration -# -CONFIG_PNP=y -CONFIG_ISAPNP=y - -# -# Block devices -# -CONFIG_BLK_DEV_FD=y -# CONFIG_BLK_DEV_XD is not set -# CONFIG_PARIDE is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_CISS_SCSI_TAPE is not set -# CONFIG_CISS_MONITOR_THREAD is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_SX8 is not set -# CONFIG_BLK_DEV_LOOP is not set -# CONFIG_BLK_DEV_NBD is not set -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_BLK_DEV_INITRD is not set -# CONFIG_BLK_STATS is not set - -# -# Multi-device support (RAID and LVM) -# -# CONFIG_MD is not set -# CONFIG_BLK_DEV_MD is not set -# CONFIG_MD_LINEAR is not set -# CONFIG_MD_RAID0 is not set -# CONFIG_MD_RAID1 is not set -# CONFIG_MD_RAID5 is not set -# CONFIG_MD_MULTIPATH is not set -# CONFIG_BLK_DEV_LVM is not set - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_MMAP is not set -# CONFIG_NETLINK_DEV is not set -# CONFIG_NETFILTER is not set -# CONFIG_FILTER is not set -CONFIG_UNIX=y -CONFIG_INET=y -CONFIG_IP_MULTICAST=y -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE is not set -# CONFIG_IP_MROUTE is not set -# CONFIG_INET_ECN is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_VLAN_8021Q is not set - -# -# -# -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_DECNET is not set -# CONFIG_BRIDGE is not set - -# -# QoS and/or fair queueing -# -# CONFIG_NET_SCHED is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set - -# -# Telephony Support -# -# CONFIG_PHONE is not set -# CONFIG_PHONE_IXJ is not set -# CONFIG_PHONE_IXJ_PCMCIA is not set - -# -# ATA/IDE/MFM/RLL support -# -CONFIG_IDE=y - -# -# IDE, ATA and ATAPI Block devices -# -CONFIG_BLK_DEV_IDE=y - -# -# Please see Documentation/ide.txt for help/info on IDE drives -# -# CONFIG_BLK_DEV_HD_IDE is not set -# CONFIG_BLK_DEV_HD is not set -# CONFIG_BLK_DEV_IDE_SATA is not set -CONFIG_BLK_DEV_IDEDISK=y -CONFIG_IDEDISK_MULTI_MODE=y -# CONFIG_IDEDISK_STROKE is not set -# CONFIG_BLK_DEV_IDECS is not set -# CONFIG_BLK_DEV_DELKIN is not set -CONFIG_BLK_DEV_IDECD=y -# CONFIG_BLK_DEV_IDETAPE is not set -# CONFIG_BLK_DEV_IDEFLOPPY is not set -# CONFIG_BLK_DEV_IDESCSI is not set -# CONFIG_IDE_TASK_IOCTL is not set - -# -# IDE chipset support/bugfixes -# -CONFIG_BLK_DEV_CMD640=y -# CONFIG_BLK_DEV_CMD640_ENHANCED is not set -# CONFIG_BLK_DEV_ISAPNP is not set -CONFIG_BLK_DEV_IDEPCI=y -# CONFIG_BLK_DEV_GENERIC is not set -CONFIG_IDEPCI_SHARE_IRQ=y -CONFIG_BLK_DEV_IDEDMA_PCI=y -# CONFIG_BLK_DEV_OFFBOARD is not set -# CONFIG_BLK_DEV_IDEDMA_FORCED is not set -CONFIG_IDEDMA_PCI_AUTO=y -# CONFIG_IDEDMA_ONLYDISK is not set -CONFIG_BLK_DEV_IDEDMA=y -# CONFIG_IDEDMA_PCI_WIP is not set -# CONFIG_BLK_DEV_ADMA100 is not set -# CONFIG_BLK_DEV_AEC62XX is not set -# CONFIG_BLK_DEV_ALI15X3 is not set -# CONFIG_WDC_ALI15X3 is not set -# CONFIG_BLK_DEV_AMD74XX is not set -# CONFIG_AMD74XX_OVERRIDE is not set -# CONFIG_BLK_DEV_ATIIXP is not set -# CONFIG_BLK_DEV_CMD64X is not set -# CONFIG_BLK_DEV_TRIFLEX is not set -# CONFIG_BLK_DEV_CY82C693 is not set -# CONFIG_BLK_DEV_CS5530 is not set -# CONFIG_BLK_DEV_HPT34X is not set -# CONFIG_HPT34X_AUTODMA is not set -# CONFIG_BLK_DEV_HPT366 is not set -CONFIG_BLK_DEV_PIIX=y -# CONFIG_BLK_DEV_NS87415 is not set -# CONFIG_BLK_DEV_OPTI621 is not set -# CONFIG_BLK_DEV_PDC202XX_OLD is not set -# CONFIG_PDC202XX_BURST is not set -# CONFIG_BLK_DEV_PDC202XX_NEW is not set -CONFIG_BLK_DEV_RZ1000=y -# CONFIG_BLK_DEV_SC1200 is not set -# CONFIG_BLK_DEV_SVWKS is not set -# CONFIG_BLK_DEV_SIIMAGE is not set -# CONFIG_BLK_DEV_SIS5513 is not set -# CONFIG_BLK_DEV_SLC90E66 is not set -# CONFIG_BLK_DEV_TRM290 is not set -# CONFIG_BLK_DEV_VIA82CXXX is not set -# CONFIG_IDE_CHIPSETS is not set -CONFIG_IDEDMA_AUTO=y -# CONFIG_IDEDMA_IVB is not set -# CONFIG_DMA_NONPCI is not set -# CONFIG_BLK_DEV_ATARAID is not set -# CONFIG_BLK_DEV_ATARAID_PDC is not set -# CONFIG_BLK_DEV_ATARAID_HPT is not set -# CONFIG_BLK_DEV_ATARAID_MEDLEY is not set -# CONFIG_BLK_DEV_ATARAID_SII is not set - -# -# SCSI support -# -CONFIG_SCSI=y - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=y -CONFIG_SD_EXTRA_DEVS=40 -# CONFIG_CHR_DEV_ST is not set -# CONFIG_CHR_DEV_OSST is not set -# CONFIG_BLK_DEV_SR is not set -# CONFIG_CHR_DEV_SG is not set - -# -# Some SCSI devices (e.g. CD jukebox) support multiple LUNs -# -CONFIG_SCSI_DEBUG_QUEUES=y -CONFIG_SCSI_MULTI_LUN=y -CONFIG_SCSI_CONSTANTS=y -# CONFIG_SCSI_LOGGING is not set - -# -# SCSI low-level drivers -# -# CONFIG_BLK_DEV_3W_XXXX_RAID is not set -# CONFIG_SCSI_7000FASST is not set -# CONFIG_SCSI_ACARD is not set -# CONFIG_SCSI_AHA152X is not set -# CONFIG_SCSI_AHA1542 is not set -# CONFIG_SCSI_AHA1740 is not set -# CONFIG_SCSI_AIC7XXX is not set -# CONFIG_SCSI_AIC79XX is not set -# CONFIG_SCSI_AIC7XXX_OLD is not set -# CONFIG_SCSI_DPT_I2O is not set -# CONFIG_SCSI_ADVANSYS is not set -# CONFIG_SCSI_IN2000 is not set -# CONFIG_SCSI_AM53C974 is not set -# CONFIG_SCSI_MEGARAID is not set -# CONFIG_SCSI_MEGARAID2 is not set -# CONFIG_SCSI_SATA is not set -# CONFIG_SCSI_SATA_AHCI is not set -# CONFIG_SCSI_SATA_SVW is not set -# CONFIG_SCSI_ATA_PIIX is not set -# CONFIG_SCSI_SATA_NV is not set -# CONFIG_SCSI_SATA_PROMISE is not set -# CONFIG_SCSI_SATA_SX4 is not set -# CONFIG_SCSI_SATA_SIL is not set -# CONFIG_SCSI_SATA_SIS is not set -# CONFIG_SCSI_SATA_ULI is not set -# CONFIG_SCSI_SATA_VIA is not set -# CONFIG_SCSI_SATA_VITESSE is not set -# CONFIG_SCSI_BUSLOGIC is not set -# CONFIG_SCSI_CPQFCTS is not set -# CONFIG_SCSI_DMX3191D is not set -# CONFIG_SCSI_DTC3280 is not set -# CONFIG_SCSI_EATA is not set -# CONFIG_SCSI_EATA_DMA is not set -# CONFIG_SCSI_EATA_PIO is not set -# CONFIG_SCSI_FUTURE_DOMAIN is not set -# CONFIG_SCSI_GDTH is not set -# CONFIG_SCSI_GENERIC_NCR5380 is not set -# CONFIG_SCSI_IPS is not set -# CONFIG_SCSI_INITIO is not set -# CONFIG_SCSI_INIA100 is not set -# CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR53C7xx is not set -# CONFIG_SCSI_SYM53C8XX_2 is not set -# CONFIG_SCSI_NCR53C8XX is not set -CONFIG_SCSI_SYM53C8XX=y -CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=4 -CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32 -CONFIG_SCSI_NCR53C8XX_SYNC=20 -# CONFIG_SCSI_NCR53C8XX_PROFILE is not set -# CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set -# CONFIG_SCSI_NCR53C8XX_PQS_PDS is not set -# CONFIG_SCSI_PAS16 is not set -# CONFIG_SCSI_PCI2000 is not set -# CONFIG_SCSI_PCI2220I is not set -# CONFIG_SCSI_PSI240I is not set -# CONFIG_SCSI_QLOGIC_FAS is not set -# CONFIG_SCSI_QLOGIC_ISP is not set -# CONFIG_SCSI_QLOGIC_FC is not set -# CONFIG_SCSI_QLOGIC_1280 is not set -# CONFIG_SCSI_SEAGATE is not set -# CONFIG_SCSI_SIM710 is not set -# CONFIG_SCSI_SYM53C416 is not set -# CONFIG_SCSI_DC390T is not set -# CONFIG_SCSI_T128 is not set -# CONFIG_SCSI_U14_34F is not set -# CONFIG_SCSI_ULTRASTOR is not set -# CONFIG_SCSI_NSP32 is not set - -# -# PCMCIA SCSI adapter support -# -# CONFIG_SCSI_PCMCIA is not set - -# -# Fusion MPT device support -# -# CONFIG_FUSION is not set -# CONFIG_FUSION_BOOT is not set -# CONFIG_FUSION_ISENSE is not set -# CONFIG_FUSION_CTL is not set -# CONFIG_FUSION_LAN is not set - -# -# I2O device support -# -# CONFIG_I2O is not set -# CONFIG_I2O_PCI is not set -# CONFIG_I2O_BLOCK is not set -# CONFIG_I2O_LAN is not set -# CONFIG_I2O_SCSI is not set -# CONFIG_I2O_PROC is not set - -# -# Network device support -# -CONFIG_NETDEVICES=y - -# -# ARCnet devices -# -# CONFIG_ARCNET is not set -CONFIG_DUMMY=m -# CONFIG_BONDING is not set -# CONFIG_EQUALIZER is not set -# CONFIG_TUN is not set -# CONFIG_NET_SB1000 is not set - -# -# Ethernet (10 or 100Mbit) -# -CONFIG_NET_ETHERNET=y -# CONFIG_SUNLANCE is not set -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNBMAC is not set -# CONFIG_SUNQE is not set -# CONFIG_SUNGEM is not set -# CONFIG_NET_VENDOR_3COM is not set -# CONFIG_LANCE is not set -# CONFIG_NET_VENDOR_SMC is not set -# CONFIG_NET_VENDOR_RACAL is not set -# CONFIG_AT1700 is not set -# CONFIG_DEPCA is not set -# CONFIG_HP100 is not set -# CONFIG_NET_ISA is not set -CONFIG_NET_PCI=y -# CONFIG_PCNET32 is not set -# CONFIG_AMD8111_ETH is not set -# CONFIG_ADAPTEC_STARFIRE is not set -# CONFIG_AC3200 is not set -# CONFIG_APRICOT is not set -# CONFIG_B44 is not set -# CONFIG_CS89x0 is not set -# CONFIG_TULIP is not set -# CONFIG_DE4X5 is not set -# CONFIG_DGRS is not set -# CONFIG_DM9102 is not set -CONFIG_EEPRO100=y -# CONFIG_EEPRO100_PIO is not set -# CONFIG_E100 is not set -# CONFIG_LNE390 is not set -# CONFIG_FEALNX is not set -# CONFIG_NATSEMI is not set -# CONFIG_NE2K_PCI is not set -# CONFIG_FORCEDETH is not set -# CONFIG_NE3210 is not set -# CONFIG_ES3210 is not set -# CONFIG_8139CP is not set -# CONFIG_8139TOO is not set -# CONFIG_8139TOO_PIO is not set -# CONFIG_8139TOO_TUNE_TWISTER is not set -# CONFIG_8139TOO_8129 is not set -# CONFIG_8139_OLD_RX_RESET is not set -# CONFIG_SIS900 is not set -# CONFIG_EPIC100 is not set -# CONFIG_SUNDANCE is not set -# CONFIG_SUNDANCE_MMIO is not set -# CONFIG_TLAN is not set -# CONFIG_VIA_RHINE is not set -# CONFIG_VIA_RHINE_MMIO is not set -# CONFIG_WINBOND_840 is not set -# CONFIG_NET_POCKET is not set - -# -# Ethernet (1000 Mbit) -# -# CONFIG_ACENIC is not set -# CONFIG_DL2K is not set -# CONFIG_E1000 is not set -# CONFIG_MYRI_SBUS is not set -# CONFIG_NS83820 is not set -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -# CONFIG_R8169 is not set -# CONFIG_SK98LIN is not set -# CONFIG_TIGON3 is not set -# CONFIG_FDDI is not set -# CONFIG_PLIP is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set - -# -# Wireless LAN (non-hamradio) -# -# CONFIG_NET_RADIO is not set - -# -# Token Ring devices -# -# CONFIG_TR is not set -# CONFIG_NET_FC is not set - -# -# Wan interfaces -# -# CONFIG_WAN is not set - -# -# PCMCIA network device support -# -CONFIG_NET_PCMCIA=y -# CONFIG_PCMCIA_3C589 is not set -# CONFIG_PCMCIA_3C574 is not set -# CONFIG_PCMCIA_FMVJ18X is not set -CONFIG_PCMCIA_PCNET=y -# CONFIG_PCMCIA_AXNET is not set -# CONFIG_PCMCIA_NMCLAN is not set -# CONFIG_PCMCIA_SMC91C92 is not set -# CONFIG_PCMCIA_XIRC2PS is not set -# CONFIG_ARCNET_COM20020_CS is not set -# CONFIG_PCMCIA_IBMTR is not set -# CONFIG_PCMCIA_XIRCOM is not set -# CONFIG_PCMCIA_XIRTULIP is not set -CONFIG_NET_PCMCIA_RADIO=y -CONFIG_PCMCIA_RAYCS=y -# CONFIG_PCMCIA_NETWAVE is not set -# CONFIG_PCMCIA_WAVELAN is not set -# CONFIG_AIRONET4500_CS is not set - -# -# Amateur Radio support -# -# CONFIG_HAMRADIO is not set - -# -# IrDA (infrared) support -# -# CONFIG_IRDA is not set - -# -# ISDN subsystem -# -# CONFIG_ISDN is not set - -# -# Old CD-ROM drivers (not SCSI, not IDE) -# -# CONFIG_CD_NO_IDESCSI is not set - -# -# Input core support -# -# CONFIG_INPUT is not set -# CONFIG_INPUT_KEYBDEV is not set -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_UINPUT is not set - -# -# Character devices -# -CONFIG_VT=y -CONFIG_VT_CONSOLE=y -CONFIG_SERIAL=y -# CONFIG_SERIAL_CONSOLE is not set -# CONFIG_SERIAL_EXTENDED is not set -# CONFIG_SERIAL_NONSTANDARD is not set -CONFIG_UNIX98_PTYS=y -CONFIG_UNIX98_PTY_COUNT=256 - -# -# I2C support -# -# CONFIG_I2C is not set - -# -# Mice -# -# CONFIG_BUSMOUSE is not set -CONFIG_MOUSE=y -CONFIG_PSMOUSE=y -# CONFIG_82C710_MOUSE is not set -# CONFIG_PC110_PAD is not set -# CONFIG_MK712_MOUSE is not set - -# -# Joysticks -# -# CONFIG_INPUT_GAMEPORT is not set - -# -# Input core support is needed for gameports -# - -# -# Input core support is needed for joysticks -# -# CONFIG_QIC02_TAPE is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_IPMI_PANIC_EVENT is not set -# CONFIG_IPMI_DEVICE_INTERFACE is not set -# CONFIG_IPMI_KCS is not set -# CONFIG_IPMI_WATCHDOG is not set - -# -# Watchdog Cards -# -# CONFIG_WATCHDOG is not set -# CONFIG_SCx200 is not set -# CONFIG_SCx200_GPIO is not set -# CONFIG_AMD_RNG is not set -# CONFIG_INTEL_RNG is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_AMD_PM768 is not set -# CONFIG_NVRAM is not set -# CONFIG_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set - -# -# Ftape, the floppy tape device driver -# -# CONFIG_FTAPE is not set -CONFIG_AGP=y -CONFIG_AGP_INTEL=y -CONFIG_AGP_I810=y -CONFIG_AGP_VIA=y -CONFIG_AGP_AMD=y -# CONFIG_AGP_AMD_K8 is not set -CONFIG_AGP_SIS=y -CONFIG_AGP_ALI=y -# CONFIG_AGP_SWORKS is not set -# CONFIG_AGP_NVIDIA is not set -# CONFIG_AGP_ATI is not set - -# -# Direct Rendering Manager (XFree86 DRI support) -# -CONFIG_DRM=y -# CONFIG_DRM_OLD is not set - -# -# DRM 4.1 drivers -# -CONFIG_DRM_NEW=y -CONFIG_DRM_TDFX=y -# CONFIG_DRM_GAMMA is not set -# CONFIG_DRM_R128 is not set -CONFIG_DRM_RADEON=y -CONFIG_DRM_I810=y -CONFIG_DRM_I810_XFREE_41=y -# CONFIG_DRM_I830 is not set -# CONFIG_DRM_MGA is not set -# CONFIG_DRM_SIS is not set - -# -# PCMCIA character devices -# -# CONFIG_PCMCIA_SERIAL_CS is not set -# CONFIG_SYNCLINK_CS is not set -# CONFIG_MWAVE is not set -# CONFIG_OBMOUSE is not set - -# -# Multimedia devices -# -# CONFIG_VIDEO_DEV is not set - -# -# File systems -# -# CONFIG_QUOTA is not set -# CONFIG_QFMT_V2 is not set -# CONFIG_AUTOFS_FS is not set -CONFIG_AUTOFS4_FS=y -# CONFIG_REISERFS_FS is not set -# CONFIG_REISERFS_CHECK is not set -# CONFIG_REISERFS_PROC_INFO is not set -# CONFIG_ADFS_FS is not set -# CONFIG_ADFS_FS_RW is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BEFS_DEBUG is not set -# CONFIG_BFS_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_JBD is not set -# CONFIG_JBD_DEBUG is not set -# CONFIG_FAT_FS is not set -# CONFIG_MSDOS_FS is not set -# CONFIG_UMSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_JFFS_FS is not set -# CONFIG_JFFS2_FS is not set -# CONFIG_CRAMFS is not set -CONFIG_TMPFS=y -CONFIG_RAMFS=y -CONFIG_ISO9660_FS=y -# CONFIG_JOLIET is not set -# CONFIG_ZISOFS is not set -# CONFIG_JFS_FS is not set -# CONFIG_JFS_DEBUG is not set -# CONFIG_JFS_STATISTICS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_NTFS_FS is not set -# CONFIG_NTFS_RW is not set -# CONFIG_HPFS_FS is not set -CONFIG_PROC_FS=y -# CONFIG_DEVFS_FS is not set -# CONFIG_DEVFS_MOUNT is not set -# CONFIG_DEVFS_DEBUG is not set -CONFIG_DEVPTS_FS=y -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX4FS_RW is not set -# CONFIG_ROMFS_FS is not set -CONFIG_EXT2_FS=y -# CONFIG_SYSV_FS is not set -# CONFIG_UDF_FS is not set -# CONFIG_UDF_RW is not set -# CONFIG_UFS_FS is not set -# CONFIG_UFS_FS_WRITE is not set -# CONFIG_XFS_FS is not set -# CONFIG_XFS_QUOTA is not set -# CONFIG_XFS_RT is not set -# CONFIG_XFS_TRACE is not set -# CONFIG_XFS_DEBUG is not set - -# -# Network File Systems -# -# CONFIG_CODA_FS is not set -# CONFIG_INTERMEZZO_FS is not set -CONFIG_NFS_FS=y -# CONFIG_NFS_V3 is not set -# CONFIG_NFS_DIRECTIO is not set -# CONFIG_ROOT_NFS is not set -CONFIG_NFSD=y -# CONFIG_NFSD_V3 is not set -CONFIG_NFSD_TCP=y -CONFIG_SUNRPC=y -CONFIG_LOCKD=y -# CONFIG_SMB_FS is not set -# CONFIG_NCP_FS is not set -# CONFIG_NCPFS_PACKET_SIGNING is not set -# CONFIG_NCPFS_IOCTL_LOCKING is not set -# CONFIG_NCPFS_STRONG is not set -# CONFIG_NCPFS_NFS_NS is not set -# CONFIG_NCPFS_OS2_NS is not set -# CONFIG_NCPFS_SMALLDOS is not set -# CONFIG_NCPFS_NLS is not set -# CONFIG_NCPFS_EXTRAS is not set -# CONFIG_ZISOFS_FS is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_SMB_NLS is not set -# CONFIG_NLS is not set - -# -# Console drivers -# -CONFIG_VGA_CONSOLE=y -# CONFIG_VIDEO_SELECT is not set - -# -# Sound -# -CONFIG_SOUND=y -# CONFIG_SOUND_ALI5455 is not set -# CONFIG_SOUND_BT878 is not set -# CONFIG_SOUND_CMPCI is not set -# CONFIG_SOUND_EMU10K1 is not set -# CONFIG_MIDI_EMU10K1 is not set -# CONFIG_SOUND_FUSION is not set -# CONFIG_SOUND_CS4281 is not set -# CONFIG_SOUND_ES1370 is not set -CONFIG_SOUND_ES1371=y -# CONFIG_SOUND_ESSSOLO1 is not set -# CONFIG_SOUND_MAESTRO is not set -# CONFIG_SOUND_MAESTRO3 is not set -# CONFIG_SOUND_FORTE is not set -# CONFIG_SOUND_ICH is not set -# CONFIG_SOUND_RME96XX is not set -# CONFIG_SOUND_SONICVIBES is not set -# CONFIG_SOUND_TRIDENT is not set -# CONFIG_SOUND_MSNDCLAS is not set -# CONFIG_SOUND_MSNDPIN is not set -# CONFIG_SOUND_VIA82CXXX is not set -# CONFIG_MIDI_VIA82CXXX is not set -# CONFIG_SOUND_OSS is not set -# CONFIG_SOUND_TVMIXER is not set -# CONFIG_SOUND_AD1980 is not set -# CONFIG_SOUND_WM97XX is not set - -# -# USB support -# -CONFIG_USB=y -# CONFIG_USB_DEBUG is not set - -# -# Miscellaneous USB options -# -# CONFIG_USB_DEVICEFS is not set -# CONFIG_USB_BANDWIDTH is not set - -# -# USB Host Controller Drivers -# -# CONFIG_USB_EHCI_HCD is not set -CONFIG_USB_UHCI_ALT=y -# CONFIG_USB_OHCI is not set -# CONFIG_USB_SL811HS_ALT is not set -# CONFIG_USB_SL811HS is not set - -# -# USB Device Class drivers -# -# CONFIG_USB_AUDIO is not set -# CONFIG_USB_EMI26 is not set -# CONFIG_USB_MIDI is not set -CONFIG_USB_STORAGE=y -# CONFIG_USB_STORAGE_DEBUG is not set -# CONFIG_USB_STORAGE_DATAFAB is not set -# CONFIG_USB_STORAGE_FREECOM is not set -# CONFIG_USB_STORAGE_ISD200 is not set -# CONFIG_USB_STORAGE_DPCM is not set -# CONFIG_USB_STORAGE_HP8200e is not set -# CONFIG_USB_STORAGE_SDDR09 is not set -# CONFIG_USB_STORAGE_SDDR55 is not set -# CONFIG_USB_STORAGE_JUMPSHOT is not set -# CONFIG_USB_ACM is not set -# CONFIG_USB_PRINTER is not set - -# -# USB Human Interface Devices (HID) -# -# CONFIG_USB_HID is not set - -# -# Input core support is needed for USB HID input layer or HIDBP support -# -# CONFIG_USB_HIDINPUT is not set -# CONFIG_USB_HIDDEV is not set -# CONFIG_USB_KBD is not set -# CONFIG_USB_MOUSE is not set -# CONFIG_USB_AIPTEK is not set -# CONFIG_USB_WACOM is not set -# CONFIG_USB_KBTAB is not set -# CONFIG_USB_POWERMATE is not set - -# -# USB Imaging devices -# -# CONFIG_USB_DC2XX is not set -# CONFIG_USB_MDC800 is not set -# CONFIG_USB_SCANNER is not set -# CONFIG_USB_MICROTEK is not set -# CONFIG_USB_HPUSBSCSI is not set - -# -# USB Multimedia devices -# - -# -# Video4Linux support is needed for USB Multimedia device support -# - -# -# USB Network adaptors -# -# CONFIG_USB_PEGASUS is not set -# CONFIG_USB_RTL8150 is not set -# CONFIG_USB_KAWETH is not set -# CONFIG_USB_CATC is not set -# CONFIG_USB_CDCETHER is not set -# CONFIG_USB_USBNET is not set - -# -# USB port drivers -# -# CONFIG_USB_USS720 is not set - -# -# USB Serial Converter support -# -# CONFIG_USB_SERIAL is not set - -# -# USB Miscellaneous drivers -# -# CONFIG_USB_RIO500 is not set -# CONFIG_USB_AUERSWALD is not set -# CONFIG_USB_TIGL is not set -# CONFIG_USB_BRLVGER is not set -# CONFIG_USB_LCD is not set - -# -# Support for USB gadgets -# -# CONFIG_USB_GADGET is not set - -# -# Bluetooth support -# -# CONFIG_BLUEZ is not set - -# -# Kernel hacking -# -# CONFIG_DEBUG_KERNEL is not set -CONFIG_LOG_BUF_SHIFT=0 - -# -# Cryptographic options -# -# CONFIG_CRYPTO is not set - -# -# Library routines -# -CONFIG_CRC32=y -# CONFIG_ZLIB_INFLATE is not set -# CONFIG_ZLIB_DEFLATE is not set diff --git a/openwrt/toolchain/kernel-headers/files/config.mips b/openwrt/toolchain/kernel-headers/files/config.mips deleted file mode 100644 index d6412028b4..0000000000 --- a/openwrt/toolchain/kernel-headers/files/config.mips +++ /dev/null @@ -1,1045 +0,0 @@ -# -# Automatically generated make config: don't edit -# -CONFIG_MIPS=y -CONFIG_MIPS32=y -# CONFIG_MIPS64 is not set - -# -# Code maturity level options -# -CONFIG_EXPERIMENTAL=y - -# -# Loadable module support -# -CONFIG_MODULES=y -# CONFIG_MODVERSIONS is not set -# CONFIG_KMOD is not set - -# -# Machine selection -# -# CONFIG_ACER_PICA_61 is not set -# CONFIG_MIPS_BOSPORUS is not set -# CONFIG_MIPS_MIRAGE is not set -# CONFIG_MIPS_DB1000 is not set -# CONFIG_MIPS_DB1100 is not set -# CONFIG_MIPS_DB1500 is not set -# CONFIG_MIPS_DB1550 is not set -# CONFIG_MIPS_PB1000 is not set -# CONFIG_MIPS_PB1100 is not set -# CONFIG_MIPS_PB1500 is not set -# CONFIG_MIPS_HYDROGEN3 is not set -# CONFIG_MIPS_PB1550 is not set -# CONFIG_MIPS_XXS1500 is not set -# CONFIG_MIPS_MTX1 is not set -# CONFIG_COGENT_CSB250 is not set -# CONFIG_BAGET_MIPS is not set -# CONFIG_CASIO_E55 is not set -# CONFIG_MIPS_COBALT is not set -# CONFIG_DECSTATION is not set -# CONFIG_MIPS_EV64120 is not set -# CONFIG_MIPS_EV96100 is not set -# CONFIG_MIPS_IVR is not set -# CONFIG_HP_LASERJET is not set -# CONFIG_IBM_WORKPAD is not set -# CONFIG_LASAT is not set -# CONFIG_MIPS_ITE8172 is not set -# CONFIG_MIPS_ATLAS is not set -# CONFIG_MIPS_MAGNUM_4000 is not set -# CONFIG_MIPS_MALTA is not set -# CONFIG_MIPS_SEAD is not set -# CONFIG_MOMENCO_OCELOT is not set -# CONFIG_MOMENCO_OCELOT_G is not set -# CONFIG_MOMENCO_OCELOT_C is not set -# CONFIG_MOMENCO_JAGUAR_ATX is not set -# CONFIG_PMC_BIG_SUR is not set -# CONFIG_PMC_STRETCH is not set -# CONFIG_PMC_YOSEMITE is not set -# CONFIG_DDB5074 is not set -# CONFIG_DDB5476 is not set -# CONFIG_DDB5477 is not set -# CONFIG_NEC_OSPREY is not set -# CONFIG_NEC_EAGLE is not set -# CONFIG_OLIVETTI_M700 is not set -# CONFIG_NINO is not set -# CONFIG_SGI_IP22 is not set -# CONFIG_SGI_IP27 is not set -# CONFIG_SIBYTE_SB1xxx_SOC is not set -# CONFIG_SNI_RM200_PCI is not set -# CONFIG_TANBAC_TB0226 is not set -# CONFIG_TANBAC_TB0229 is not set -# CONFIG_TOSHIBA_JMR3927 is not set -# CONFIG_TOSHIBA_RBTX4927 is not set -# CONFIG_VICTOR_MPC30X is not set -# CONFIG_ZAO_CAPCELLA is not set -# CONFIG_HIGHMEM is not set -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set -# CONFIG_MIPS_AU1000 is not set - -# -# CPU selection -# -CONFIG_CPU_MIPS32=y -# CONFIG_CPU_MIPS64 is not set -# CONFIG_CPU_R3000 is not set -# CONFIG_CPU_TX39XX is not set -# CONFIG_CPU_VR41XX is not set -# CONFIG_CPU_R4300 is not set -# CONFIG_CPU_R4X00 is not set -# CONFIG_CPU_TX49XX is not set -# CONFIG_CPU_R5000 is not set -# CONFIG_CPU_R5432 is not set -# CONFIG_CPU_R6000 is not set -# CONFIG_CPU_NEVADA is not set -# CONFIG_CPU_R8000 is not set -# CONFIG_CPU_R10000 is not set -# CONFIG_CPU_RM7000 is not set -# CONFIG_CPU_RM9000 is not set -# CONFIG_CPU_SB1 is not set -CONFIG_PAGE_SIZE_4KB=y -# CONFIG_PAGE_SIZE_16KB is not set -# CONFIG_PAGE_SIZE_64KB is not set -CONFIG_CPU_HAS_PREFETCH=y -# CONFIG_VTAG_ICACHE is not set -# CONFIG_64BIT_PHYS_ADDR is not set -# CONFIG_CPU_ADVANCED is not set -CONFIG_CPU_HAS_LLSC=y -# CONFIG_CPU_HAS_LLDSCD is not set -# CONFIG_CPU_HAS_WB is not set -CONFIG_CPU_HAS_SYNC=y - -# -# General setup -# -CONFIG_CPU_LITTLE_ENDIAN=y -# CONFIG_BUILD_ELF64 is not set -CONFIG_NET=y -CONFIG_PCI=y -# CONFIG_PCI_NEW is not set -CONFIG_PCI_AUTO=y -# CONFIG_PCI_NAMES is not set -# CONFIG_ISA is not set -# CONFIG_TC is not set -# CONFIG_MCA is not set -# CONFIG_SBUS is not set -# CONFIG_HOTPLUG is not set -# CONFIG_PCMCIA is not set -# CONFIG_HOTPLUG_PCI is not set -CONFIG_SYSVIPC=y -# CONFIG_BSD_PROCESS_ACCT is not set -CONFIG_SYSCTL=y -CONFIG_KCORE_ELF=y -# CONFIG_KCORE_AOUT is not set -# CONFIG_BINFMT_AOUT is not set -CONFIG_BINFMT_ELF=y -# CONFIG_MIPS32_COMPAT is not set -# CONFIG_MIPS32_O32 is not set -# CONFIG_MIPS32_N32 is not set -# CONFIG_BINFMT_ELF32 is not set -# CONFIG_BINFMT_MISC is not set -# CONFIG_OOM_KILLER is not set -# CONFIG_CMDLINE_BOOL is not set - -# -# Memory Technology Devices (MTD) -# -CONFIG_MTD=y -# CONFIG_MTD_DEBUG is not set -CONFIG_MTD_PARTITIONS=y -# CONFIG_MTD_CONCAT is not set -# CONFIG_MTD_REDBOOT_PARTS is not set -# CONFIG_MTD_CMDLINE_PARTS is not set - -# -# User Modules And Translation Layers -# -CONFIG_MTD_CHAR=y -CONFIG_MTD_BLOCK=y -# CONFIG_FTL is not set -# CONFIG_NFTL is not set - -# -# RAM/ROM/Flash chip drivers -# -CONFIG_MTD_CFI=y -# CONFIG_MTD_JEDECPROBE is not set -CONFIG_MTD_GEN_PROBE=y -CONFIG_MTD_CFI_ADV_OPTIONS=y -CONFIG_MTD_CFI_NOSWAP=y -# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set -# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set -CONFIG_MTD_CFI_GEOMETRY=y -# CONFIG_MTD_CFI_B1 is not set -CONFIG_MTD_CFI_B2=y -# CONFIG_MTD_CFI_B4 is not set -# CONFIG_MTD_CFI_B8 is not set -CONFIG_MTD_CFI_I1=y -# CONFIG_MTD_CFI_I2 is not set -# CONFIG_MTD_CFI_I4 is not set -# CONFIG_MTD_CFI_I8 is not set -CONFIG_MTD_CFI_INTELEXT=y -CONFIG_MTD_CFI_AMDSTD=y -# CONFIG_MTD_CFI_STAA is not set -# CONFIG_MTD_RAM is not set -# CONFIG_MTD_ROM is not set -# CONFIG_MTD_ABSENT is not set -# CONFIG_MTD_OBSOLETE_CHIPS is not set -# CONFIG_MTD_AMDSTD is not set -# CONFIG_MTD_SHARP is not set -# CONFIG_MTD_JEDEC is not set - -# -# Mapping drivers for chip access -# -# CONFIG_MTD_PHYSMAP is not set -# CONFIG_MTD_PB1000 is not set -# CONFIG_MTD_PB1500 is not set -# CONFIG_MTD_PB1100 is not set -# CONFIG_MTD_CSTM_MIPS_IXX is not set -# CONFIG_MTD_OCELOT is not set -# CONFIG_MTD_LASAT is not set -# CONFIG_MTD_PCI is not set -# CONFIG_MTD_PCMCIA is not set - -# -# Self-contained MTD device drivers -# -# CONFIG_MTD_PMC551 is not set -# CONFIG_MTD_SLRAM is not set -# CONFIG_MTD_MTDRAM is not set -# CONFIG_MTD_BLKMTD is not set - -# -# Disk-On-Chip Device Drivers -# -# CONFIG_MTD_DOC1000 is not set -# CONFIG_MTD_DOC2000 is not set -# CONFIG_MTD_DOC2001 is not set -# CONFIG_MTD_DOCPROBE is not set - -# -# NAND Flash Device Drivers -# -# CONFIG_MTD_NAND is not set - -# -# Parallel port support -# -# CONFIG_PARPORT is not set - -# -# Plug and Play configuration -# -# CONFIG_PNP is not set -# CONFIG_ISAPNP is not set - -# -# Block devices -# -# CONFIG_BLK_DEV_FD is not set -# CONFIG_BLK_DEV_XD is not set -# CONFIG_PARIDE is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_CISS_SCSI_TAPE is not set -# CONFIG_CISS_MONITOR_THREAD is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_SX8 is not set -CONFIG_BLK_DEV_LOOP=y -CONFIG_BLK_DEV_NBD=m -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_BLK_DEV_INITRD is not set -# CONFIG_BLK_STATS is not set - -# -# Multi-device support (RAID and LVM) -# -# CONFIG_MD is not set -# CONFIG_BLK_DEV_MD is not set -# CONFIG_MD_LINEAR is not set -# CONFIG_MD_RAID0 is not set -# CONFIG_MD_RAID1 is not set -# CONFIG_MD_RAID5 is not set -# CONFIG_MD_MULTIPATH is not set -# CONFIG_BLK_DEV_LVM is not set - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_PACKET_MMAP=y -CONFIG_NETLINK_DEV=m -CONFIG_NETFILTER=y -# CONFIG_NETFILTER_DEBUG is not set -# CONFIG_FILTER is not set -CONFIG_UNIX=y -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -CONFIG_IP_ADVANCED_ROUTER=y -CONFIG_IP_MULTIPLE_TABLES=y -CONFIG_IP_ROUTE_FWMARK=y -CONFIG_IP_ROUTE_NAT=y -CONFIG_IP_ROUTE_MULTIPATH=y -CONFIG_IP_ROUTE_TOS=y -# CONFIG_IP_ROUTE_VERBOSE is not set -# CONFIG_IP_PNP is not set -CONFIG_NET_IPIP=m -CONFIG_NET_IPGRE=m -# CONFIG_ARPD is not set -# CONFIG_INET_ECN is not set -# CONFIG_SYN_COOKIES is not set - -# -# IP: Netfilter Configuration -# -CONFIG_IP_NF_CONNTRACK=y -CONFIG_IP_NF_FTP=y -# CONFIG_IP_NF_AMANDA is not set -CONFIG_IP_NF_TFTP=y -CONFIG_IP_NF_IRC=y -CONFIG_IP_NF_QUEUE=m -CONFIG_IP_NF_IPTABLES=y -CONFIG_IP_NF_MATCH_LIMIT=m -CONFIG_IP_NF_MATCH_MAC=m -CONFIG_IP_NF_MATCH_PKTTYPE=m -CONFIG_IP_NF_MATCH_MARK=y -CONFIG_IP_NF_MATCH_MULTIPORT=y -CONFIG_IP_NF_MATCH_TOS=m -# CONFIG_IP_NF_MATCH_RECENT is not set -CONFIG_IP_NF_MATCH_ECN=m -CONFIG_IP_NF_MATCH_DSCP=m -CONFIG_IP_NF_MATCH_AH_ESP=m -CONFIG_IP_NF_MATCH_LENGTH=m -CONFIG_IP_NF_MATCH_TTL=m -CONFIG_IP_NF_MATCH_TCPMSS=y -CONFIG_IP_NF_MATCH_HELPER=m -CONFIG_IP_NF_MATCH_STATE=y -CONFIG_IP_NF_MATCH_CONNTRACK=m -CONFIG_IP_NF_MATCH_UNCLEAN=m -# CONFIG_IP_NF_MATCH_OWNER is not set -CONFIG_IP_NF_FILTER=y -CONFIG_IP_NF_TARGET_REJECT=y -CONFIG_IP_NF_TARGET_MIRROR=m -CONFIG_IP_NF_NAT=y -CONFIG_IP_NF_NAT_NEEDED=y -CONFIG_IP_NF_TARGET_MASQUERADE=y -CONFIG_IP_NF_TARGET_REDIRECT=y -CONFIG_IP_NF_NAT_SNMP_BASIC=m -CONFIG_IP_NF_NAT_IRC=y -CONFIG_IP_NF_NAT_FTP=y -CONFIG_IP_NF_NAT_TFTP=y -CONFIG_IP_NF_MANGLE=y -CONFIG_IP_NF_TARGET_TOS=m -CONFIG_IP_NF_TARGET_ECN=m -CONFIG_IP_NF_TARGET_DSCP=m -CONFIG_IP_NF_TARGET_MARK=y -CONFIG_IP_NF_TARGET_LOG=y -CONFIG_IP_NF_TARGET_ULOG=m -CONFIG_IP_NF_TARGET_TCPMSS=y -CONFIG_IP_NF_ARPTABLES=m -CONFIG_IP_NF_ARPFILTER=m -# CONFIG_IP_NF_ARP_MANGLE is not set - -# -# IP: Virtual Server Configuration -# -# CONFIG_IP_VS is not set -CONFIG_IPV6=m - -# -# IPv6: Netfilter Configuration -# -CONFIG_IP6_NF_QUEUE=m -CONFIG_IP6_NF_IPTABLES=m -CONFIG_IP6_NF_MATCH_LIMIT=m -CONFIG_IP6_NF_MATCH_MAC=m -# CONFIG_IP6_NF_MATCH_RT is not set -# CONFIG_IP6_NF_MATCH_OPTS is not set -# CONFIG_IP6_NF_MATCH_FRAG is not set -# CONFIG_IP6_NF_MATCH_HL is not set -CONFIG_IP6_NF_MATCH_MULTIPORT=m -CONFIG_IP6_NF_MATCH_OWNER=m -CONFIG_IP6_NF_MATCH_MARK=m -# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set -# CONFIG_IP6_NF_MATCH_AHESP is not set -CONFIG_IP6_NF_MATCH_LENGTH=m -CONFIG_IP6_NF_MATCH_EUI64=m -CONFIG_IP6_NF_FILTER=m -CONFIG_IP6_NF_TARGET_LOG=m -CONFIG_IP6_NF_MANGLE=m -CONFIG_IP6_NF_TARGET_MARK=m -# CONFIG_KHTTPD is not set - -# -# SCTP Configuration (EXPERIMENTAL) -# -# CONFIG_IP_SCTP is not set -# CONFIG_ATM is not set -CONFIG_VLAN_8021Q=y - -# -# -# -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_DECNET is not set -CONFIG_BRIDGE=y -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_LLC is not set -# CONFIG_NET_DIVERT is not set -# CONFIG_ECONET is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_NET_FASTROUTE is not set -# CONFIG_NET_HW_FLOWCONTROL is not set - -# -# QoS and/or fair queueing -# -CONFIG_NET_SCHED=y -CONFIG_NET_SCH_CBQ=m -CONFIG_NET_SCH_HTB=m -CONFIG_NET_SCH_CSZ=m -# CONFIG_NET_SCH_HFSC is not set -CONFIG_NET_SCH_PRIO=m -CONFIG_NET_SCH_RED=m -CONFIG_NET_SCH_SFQ=m -CONFIG_NET_SCH_TEQL=m -CONFIG_NET_SCH_TBF=m -CONFIG_NET_SCH_GRED=m -# CONFIG_NET_SCH_NETEM is not set -CONFIG_NET_SCH_DSMARK=m -CONFIG_NET_SCH_INGRESS=m -CONFIG_NET_QOS=y -CONFIG_NET_ESTIMATOR=y -CONFIG_NET_CLS=y -CONFIG_NET_CLS_TCINDEX=m -CONFIG_NET_CLS_ROUTE4=m -CONFIG_NET_CLS_ROUTE=y -CONFIG_NET_CLS_FW=m -CONFIG_NET_CLS_U32=m -CONFIG_NET_CLS_RSVP=m -CONFIG_NET_CLS_RSVP6=m -CONFIG_NET_CLS_POLICE=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set - -# -# Telephony Support -# -# CONFIG_PHONE is not set -# CONFIG_PHONE_IXJ is not set -# CONFIG_PHONE_IXJ_PCMCIA is not set - -# -# ATA/IDE/MFM/RLL support -# -# CONFIG_IDE is not set -# CONFIG_BLK_DEV_HD is not set - -# -# SCSI support -# -CONFIG_SCSI=m - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=m -CONFIG_SD_EXTRA_DEVS=5 -# CONFIG_CHR_DEV_ST is not set -# CONFIG_CHR_DEV_OSST is not set -# CONFIG_BLK_DEV_SR is not set -CONFIG_CHR_DEV_SG=m - -# -# Some SCSI devices (e.g. CD jukebox) support multiple LUNs -# -# CONFIG_SCSI_DEBUG_QUEUES is not set -# CONFIG_SCSI_MULTI_LUN is not set -# CONFIG_SCSI_CONSTANTS is not set -# CONFIG_SCSI_LOGGING is not set - -# -# SCSI low-level drivers -# -# CONFIG_BLK_DEV_3W_XXXX_RAID is not set -# CONFIG_SCSI_7000FASST is not set -# CONFIG_SCSI_ACARD is not set -# CONFIG_SCSI_AHA152X is not set -# CONFIG_SCSI_AHA1542 is not set -# CONFIG_SCSI_AHA1740 is not set -# CONFIG_SCSI_AACRAID is not set -# CONFIG_SCSI_AIC7XXX is not set -# CONFIG_SCSI_AIC79XX is not set -# CONFIG_SCSI_AIC7XXX_OLD is not set -# CONFIG_SCSI_DPT_I2O is not set -# CONFIG_SCSI_ADVANSYS is not set -# CONFIG_SCSI_IN2000 is not set -# CONFIG_SCSI_AM53C974 is not set -# CONFIG_SCSI_MEGARAID is not set -# CONFIG_SCSI_MEGARAID2 is not set -# CONFIG_SCSI_SATA is not set -# CONFIG_SCSI_SATA_AHCI is not set -# CONFIG_SCSI_SATA_SVW is not set -# CONFIG_SCSI_ATA_PIIX is not set -# CONFIG_SCSI_SATA_NV is not set -# CONFIG_SCSI_SATA_PROMISE is not set -# CONFIG_SCSI_SATA_SX4 is not set -# CONFIG_SCSI_SATA_SIL is not set -# CONFIG_SCSI_SATA_SIS is not set -# CONFIG_SCSI_SATA_ULI is not set -# CONFIG_SCSI_SATA_VIA is not set -# CONFIG_SCSI_SATA_VITESSE is not set -# CONFIG_SCSI_BUSLOGIC is not set -# CONFIG_SCSI_CPQFCTS is not set -# CONFIG_SCSI_DMX3191D is not set -# CONFIG_SCSI_DTC3280 is not set -# CONFIG_SCSI_EATA is not set -# CONFIG_SCSI_EATA_DMA is not set -# CONFIG_SCSI_EATA_PIO is not set -# CONFIG_SCSI_FUTURE_DOMAIN is not set -# CONFIG_SCSI_GDTH is not set -# CONFIG_SCSI_GENERIC_NCR5380 is not set -# CONFIG_SCSI_INITIO is not set -# CONFIG_SCSI_INIA100 is not set -# CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR53C7xx is not set -# CONFIG_SCSI_SYM53C8XX_2 is not set -# CONFIG_SCSI_NCR53C8XX is not set -# CONFIG_SCSI_SYM53C8XX is not set -# CONFIG_SCSI_PAS16 is not set -# CONFIG_SCSI_PCI2000 is not set -# CONFIG_SCSI_PCI2220I is not set -# CONFIG_SCSI_PSI240I is not set -# CONFIG_SCSI_QLOGIC_FAS is not set -# CONFIG_SCSI_QLOGIC_ISP is not set -# CONFIG_SCSI_QLOGIC_FC is not set -# CONFIG_SCSI_QLOGIC_1280 is not set -# CONFIG_SCSI_SIM710 is not set -# CONFIG_SCSI_SYM53C416 is not set -# CONFIG_SCSI_DC390T is not set -# CONFIG_SCSI_T128 is not set -# CONFIG_SCSI_U14_34F is not set -# CONFIG_SCSI_NSP32 is not set -# CONFIG_SCSI_DEBUG is not set - -# -# Fusion MPT device support -# -# CONFIG_FUSION is not set -# CONFIG_FUSION_BOOT is not set -# CONFIG_FUSION_ISENSE is not set -# CONFIG_FUSION_CTL is not set -# CONFIG_FUSION_LAN is not set - -# -# IEEE 1394 (FireWire) support (EXPERIMENTAL) -# -# CONFIG_IEEE1394 is not set - -# -# I2O device support -# -# CONFIG_I2O is not set -# CONFIG_I2O_PCI is not set -# CONFIG_I2O_BLOCK is not set -# CONFIG_I2O_LAN is not set -# CONFIG_I2O_SCSI is not set -# CONFIG_I2O_PROC is not set - -# -# Network device support -# -CONFIG_NETDEVICES=y - -# -# ARCnet devices -# -# CONFIG_ARCNET is not set -# CONFIG_DUMMY is not set -# CONFIG_BONDING is not set -# CONFIG_EQUALIZER is not set -CONFIG_TUN=m -# CONFIG_ETHERTAP is not set - -# -# Ethernet (10 or 100Mbit) -# -CONFIG_NET_ETHERNET=y -# CONFIG_SUNLANCE is not set -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNBMAC is not set -# CONFIG_SUNQE is not set -# CONFIG_SUNGEM is not set -# CONFIG_NET_VENDOR_3COM is not set -# CONFIG_LANCE is not set -# CONFIG_NET_VENDOR_SMC is not set -# CONFIG_NET_VENDOR_RACAL is not set -# CONFIG_HP100 is not set -# CONFIG_NET_ISA is not set -# CONFIG_NET_PCI is not set -# CONFIG_NET_POCKET is not set - -# -# Ethernet (1000 Mbit) -# -# CONFIG_ACENIC is not set -# CONFIG_DL2K is not set -# CONFIG_E1000 is not set -# CONFIG_MYRI_SBUS is not set -# CONFIG_NS83820 is not set -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -# CONFIG_R8169 is not set -# CONFIG_SK98LIN is not set -# CONFIG_TIGON3 is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_PLIP is not set -CONFIG_PPP=y -# CONFIG_PPP_MULTILINK is not set -# CONFIG_PPP_FILTER is not set -CONFIG_PPP_ASYNC=m -# CONFIG_PPP_SYNC_TTY is not set -CONFIG_PPP_DEFLATE=m -CONFIG_PPP_BSDCOMP=m -CONFIG_PPPOE=m -# CONFIG_SLIP is not set - -# -# Wireless LAN (non-hamradio) -# -# CONFIG_NET_RADIO is not set - -# -# Token Ring devices -# -# CONFIG_TR is not set -# CONFIG_NET_FC is not set -# CONFIG_RCPCI is not set -CONFIG_SHAPER=m - -# -# Wan interfaces -# -# CONFIG_WAN is not set - -# -# Amateur Radio support -# -# CONFIG_HAMRADIO is not set - -# -# IrDA (infrared) support -# -# CONFIG_IRDA is not set - -# -# ISDN subsystem -# -# CONFIG_ISDN is not set - -# -# Input core support -# -# CONFIG_INPUT is not set -# CONFIG_INPUT_KEYBDEV is not set -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_UINPUT is not set - -# -# Character devices -# -# CONFIG_VT is not set -CONFIG_SERIAL=y -CONFIG_SERIAL_CONSOLE=y -# CONFIG_SERIAL_EXTENDED is not set -# CONFIG_SERIAL_NONSTANDARD is not set -CONFIG_UNIX98_PTYS=y -CONFIG_UNIX98_PTY_COUNT=128 - -# -# I2C support -# -# CONFIG_I2C is not set - -# -# Mice -# -# CONFIG_BUSMOUSE is not set -# CONFIG_MOUSE is not set - -# -# Joysticks -# -# CONFIG_INPUT_GAMEPORT is not set - -# -# Input core support is needed for gameports -# - -# -# Input core support is needed for joysticks -# -# CONFIG_QIC02_TAPE is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_IPMI_PANIC_EVENT is not set -# CONFIG_IPMI_DEVICE_INTERFACE is not set -# CONFIG_IPMI_KCS is not set -# CONFIG_IPMI_WATCHDOG is not set - -# -# Watchdog Cards -# -CONFIG_WATCHDOG=y -CONFIG_WATCHDOG_NOWAYOUT=y -# CONFIG_ACQUIRE_WDT is not set -# CONFIG_ADVANTECH_WDT is not set -# CONFIG_ALIM1535_WDT is not set -# CONFIG_ALIM7101_WDT is not set -# CONFIG_SC520_WDT is not set -# CONFIG_PCWATCHDOG is not set -# CONFIG_EUROTECH_WDT is not set -# CONFIG_IB700_WDT is not set -# CONFIG_WAFER_WDT is not set -# CONFIG_I810_TCO is not set -# CONFIG_MIXCOMWD is not set -# CONFIG_60XX_WDT is not set -# CONFIG_SC1200_WDT is not set -# CONFIG_SCx200_WDT is not set -CONFIG_SOFT_WATCHDOG=y -# CONFIG_W83877F_WDT is not set -# CONFIG_WDT is not set -# CONFIG_WDTPCI is not set -# CONFIG_MACHZ_WDT is not set -# CONFIG_SCx200 is not set -# CONFIG_SCx200_GPIO is not set -# CONFIG_AMD_PM768 is not set -# CONFIG_NVRAM is not set -# CONFIG_RTC is not set -# CONFIG_MIPS_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set - -# -# Ftape, the floppy tape device driver -# -# CONFIG_FTAPE is not set -# CONFIG_AGP is not set - -# -# Direct Rendering Manager (XFree86 DRI support) -# -# CONFIG_DRM is not set - -# -# File systems -# -# CONFIG_QUOTA is not set -# CONFIG_QFMT_V2 is not set -# CONFIG_AUTOFS_FS is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_REISERFS_CHECK is not set -# CONFIG_REISERFS_PROC_INFO is not set -# CONFIG_ADFS_FS is not set -# CONFIG_ADFS_FS_RW is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BEFS_DEBUG is not set -# CONFIG_BFS_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_JBD is not set -# CONFIG_JBD_DEBUG is not set -CONFIG_FAT_FS=m -CONFIG_MSDOS_FS=m -# CONFIG_UMSDOS_FS is not set -CONFIG_VFAT_FS=m -# CONFIG_EFS_FS is not set -# CONFIG_JFFS_FS is not set -CONFIG_JFFS2_FS=y -CONFIG_JFFS2_FS_DEBUG=0 -CONFIG_CRAMFS=y -# CONFIG_TMPFS is not set -CONFIG_RAMFS=y -# CONFIG_ISO9660_FS is not set -# CONFIG_JOLIET is not set -# CONFIG_ZISOFS is not set -# CONFIG_JFS_FS is not set -# CONFIG_JFS_DEBUG is not set -# CONFIG_JFS_STATISTICS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_NTFS_FS is not set -# CONFIG_NTFS_RW is not set -# CONFIG_HPFS_FS is not set -CONFIG_PROC_FS=y -CONFIG_DEVFS_FS=y -CONFIG_DEVFS_MOUNT=y -# CONFIG_DEVFS_DEBUG is not set -# CONFIG_DEVPTS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX4FS_RW is not set -# CONFIG_ROMFS_FS is not set -CONFIG_EXT2_FS=m -# CONFIG_SYSV_FS is not set -# CONFIG_UDF_FS is not set -# CONFIG_UDF_RW is not set -# CONFIG_UFS_FS is not set -# CONFIG_UFS_FS_WRITE is not set -# CONFIG_XFS_FS is not set -# CONFIG_XFS_QUOTA is not set -# CONFIG_XFS_RT is not set -# CONFIG_XFS_TRACE is not set -# CONFIG_XFS_DEBUG is not set - -# -# Network File Systems -# -# CONFIG_CODA_FS is not set -# CONFIG_INTERMEZZO_FS is not set -CONFIG_NFS_FS=m -CONFIG_NFS_V3=y -# CONFIG_NFS_DIRECTIO is not set -# CONFIG_ROOT_NFS is not set -# CONFIG_NFSD is not set -# CONFIG_NFSD_V3 is not set -# CONFIG_NFSD_TCP is not set -CONFIG_SUNRPC=m -CONFIG_LOCKD=m -CONFIG_LOCKD_V4=y -# CONFIG_SMB_FS is not set -# CONFIG_NCP_FS is not set -# CONFIG_NCPFS_PACKET_SIGNING is not set -# CONFIG_NCPFS_IOCTL_LOCKING is not set -# CONFIG_NCPFS_STRONG is not set -# CONFIG_NCPFS_NFS_NS is not set -# CONFIG_NCPFS_OS2_NS is not set -# CONFIG_NCPFS_SMALLDOS is not set -# CONFIG_NCPFS_NLS is not set -# CONFIG_NCPFS_EXTRAS is not set -# CONFIG_ZISOFS_FS is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_BSD_DISKLABEL is not set -# CONFIG_MINIX_SUBPARTITION is not set -# CONFIG_SOLARIS_X86_PARTITION is not set -# CONFIG_UNIXWARE_DISKLABEL is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -# CONFIG_EFI_PARTITION is not set -# CONFIG_SMB_NLS is not set -CONFIG_NLS=y - -# -# Native Language Support -# -CONFIG_NLS_DEFAULT="iso8859-1" -# CONFIG_NLS_CODEPAGE_437 is not set -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -# CONFIG_NLS_ISO8859_1 is not set -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_UTF8 is not set - -# -# Multimedia devices -# -# CONFIG_VIDEO_DEV is not set - -# -# Sound -# -# CONFIG_SOUND is not set - -# -# USB support -# -CONFIG_USB=m -# CONFIG_USB_DEBUG is not set - -# -# Miscellaneous USB options -# -CONFIG_USB_DEVICEFS=y -# CONFIG_USB_BANDWIDTH is not set - -# -# USB Host Controller Drivers -# -# CONFIG_USB_EHCI_HCD is not set -# CONFIG_USB_UHCI is not set -# CONFIG_USB_UHCI_ALT is not set -CONFIG_USB_OHCI=m - -# -# USB Device Class drivers -# -# CONFIG_USB_AUDIO is not set -# CONFIG_USB_EMI26 is not set -# CONFIG_USB_BLUETOOTH is not set -# CONFIG_USB_MIDI is not set -CONFIG_USB_STORAGE=m -# CONFIG_USB_STORAGE_DEBUG is not set -CONFIG_USB_STORAGE_DATAFAB=y -CONFIG_USB_STORAGE_FREECOM=y -# CONFIG_USB_STORAGE_ISD200 is not set -CONFIG_USB_STORAGE_DPCM=y -CONFIG_USB_STORAGE_HP8200e=y -CONFIG_USB_STORAGE_SDDR09=y -CONFIG_USB_STORAGE_SDDR55=y -CONFIG_USB_STORAGE_JUMPSHOT=y -# CONFIG_USB_ACM is not set -CONFIG_USB_PRINTER=m - -# -# USB Human Interface Devices (HID) -# -# CONFIG_USB_HID is not set - -# -# Input core support is needed for USB HID input layer or HIDBP support -# -# CONFIG_USB_HIDINPUT is not set -# CONFIG_USB_HIDDEV is not set -# CONFIG_USB_KBD is not set -# CONFIG_USB_MOUSE is not set -# CONFIG_USB_AIPTEK is not set -# CONFIG_USB_WACOM is not set -# CONFIG_USB_KBTAB is not set -# CONFIG_USB_POWERMATE is not set - -# -# USB Imaging devices -# -# CONFIG_USB_DC2XX is not set -# CONFIG_USB_MDC800 is not set -# CONFIG_USB_SCANNER is not set -# CONFIG_USB_MICROTEK is not set -# CONFIG_USB_HPUSBSCSI is not set - -# -# USB Multimedia devices -# - -# -# Video4Linux support is needed for USB Multimedia device support -# - -# -# USB Network adaptors -# -# CONFIG_USB_PEGASUS is not set -# CONFIG_USB_RTL8150 is not set -# CONFIG_USB_KAWETH is not set -# CONFIG_USB_CATC is not set -# CONFIG_USB_CDCETHER is not set -# CONFIG_USB_USBNET is not set - -# -# USB port drivers -# -# CONFIG_USB_USS720 is not set - -# -# USB Serial Converter support -# -# CONFIG_USB_SERIAL is not set - -# -# USB Miscellaneous drivers -# -# CONFIG_USB_RIO500 is not set -# CONFIG_USB_AUERSWALD is not set -# CONFIG_USB_TIGL is not set -# CONFIG_USB_BRLVGER is not set -# CONFIG_USB_LCD is not set - -# -# Support for USB gadgets -# -# CONFIG_USB_GADGET is not set - -# -# Bluetooth support -# -# CONFIG_BLUEZ is not set - -# -# Kernel hacking -# -CONFIG_CROSSCOMPILE=y -# CONFIG_RUNTIME_DEBUG is not set -# CONFIG_KGDB is not set -# CONFIG_GDB_CONSOLE is not set -# CONFIG_DEBUG_INFO is not set -# CONFIG_MAGIC_SYSRQ is not set -# CONFIG_MIPS_UNCACHED is not set -CONFIG_LOG_BUF_SHIFT=0 - -# -# Cryptographic options -# -# CONFIG_CRYPTO is not set - -# -# Library routines -# -# CONFIG_CRC32 is not set -CONFIG_ZLIB_INFLATE=y -CONFIG_ZLIB_DEFLATE=y diff --git a/openwrt/toolchain/kernel-headers/patches/include.patch b/openwrt/toolchain/kernel-headers/patches/include.patch deleted file mode 100644 index 1618bbdfd3..0000000000 --- a/openwrt/toolchain/kernel-headers/patches/include.patch +++ /dev/null @@ -1,17954 +0,0 @@ -diff -Nur linux-2.4.32/include/asm-alpha/param.h linux-2.4.32.patched/include/asm-alpha/param.h ---- linux-2.4.32/include/asm-alpha/param.h 2000-11-08 08:37:31.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-alpha/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -13,6 +13,9 @@ - # else - # define HZ 1200 - # endif -+#ifdef __KERNEL__ -+# define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 8192 -diff -Nur linux-2.4.32/include/asm-alpha/signal.h linux-2.4.32.patched/include/asm-alpha/signal.h ---- linux-2.4.32/include/asm-alpha/signal.h 1998-06-24 23:30:11.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-alpha/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -121,8 +121,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x40000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 1 /* for blocking signals */ - #define SIG_UNBLOCK 2 /* for unblocking signals */ - #define SIG_SETMASK 3 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-arm/signal.h linux-2.4.32.patched/include/asm-arm/signal.h ---- linux-2.4.32/include/asm-arm/signal.h 2003-08-25 13:44:43.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-arm/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -125,8 +125,15 @@ - #define SA_PROBE 0x80000000 - #define SA_SAMPLE_RANDOM 0x10000000 - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-cris/signal.h linux-2.4.32.patched/include/asm-cris/signal.h ---- linux-2.4.32/include/asm-cris/signal.h 2001-02-09 01:32:44.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-cris/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -120,8 +120,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-i386/byteorder.h linux-2.4.32.patched/include/asm-i386/byteorder.h ---- linux-2.4.32/include/asm-i386/byteorder.h 2003-06-13 16:51:38.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-i386/byteorder.h 2006-03-13 18:55:55.000000000 +0100 -@@ -2,6 +2,7 @@ - #define _I386_BYTEORDER_H - - #include <asm/types.h> -+#include <linux/compiler.h> - - #ifdef __GNUC__ - -@@ -10,7 +11,7 @@ - #include <linux/config.h> - #endif - --static __inline__ __const__ __u32 ___arch__swab32(__u32 x) -+static __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 x) - { - #ifdef CONFIG_X86_BSWAP - __asm__("bswap %0" : "=r" (x) : "0" (x)); -@@ -26,7 +27,7 @@ - - /* gcc should generate this for open coded C now too. May be worth switching to - it because inline assembly cannot be scheduled. -AK */ --static __inline__ __const__ __u16 ___arch__swab16(__u16 x) -+static __inline__ __attribute_const__ __u16 ___arch__swab16(__u16 x) - { - __asm__("xchgb %b0,%h0" /* swap bytes */ - : "=q" (x) -diff -Nur linux-2.4.32/include/asm-i386/param.h linux-2.4.32.patched/include/asm-i386/param.h ---- linux-2.4.32/include/asm-i386/param.h 2000-10-27 20:04:43.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-i386/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -3,6 +3,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 4096 -diff -Nur linux-2.4.32/include/asm-i386/processor.h linux-2.4.32.patched/include/asm-i386/processor.h ---- linux-2.4.32/include/asm-i386/processor.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-i386/processor.h 2006-03-13 18:55:55.000000000 +0100 -@@ -72,7 +72,6 @@ - */ - - extern struct cpuinfo_x86 boot_cpu_data; --extern struct tss_struct init_tss[NR_CPUS]; - - #ifdef CONFIG_SMP - extern struct cpuinfo_x86 cpu_data[]; -@@ -357,6 +356,8 @@ - unsigned long __cacheline_filler[5]; - }; - -+extern struct tss_struct init_tss[NR_CPUS]; -+ - struct thread_struct { - unsigned long esp0; - unsigned long eip; -diff -Nur linux-2.4.32/include/asm-i386/signal.h linux-2.4.32.patched/include/asm-i386/signal.h ---- linux-2.4.32/include/asm-i386/signal.h 2001-11-22 20:46:18.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-i386/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -119,8 +119,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-i386/string.h linux-2.4.32.patched/include/asm-i386/string.h ---- linux-2.4.32/include/asm-i386/string.h 2001-11-22 20:46:18.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-i386/string.h 2006-03-13 18:55:55.000000000 +0100 -@@ -337,7 +337,7 @@ - #define struct_cpy(x,y) \ - ({ \ - if (sizeof(*(x)) != sizeof(*(y))) \ -- __struct_cpy_bug; \ -+ __struct_cpy_bug(); \ - memcpy(x, y, sizeof(*(x))); \ - }) - -diff -Nur linux-2.4.32/include/asm-ia64/param.h linux-2.4.32.patched/include/asm-ia64/param.h ---- linux-2.4.32/include/asm-ia64/param.h 2004-04-14 15:05:40.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ia64/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -7,9 +7,15 @@ - * Based on <asm-i386/param.h>. - * - * Modified 1998, 1999, 2002-2003 -- * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co -+ * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co - */ - -+#include <linux/config.h> -+ -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif -+ - #define EXEC_PAGESIZE 65536 - - #ifndef NGROUPS -diff -Nur linux-2.4.32/include/asm-ia64/signal.h linux-2.4.32.patched/include/asm-ia64/signal.h ---- linux-2.4.32/include/asm-ia64/signal.h 2004-04-14 15:05:40.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ia64/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -117,6 +117,12 @@ - #define SA_SHIRQ 0x04000000 - #define SA_PERCPU_IRQ 0x02000000 - -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 -+#endif -+ - #endif /* __KERNEL__ */ - - #define SIG_BLOCK 0 /* for blocking signals */ -diff -Nur linux-2.4.32/include/asm-m68k/param.h linux-2.4.32.patched/include/asm-m68k/param.h ---- linux-2.4.32/include/asm-m68k/param.h 2001-01-04 22:00:55.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-m68k/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -3,6 +3,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 8192 -diff -Nur linux-2.4.32/include/asm-m68k/setup.h linux-2.4.32.patched/include/asm-m68k/setup.h ---- linux-2.4.32/include/asm-m68k/setup.h 2000-01-26 21:44:21.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-m68k/setup.h 2006-03-13 18:55:55.000000000 +0100 -@@ -361,12 +361,13 @@ - #ifndef __ASSEMBLY__ - extern int m68k_num_memory; /* # of memory blocks found (and used) */ - extern int m68k_realnum_memory; /* real # of memory blocks found */ --extern struct mem_info m68k_memory[NUM_MEMINFO];/* memory description */ - - struct mem_info { - unsigned long addr; /* physical address of memory chunk */ - unsigned long size; /* length of memory chunk (in bytes) */ - }; -+ -+extern struct mem_info m68k_memory[NUM_MEMINFO];/* memory description */ - #endif - - #endif /* __KERNEL__ */ -diff -Nur linux-2.4.32/include/asm-m68k/signal.h linux-2.4.32.patched/include/asm-m68k/signal.h ---- linux-2.4.32/include/asm-m68k/signal.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-m68k/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -116,8 +116,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-mips/au1000_gpio.h linux-2.4.32.patched/include/asm-mips/au1000_gpio.h ---- linux-2.4.32/include/asm-mips/au1000_gpio.h 2002-11-29 00:53:15.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1000_gpio.h 2006-03-13 18:55:54.000000000 +0100 -@@ -30,6 +30,13 @@ - * 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -+/* -+ * Revision history -+ * 01/31/02 0.01 Initial release. Steve Longerbeam, MontaVista -+ * 10/12/03 0.1 Added Au1100/Au1500, GPIO2, and bit operations. K.C. Nishio, AMD -+ * 08/05/04 0.11 Added Au1550 and Au1200. K.C. Nishio -+ */ -+ - #ifndef __AU1000_GPIO_H - #define __AU1000_GPIO_H - -@@ -44,13 +51,94 @@ - #define AU1000GPIO_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 4, int) - #define AU1000GPIO_AVAIL_MASK _IOR (AU1000GPIO_IOC_MAGIC, 5, int) - -+// bit operations -+#define AU1000GPIO_BIT_READ _IOW (AU1000GPIO_IOC_MAGIC, 6, int) -+#define AU1000GPIO_BIT_SET _IOW (AU1000GPIO_IOC_MAGIC, 7, int) -+#define AU1000GPIO_BIT_CLEAR _IOW (AU1000GPIO_IOC_MAGIC, 8, int) -+#define AU1000GPIO_BIT_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 9, int) -+#define AU1000GPIO_BIT_INIT _IOW (AU1000GPIO_IOC_MAGIC, 10, int) -+#define AU1000GPIO_BIT_TERM _IOW (AU1000GPIO_IOC_MAGIC, 11, int) -+ -+/* set this major numer same as the CRIS GPIO driver */ -+#define AU1X00_GPIO_MAJOR (120) -+ -+#define ENABLED_ZERO (0) -+#define ENABLED_ONE (1) -+#define ENABLED_10 (0x2) -+#define ENABLED_11 (0x3) -+#define ENABLED_111 (0x7) -+#define NOT_AVAIL (-1) -+#define AU1X00_MAX_PRIMARY_GPIO (32) -+ -+#define AU1000_GPIO_MINOR_MAX AU1X00_MAX_PRIMARY_GPIO -+/* Au1100, 1500, 1550 and 1200 have the secondary GPIO block */ -+#define AU1XX0_GPIO_MINOR_MAX (48) -+ -+#define AU1X00_GPIO_NAME "gpio" -+ -+/* GPIO pins which are not multiplexed */ -+#if defined(CONFIG_SOC_AU1000) -+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0)) -+ #define NATIVE_GPIO2PIN (0) -+#elif defined(CONFIG_SOC_AU1100) -+ #define NATIVE_GPIOPIN ((1 << 23) | (1 << 22) | (1 << 21) | (1 << 20) | (1 << 19) | (1 << 18) | \ -+ (1 << 17) | (1 << 16) | (1 << 7) | (1 << 1) | (1 << 0)) -+ #define NATIVE_GPIO2PIN (0) -+#elif defined(CONFIG_SOC_AU1500) -+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0)) -+ /* exclude the PCI reset output signal: GPIO[200], DMA_REQ2 and DMA_REQ3 */ -+ #define NATIVE_GPIO2PIN (0xfffe & ~((1 << 9) | (1 << 8))) -+#elif defined(CONFIG_SOC_AU1550) -+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 6) | (1 << 1) | (1 << 0)) -+ /* please refere Au1550 Data Book, chapter 15 */ -+ #define NATIVE_GPIO2PIN (1 << 5) -+#elif defined(CONFIG_SOC_AU1200) -+ #define NATIVE_GPIOPIN ((1 << 7) | (1 << 5)) -+ #define NATIVE_GPIO2PIN (0) -+#endif -+ -+/* minor as u32 */ -+#define MINOR_TO_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? minor : (minor - AU1X00_MAX_PRIMARY_GPIO)) -+#define IS_PRIMARY_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? 1 : 0) -+ -+/* -+ * pin to minor mapping. -+ * GPIO0-GPIO31, minor=0-31. -+ * GPIO200-GPIO215, minor=32-47. -+ */ -+typedef struct _au1x00_gpio_bit_ctl { -+ int direction; // The direction of this GPIO pin. 0: IN, 1: OUT. -+ int data; // Pin output when itized (0/1), or at the term. 0/1/-1 (tristate). -+} au1x00_gpio_bit_ctl; -+ -+typedef struct _au1x00_gpio_driver { -+ const char *driver_name; -+ const char *name; -+ int name_base; /* offset of printed name */ -+ short major; /* major device number */ -+ short minor_start; /* start of minor device number*/ -+ short num; /* number of devices */ -+} au1x00_gpio_driver; -+ - #ifdef __KERNEL__ --extern u32 get_au1000_avail_gpio_mask(void); --extern int au1000gpio_tristate(u32 data); --extern int au1000gpio_in(u32 *data); --extern int au1000gpio_set(u32 data); --extern int au1000gpio_clear(u32 data); --extern int au1000gpio_out(u32 data); -+extern u32 get_au1000_avail_gpio_mask(u32 *avail_gpio2); -+extern int au1000gpio_tristate(u32 minor, u32 data); -+extern int au1000gpio_in(u32 minor, u32 *data); -+extern int au1000gpio_set(u32 minor, u32 data); -+extern int au1000gpio_clear(u32 minor, u32 data); -+extern int au1000gpio_out(u32 minor, u32 data); -+extern int au1000gpio_bit_read(u32 minor, u32 *read_data); -+extern int au1000gpio_bit_set(u32 minor); -+extern int au1000gpio_bit_clear(u32 minor); -+extern int au1000gpio_bit_tristate(u32 minor); -+extern int check_minor_to_gpio(u32 minor); -+extern int au1000gpio_bit_init(u32 minor, au1x00_gpio_bit_ctl *bit_opt); -+extern int au1000gpio_bit_term(u32 minor, au1x00_gpio_bit_ctl *bit_opt); -+ -+extern void gpio_register_devfs (au1x00_gpio_driver *driver, unsigned int flags, unsigned minor); -+extern void gpio_unregister_devfs (au1x00_gpio_driver *driver, unsigned minor); -+extern int gpio_register_driver(au1x00_gpio_driver *driver); -+extern int gpio_unregister_driver(au1x00_gpio_driver *driver); - #endif - - #endif -diff -Nur linux-2.4.32/include/asm-mips/au1000.h linux-2.4.32.patched/include/asm-mips/au1000.h ---- linux-2.4.32/include/asm-mips/au1000.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1000.h 2006-03-13 18:55:54.000000000 +0100 -@@ -160,28 +160,356 @@ - #define ALLINTS (IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3 | IE_IRQ4 | IE_IRQ5) - #endif - --/* SDRAM Controller */ -+/* -+ * SDRAM Register Offsets -+ */ - #if defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1500) || defined(CONFIG_SOC_AU1100) --#define MEM_SDMODE0 0xB4000000 --#define MEM_SDMODE1 0xB4000004 --#define MEM_SDMODE2 0xB4000008 -- --#define MEM_SDADDR0 0xB400000C --#define MEM_SDADDR1 0xB4000010 --#define MEM_SDADDR2 0xB4000014 -- --#define MEM_SDREFCFG 0xB4000018 --#define MEM_SDPRECMD 0xB400001C --#define MEM_SDAUTOREF 0xB4000020 -- --#define MEM_SDWRMD0 0xB4000024 --#define MEM_SDWRMD1 0xB4000028 --#define MEM_SDWRMD2 0xB400002C -+#define MEM_SDMODE0 (0x0000) -+#define MEM_SDMODE1 (0x0004) -+#define MEM_SDMODE2 (0x0008) -+#define MEM_SDADDR0 (0x000C) -+#define MEM_SDADDR1 (0x0010) -+#define MEM_SDADDR2 (0x0014) -+#define MEM_SDREFCFG (0x0018) -+#define MEM_SDPRECMD (0x001C) -+#define MEM_SDAUTOREF (0x0020) -+#define MEM_SDWRMD0 (0x0024) -+#define MEM_SDWRMD1 (0x0028) -+#define MEM_SDWRMD2 (0x002C) -+#define MEM_SDSLEEP (0x0030) -+#define MEM_SDSMCKE (0x0034) -+ -+#ifndef ASSEMBLER -+/*typedef volatile struct -+{ -+ uint32 sdmode0; -+ uint32 sdmode1; -+ uint32 sdmode2; -+ uint32 sdaddr0; -+ uint32 sdaddr1; -+ uint32 sdaddr2; -+ uint32 sdrefcfg; -+ uint32 sdautoref; -+ uint32 sdwrmd0; -+ uint32 sdwrmd1; -+ uint32 sdwrmd2; -+ uint32 sdsleep; -+ uint32 sdsmcke; -+ -+} AU1X00_SDRAM;*/ -+#endif -+ -+/* -+ * MEM_SDMODE register content definitions -+ */ -+#define MEM_SDMODE_F (1<<22) -+#define MEM_SDMODE_SR (1<<21) -+#define MEM_SDMODE_BS (1<<20) -+#define MEM_SDMODE_RS (3<<18) -+#define MEM_SDMODE_CS (7<<15) -+#define MEM_SDMODE_TRAS (15<<11) -+#define MEM_SDMODE_TMRD (3<<9) -+#define MEM_SDMODE_TWR (3<<7) -+#define MEM_SDMODE_TRP (3<<5) -+#define MEM_SDMODE_TRCD (3<<3) -+#define MEM_SDMODE_TCL (7<<0) -+ -+#define MEM_SDMODE_BS_2Bank (0<<20) -+#define MEM_SDMODE_BS_4Bank (1<<20) -+#define MEM_SDMODE_RS_11Row (0<<18) -+#define MEM_SDMODE_RS_12Row (1<<18) -+#define MEM_SDMODE_RS_13Row (2<<18) -+#define MEM_SDMODE_RS_N(N) ((N)<<18) -+#define MEM_SDMODE_CS_7Col (0<<15) -+#define MEM_SDMODE_CS_8Col (1<<15) -+#define MEM_SDMODE_CS_9Col (2<<15) -+#define MEM_SDMODE_CS_10Col (3<<15) -+#define MEM_SDMODE_CS_11Col (4<<15) -+#define MEM_SDMODE_CS_N(N) ((N)<<15) -+#define MEM_SDMODE_TRAS_N(N) ((N)<<11) -+#define MEM_SDMODE_TMRD_N(N) ((N)<<9) -+#define MEM_SDMODE_TWR_N(N) ((N)<<7) -+#define MEM_SDMODE_TRP_N(N) ((N)<<5) -+#define MEM_SDMODE_TRCD_N(N) ((N)<<3) -+#define MEM_SDMODE_TCL_N(N) ((N)<<0) -+ -+/* -+ * MEM_SDADDR register contents definitions -+ */ -+#define MEM_SDADDR_E (1<<20) -+#define MEM_SDADDR_CSBA (0x03FF<<10) -+#define MEM_SDADDR_CSMASK (0x03FF<<0) -+#define MEM_SDADDR_CSBA_N(N) ((N)&(0x03FF<<22)>>12) -+#define MEM_SDADDR_CSMASK_N(N) ((N)&(0x03FF<<22)>>22) -+ -+/* -+ * MEM_SDREFCFG register content definitions -+ */ -+#define MEM_SDREFCFG_TRC (15<<28) -+#define MEM_SDREFCFG_TRPM (3<<26) -+#define MEM_SDREFCFG_E (1<<25) -+#define MEM_SDREFCFG_RE (0x1ffffff<<0) -+#define MEM_SDREFCFG_TRC_N(N) ((N)<<MEM_SDREFCFG_TRC) -+#define MEM_SDREFCFG_TRPM_N(N) ((N)<<MEM_SDREFCFG_TRPM) -+#define MEM_SDREFCFG_REF_N(N) (N) -+#endif -+ -+/***********************************************************************/ -+ -+/* -+ * Au1550 SDRAM Register Offsets -+ */ -+ -+/***********************************************************************/ -+ -+#if defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) -+#define MEM_SDMODE0 (0x0800) -+#define MEM_SDMODE1 (0x0808) -+#define MEM_SDMODE2 (0x0810) -+#define MEM_SDADDR0 (0x0820) -+#define MEM_SDADDR1 (0x0828) -+#define MEM_SDADDR2 (0x0830) -+#define MEM_SDCONFIGA (0x0840) -+#define MEM_SDCONFIGB (0x0848) -+#define MEM_SDSTAT (0x0850) -+#define MEM_SDERRADDR (0x0858) -+#define MEM_SDSTRIDE0 (0x0860) -+#define MEM_SDSTRIDE1 (0x0868) -+#define MEM_SDSTRIDE2 (0x0870) -+#define MEM_SDWRMD0 (0x0880) -+#define MEM_SDWRMD1 (0x0888) -+#define MEM_SDWRMD2 (0x0890) -+#define MEM_SDPRECMD (0x08C0) -+#define MEM_SDAUTOREF (0x08C8) -+#define MEM_SDSREF (0x08D0) -+#define MEM_SDSLEEP MEM_SDSREF -+ -+#ifndef ASSEMBLER -+/*typedef volatile struct -+{ -+ uint32 sdmode0; -+ uint32 reserved0; -+ uint32 sdmode1; -+ uint32 reserved1; -+ uint32 sdmode2; -+ uint32 reserved2[3]; -+ uint32 sdaddr0; -+ uint32 reserved3; -+ uint32 sdaddr1; -+ uint32 reserved4; -+ uint32 sdaddr2; -+ uint32 reserved5[3]; -+ uint32 sdconfiga; -+ uint32 reserved6; -+ uint32 sdconfigb; -+ uint32 reserved7; -+ uint32 sdstat; -+ uint32 reserved8; -+ uint32 sderraddr; -+ uint32 reserved9; -+ uint32 sdstride0; -+ uint32 reserved10; -+ uint32 sdstride1; -+ uint32 reserved11; -+ uint32 sdstride2; -+ uint32 reserved12[3]; -+ uint32 sdwrmd0; -+ uint32 reserved13; -+ uint32 sdwrmd1; -+ uint32 reserved14; -+ uint32 sdwrmd2; -+ uint32 reserved15[11]; -+ uint32 sdprecmd; -+ uint32 reserved16; -+ uint32 sdautoref; -+ uint32 reserved17; -+ uint32 sdsref; -+ -+} AU1550_SDRAM;*/ -+#endif -+#endif -+ -+/* -+ * Physical base addresses for integrated peripherals -+ */ -+ -+#ifdef CONFIG_SOC_AU1000 -+#define MEM_PHYS_ADDR 0x14000000 -+#define STATIC_MEM_PHYS_ADDR 0x14001000 -+#define DMA0_PHYS_ADDR 0x14002000 -+#define DMA1_PHYS_ADDR 0x14002100 -+#define DMA2_PHYS_ADDR 0x14002200 -+#define DMA3_PHYS_ADDR 0x14002300 -+#define DMA4_PHYS_ADDR 0x14002400 -+#define DMA5_PHYS_ADDR 0x14002500 -+#define DMA6_PHYS_ADDR 0x14002600 -+#define DMA7_PHYS_ADDR 0x14002700 -+#define IC0_PHYS_ADDR 0x10400000 -+#define IC1_PHYS_ADDR 0x11800000 -+#define AC97_PHYS_ADDR 0x10000000 -+#define USBH_PHYS_ADDR 0x10100000 -+#define USBD_PHYS_ADDR 0x10200000 -+#define IRDA_PHYS_ADDR 0x10300000 -+#define MAC0_PHYS_ADDR 0x10500000 -+#define MAC1_PHYS_ADDR 0x10510000 -+#define MACEN_PHYS_ADDR 0x10520000 -+#define MACDMA0_PHYS_ADDR 0x14004000 -+#define MACDMA1_PHYS_ADDR 0x14004200 -+#define I2S_PHYS_ADDR 0x11000000 -+#define UART0_PHYS_ADDR 0x11100000 -+#define UART1_PHYS_ADDR 0x11200000 -+#define UART2_PHYS_ADDR 0x11300000 -+#define UART3_PHYS_ADDR 0x11400000 -+#define SSI0_PHYS_ADDR 0x11600000 -+#define SSI1_PHYS_ADDR 0x11680000 -+#define SYS_PHYS_ADDR 0x11900000 -+#define PCMCIA_IO_PHYS_ADDR 0xF00000000 -+#define PCMCIA_ATTR_PHYS_ADDR 0xF40000000 -+#define PCMCIA_MEM_PHYS_ADDR 0xF80000000 -+#endif -+ -+/********************************************************************/ - --#define MEM_SDSLEEP 0xB4000030 --#define MEM_SDSMCKE 0xB4000034 -+#ifdef CONFIG_SOC_AU1500 -+#define MEM_PHYS_ADDR 0x14000000 -+#define STATIC_MEM_PHYS_ADDR 0x14001000 -+#define DMA0_PHYS_ADDR 0x14002000 -+#define DMA1_PHYS_ADDR 0x14002100 -+#define DMA2_PHYS_ADDR 0x14002200 -+#define DMA3_PHYS_ADDR 0x14002300 -+#define DMA4_PHYS_ADDR 0x14002400 -+#define DMA5_PHYS_ADDR 0x14002500 -+#define DMA6_PHYS_ADDR 0x14002600 -+#define DMA7_PHYS_ADDR 0x14002700 -+#define IC0_PHYS_ADDR 0x10400000 -+#define IC1_PHYS_ADDR 0x11800000 -+#define AC97_PHYS_ADDR 0x10000000 -+#define USBH_PHYS_ADDR 0x10100000 -+#define USBD_PHYS_ADDR 0x10200000 -+#define PCI_PHYS_ADDR 0x14005000 -+#define MAC0_PHYS_ADDR 0x11500000 -+#define MAC1_PHYS_ADDR 0x11510000 -+#define MACEN_PHYS_ADDR 0x11520000 -+#define MACDMA0_PHYS_ADDR 0x14004000 -+#define MACDMA1_PHYS_ADDR 0x14004200 -+#define I2S_PHYS_ADDR 0x11000000 -+#define UART0_PHYS_ADDR 0x11100000 -+#define UART3_PHYS_ADDR 0x11400000 -+#define GPIO2_PHYS_ADDR 0x11700000 -+#define SYS_PHYS_ADDR 0x11900000 -+#define PCI_MEM_PHYS_ADDR 0x400000000 -+#define PCI_IO_PHYS_ADDR 0x500000000 -+#define PCI_CONFIG0_PHYS_ADDR 0x600000000 -+#define PCI_CONFIG1_PHYS_ADDR 0x680000000 -+#define PCMCIA_IO_PHYS_ADDR 0xF00000000 -+#define PCMCIA_ATTR_PHYS_ADDR 0xF40000000 -+#define PCMCIA_MEM_PHYS_ADDR 0xF80000000 - #endif - -+/********************************************************************/ -+ -+#ifdef CONFIG_SOC_AU1100 -+#define MEM_PHYS_ADDR 0x14000000 -+#define STATIC_MEM_PHYS_ADDR 0x14001000 -+#define DMA0_PHYS_ADDR 0x14002000 -+#define DMA1_PHYS_ADDR 0x14002100 -+#define DMA2_PHYS_ADDR 0x14002200 -+#define DMA3_PHYS_ADDR 0x14002300 -+#define DMA4_PHYS_ADDR 0x14002400 -+#define DMA5_PHYS_ADDR 0x14002500 -+#define DMA6_PHYS_ADDR 0x14002600 -+#define DMA7_PHYS_ADDR 0x14002700 -+#define IC0_PHYS_ADDR 0x10400000 -+#define SD0_PHYS_ADDR 0x10600000 -+#define SD1_PHYS_ADDR 0x10680000 -+#define IC1_PHYS_ADDR 0x11800000 -+#define AC97_PHYS_ADDR 0x10000000 -+#define USBH_PHYS_ADDR 0x10100000 -+#define USBD_PHYS_ADDR 0x10200000 -+#define IRDA_PHYS_ADDR 0x10300000 -+#define MAC0_PHYS_ADDR 0x10500000 -+#define MACEN_PHYS_ADDR 0x10520000 -+#define MACDMA0_PHYS_ADDR 0x14004000 -+#define MACDMA1_PHYS_ADDR 0x14004200 -+#define I2S_PHYS_ADDR 0x11000000 -+#define UART0_PHYS_ADDR 0x11100000 -+#define UART1_PHYS_ADDR 0x11200000 -+#define UART3_PHYS_ADDR 0x11400000 -+#define SSI0_PHYS_ADDR 0x11600000 -+#define SSI1_PHYS_ADDR 0x11680000 -+#define GPIO2_PHYS_ADDR 0x11700000 -+#define SYS_PHYS_ADDR 0x11900000 -+#define LCD_PHYS_ADDR 0x15000000 -+#define PCMCIA_IO_PHYS_ADDR 0xF00000000 -+#define PCMCIA_ATTR_PHYS_ADDR 0xF40000000 -+#define PCMCIA_MEM_PHYS_ADDR 0xF80000000 -+#endif -+ -+/***********************************************************************/ -+ -+#ifdef CONFIG_SOC_AU1550 -+#define MEM_PHYS_ADDR 0x14000000 -+#define STATIC_MEM_PHYS_ADDR 0x14001000 -+#define IC0_PHYS_ADDR 0x10400000 -+#define IC1_PHYS_ADDR 0x11800000 -+#define USBH_PHYS_ADDR 0x14020000 -+#define USBD_PHYS_ADDR 0x10200000 -+#define PCI_PHYS_ADDR 0x14005000 -+#define MAC0_PHYS_ADDR 0x10500000 -+#define MAC1_PHYS_ADDR 0x10510000 -+#define MACEN_PHYS_ADDR 0x10520000 -+#define MACDMA0_PHYS_ADDR 0x14004000 -+#define MACDMA1_PHYS_ADDR 0x14004200 -+#define UART0_PHYS_ADDR 0x11100000 -+#define UART1_PHYS_ADDR 0x11200000 -+#define UART3_PHYS_ADDR 0x11400000 -+#define GPIO2_PHYS_ADDR 0x11700000 -+#define SYS_PHYS_ADDR 0x11900000 -+#define DDMA_PHYS_ADDR 0x14002000 -+#define PE_PHYS_ADDR 0x14008000 -+#define PSC0_PHYS_ADDR 0x11A00000 -+#define PSC1_PHYS_ADDR 0x11B00000 -+#define PSC2_PHYS_ADDR 0x10A00000 -+#define PSC3_PHYS_ADDR 0x10B00000 -+#define PCI_MEM_PHYS_ADDR 0x400000000 -+#define PCI_IO_PHYS_ADDR 0x500000000 -+#define PCI_CONFIG0_PHYS_ADDR 0x600000000 -+#define PCI_CONFIG1_PHYS_ADDR 0x680000000 -+#define PCMCIA_IO_PHYS_ADDR 0xF00000000 -+#define PCMCIA_ATTR_PHYS_ADDR 0xF40000000 -+#define PCMCIA_MEM_PHYS_ADDR 0xF80000000 -+#endif -+ -+/***********************************************************************/ -+ -+#ifdef CONFIG_SOC_AU1200 -+#define MEM_PHYS_ADDR 0x14000000 -+#define STATIC_MEM_PHYS_ADDR 0x14001000 -+#define AES_PHYS_ADDR 0x10300000 -+#define CIM_PHYS_ADDR 0x14004000 -+#define IC0_PHYS_ADDR 0x10400000 -+#define IC1_PHYS_ADDR 0x11800000 -+#define USBM_PHYS_ADDR 0x14020000 -+#define USBH_PHYS_ADDR 0x14020100 -+#define UART0_PHYS_ADDR 0x11100000 -+#define UART1_PHYS_ADDR 0x11200000 -+#define GPIO2_PHYS_ADDR 0x11700000 -+#define SYS_PHYS_ADDR 0x11900000 -+#define DDMA_PHYS_ADDR 0x14002000 -+#define PSC0_PHYS_ADDR 0x11A00000 -+#define PSC1_PHYS_ADDR 0x11B00000 -+#define PCMCIA_IO_PHYS_ADDR 0xF00000000 -+#define PCMCIA_ATTR_PHYS_ADDR 0xF40000000 -+#define PCMCIA_MEM_PHYS_ADDR 0xF80000000 -+#define SD0_PHYS_ADDR 0x10600000 -+#define SD1_PHYS_ADDR 0x10680000 -+#define LCD_PHYS_ADDR 0x15000000 -+#define SWCNT_PHYS_ADDR 0x1110010C -+#define MAEFE_PHYS_ADDR 0x14012000 -+#define MAEBE_PHYS_ADDR 0x14010000 -+#endif -+ -+ - /* Static Bus Controller */ - #define MEM_STCFG0 0xB4001000 - #define MEM_STTIME0 0xB4001004 -@@ -367,7 +695,7 @@ - #define AU1000_MAC0_ENABLE 0xB0520000 - #define AU1000_MAC1_ENABLE 0xB0520004 - #define NUM_ETH_INTERFACES 2 --#endif // CONFIG_SOC_AU1000 -+#endif /* CONFIG_SOC_AU1000 */ - - /* Au1500 */ - #ifdef CONFIG_SOC_AU1500 -@@ -438,7 +766,7 @@ - #define AU1500_MAC0_ENABLE 0xB1520000 - #define AU1500_MAC1_ENABLE 0xB1520004 - #define NUM_ETH_INTERFACES 2 --#endif // CONFIG_SOC_AU1500 -+#endif /* CONFIG_SOC_AU1500 */ - - /* Au1100 */ - #ifdef CONFIG_SOC_AU1100 -@@ -483,6 +811,22 @@ - #define AU1000_GPIO_13 45 - #define AU1000_GPIO_14 46 - #define AU1000_GPIO_15 47 -+#define AU1000_GPIO_16 48 -+#define AU1000_GPIO_17 49 -+#define AU1000_GPIO_18 50 -+#define AU1000_GPIO_19 51 -+#define AU1000_GPIO_20 52 -+#define AU1000_GPIO_21 53 -+#define AU1000_GPIO_22 54 -+#define AU1000_GPIO_23 55 -+#define AU1000_GPIO_24 56 -+#define AU1000_GPIO_25 57 -+#define AU1000_GPIO_26 58 -+#define AU1000_GPIO_27 59 -+#define AU1000_GPIO_28 60 -+#define AU1000_GPIO_29 61 -+#define AU1000_GPIO_30 62 -+#define AU1000_GPIO_31 63 - - #define UART0_ADDR 0xB1100000 - #define UART1_ADDR 0xB1200000 -@@ -494,7 +838,7 @@ - #define AU1100_ETH0_BASE 0xB0500000 - #define AU1100_MAC0_ENABLE 0xB0520000 - #define NUM_ETH_INTERFACES 1 --#endif // CONFIG_SOC_AU1100 -+#endif /* CONFIG_SOC_AU1100 */ - - #ifdef CONFIG_SOC_AU1550 - #define AU1550_UART0_INT 0 -@@ -511,14 +855,14 @@ - #define AU1550_PSC1_INT 11 - #define AU1550_PSC2_INT 12 - #define AU1550_PSC3_INT 13 --#define AU1550_TOY_INT 14 --#define AU1550_TOY_MATCH0_INT 15 --#define AU1550_TOY_MATCH1_INT 16 --#define AU1550_TOY_MATCH2_INT 17 --#define AU1550_RTC_INT 18 --#define AU1550_RTC_MATCH0_INT 19 --#define AU1550_RTC_MATCH1_INT 20 --#define AU1550_RTC_MATCH2_INT 21 -+#define AU1000_TOY_INT 14 -+#define AU1000_TOY_MATCH0_INT 15 -+#define AU1000_TOY_MATCH1_INT 16 -+#define AU1000_TOY_MATCH2_INT 17 -+#define AU1000_RTC_INT 18 -+#define AU1000_RTC_MATCH0_INT 19 -+#define AU1000_RTC_MATCH1_INT 20 -+#define AU1000_RTC_MATCH2_INT 21 - #define AU1550_NAND_INT 23 - #define AU1550_USB_DEV_REQ_INT 24 - #define AU1550_USB_DEV_SUS_INT 25 -@@ -573,7 +917,7 @@ - #define AU1550_MAC0_ENABLE 0xB0520000 - #define AU1550_MAC1_ENABLE 0xB0520004 - #define NUM_ETH_INTERFACES 2 --#endif // CONFIG_SOC_AU1550 -+#endif /* CONFIG_SOC_AU1550 */ - - #ifdef CONFIG_SOC_AU1200 - #define AU1200_UART0_INT 0 -@@ -590,14 +934,14 @@ - #define AU1200_PSC1_INT 11 - #define AU1200_AES_INT 12 - #define AU1200_CAMERA_INT 13 --#define AU1200_TOY_INT 14 --#define AU1200_TOY_MATCH0_INT 15 --#define AU1200_TOY_MATCH1_INT 16 --#define AU1200_TOY_MATCH2_INT 17 --#define AU1200_RTC_INT 18 --#define AU1200_RTC_MATCH0_INT 19 --#define AU1200_RTC_MATCH1_INT 20 --#define AU1200_RTC_MATCH2_INT 21 -+#define AU1000_TOY_INT 14 -+#define AU1000_TOY_MATCH0_INT 15 -+#define AU1000_TOY_MATCH1_INT 16 -+#define AU1000_TOY_MATCH2_INT 17 -+#define AU1000_RTC_INT 18 -+#define AU1000_RTC_MATCH0_INT 19 -+#define AU1000_RTC_MATCH1_INT 20 -+#define AU1000_RTC_MATCH2_INT 21 - #define AU1200_NAND_INT 23 - #define AU1200_GPIO_204 24 - #define AU1200_GPIO_205 25 -@@ -605,6 +949,7 @@ - #define AU1200_GPIO_207 27 - #define AU1200_GPIO_208_215 28 // Logical OR of 208:215 - #define AU1200_USB_INT 29 -+#define AU1000_USB_HOST_INT AU1200_USB_INT - #define AU1200_LCD_INT 30 - #define AU1200_MAE_BOTH_INT 31 - #define AU1000_GPIO_0 32 -@@ -643,21 +988,36 @@ - #define UART0_ADDR 0xB1100000 - #define UART1_ADDR 0xB1200000 - --#define USB_OHCI_BASE 0x14020000 // phys addr for ioremap --#define USB_HOST_CONFIG 0xB4027ffc -+#define USB_UOC_BASE 0x14020020 -+#define USB_UOC_LEN 0x20 -+#define USB_OHCI_BASE 0x14020100 -+#define USB_OHCI_LEN 0x100 -+#define USB_EHCI_BASE 0x14020200 -+#define USB_EHCI_LEN 0x100 -+#define USB_UDC_BASE 0x14022000 -+#define USB_UDC_LEN 0x2000 -+#define USB_MSR_BASE 0xB4020000 -+#define USB_MSR_MCFG 4 -+#define USBMSRMCFG_OMEMEN 0 -+#define USBMSRMCFG_OBMEN 1 -+#define USBMSRMCFG_EMEMEN 2 -+#define USBMSRMCFG_EBMEN 3 -+#define USBMSRMCFG_DMEMEN 4 -+#define USBMSRMCFG_DBMEN 5 -+#define USBMSRMCFG_GMEMEN 6 -+#define USBMSRMCFG_OHCCLKEN 16 -+#define USBMSRMCFG_EHCCLKEN 17 -+#define USBMSRMCFG_UDCCLKEN 18 -+#define USBMSRMCFG_PHYPLLEN 19 -+#define USBMSRMCFG_RDCOMB 30 -+#define USBMSRMCFG_PFEN 31 - --// these are here for prototyping on au1550 (do not exist on au1200) --#define AU1200_ETH0_BASE 0xB0500000 --#define AU1200_ETH1_BASE 0xB0510000 --#define AU1200_MAC0_ENABLE 0xB0520000 --#define AU1200_MAC1_ENABLE 0xB0520004 --#define NUM_ETH_INTERFACES 2 --#endif // CONFIG_SOC_AU1200 -+#endif /* CONFIG_SOC_AU1200 */ - - #define AU1000_LAST_INTC0_INT 31 -+#define AU1000_LAST_INTC1_INT 63 - #define AU1000_MAX_INTR 63 - -- - /* Programmable Counters 0 and 1 */ - #define SYS_BASE 0xB1900000 - #define SYS_COUNTER_CNTRL (SYS_BASE + 0x14) -@@ -728,6 +1088,8 @@ - #define I2S_CONTROL_D (1<<1) - #define I2S_CONTROL_CE (1<<0) - -+#ifndef CONFIG_SOC_AU1200 -+ - /* USB Host Controller */ - #define USB_OHCI_LEN 0x00100000 - -@@ -773,6 +1135,8 @@ - #define USBDEV_ENABLE (1<<1) - #define USBDEV_CE (1<<0) - -+#endif /* !CONFIG_SOC_AU1200 */ -+ - /* Ethernet Controllers */ - - /* 4 byte offsets from AU1000_ETH_BASE */ -@@ -1171,6 +1535,37 @@ - #define SYS_PF_PSC1_S1 (1 << 1) - #define SYS_PF_MUST_BE_SET ((1 << 5) | (1 << 2)) - -+/* Au1200 Only */ -+#ifdef CONFIG_SOC_AU1200 -+#define SYS_PINFUNC_DMA (1<<31) -+#define SYS_PINFUNC_S0A (1<<30) -+#define SYS_PINFUNC_S1A (1<<29) -+#define SYS_PINFUNC_LP0 (1<<28) -+#define SYS_PINFUNC_LP1 (1<<27) -+#define SYS_PINFUNC_LD16 (1<<26) -+#define SYS_PINFUNC_LD8 (1<<25) -+#define SYS_PINFUNC_LD1 (1<<24) -+#define SYS_PINFUNC_LD0 (1<<23) -+#define SYS_PINFUNC_P1A (3<<21) -+#define SYS_PINFUNC_P1B (1<<20) -+#define SYS_PINFUNC_FS3 (1<<19) -+#define SYS_PINFUNC_P0A (3<<17) -+#define SYS_PINFUNC_CS (1<<16) -+#define SYS_PINFUNC_CIM (1<<15) -+#define SYS_PINFUNC_P1C (1<<14) -+#define SYS_PINFUNC_U1T (1<<12) -+#define SYS_PINFUNC_U1R (1<<11) -+#define SYS_PINFUNC_EX1 (1<<10) -+#define SYS_PINFUNC_EX0 (1<<9) -+#define SYS_PINFUNC_U0R (1<<8) -+#define SYS_PINFUNC_MC (1<<7) -+#define SYS_PINFUNC_S0B (1<<6) -+#define SYS_PINFUNC_S0C (1<<5) -+#define SYS_PINFUNC_P0B (1<<4) -+#define SYS_PINFUNC_U0T (1<<3) -+#define SYS_PINFUNC_S1B (1<<2) -+#endif -+ - #define SYS_TRIOUTRD 0xB1900100 - #define SYS_TRIOUTCLR 0xB1900100 - #define SYS_OUTPUTRD 0xB1900108 -@@ -1298,7 +1693,6 @@ - #define SD1_XMIT_FIFO 0xB0680000 - #define SD1_RECV_FIFO 0xB0680004 - -- - #if defined (CONFIG_SOC_AU1500) || defined(CONFIG_SOC_AU1550) - /* Au1500 PCI Controller */ - #define Au1500_CFG_BASE 0xB4005000 // virtual, kseg0 addr -@@ -1388,9 +1782,60 @@ - - #endif - -+#ifndef _LANGUAGE_ASSEMBLY -+typedef volatile struct -+{ -+ /* 0x0000 */ u32 toytrim; -+ /* 0x0004 */ u32 toywrite; -+ /* 0x0008 */ u32 toymatch0; -+ /* 0x000C */ u32 toymatch1; -+ /* 0x0010 */ u32 toymatch2; -+ /* 0x0014 */ u32 cntrctrl; -+ /* 0x0018 */ u32 scratch0; -+ /* 0x001C */ u32 scratch1; -+ /* 0x0020 */ u32 freqctrl0; -+ /* 0x0024 */ u32 freqctrl1; -+ /* 0x0028 */ u32 clksrc; -+ /* 0x002C */ u32 pinfunc; -+ /* 0x0030 */ u32 reserved0; -+ /* 0x0034 */ u32 wakemsk; -+ /* 0x0038 */ u32 endian; -+ /* 0x003C */ u32 powerctrl; -+ /* 0x0040 */ u32 toyread; -+ /* 0x0044 */ u32 rtctrim; -+ /* 0x0048 */ u32 rtcwrite; -+ /* 0x004C */ u32 rtcmatch0; -+ /* 0x0050 */ u32 rtcmatch1; -+ /* 0x0054 */ u32 rtcmatch2; -+ /* 0x0058 */ u32 rtcread; -+ /* 0x005C */ u32 wakesrc; -+ /* 0x0060 */ u32 cpupll; -+ /* 0x0064 */ u32 auxpll; -+ /* 0x0068 */ u32 reserved1; -+ /* 0x006C */ u32 reserved2; -+ /* 0x0070 */ u32 reserved3; -+ /* 0x0074 */ u32 reserved4; -+ /* 0x0078 */ u32 slppwr; -+ /* 0x007C */ u32 sleep; -+ /* 0x0080 */ u32 reserved5[32]; -+ /* 0x0100 */ u32 trioutrd; -+#define trioutclr trioutrd -+ /* 0x0104 */ u32 reserved6; -+ /* 0x0108 */ u32 outputrd; -+#define outputset outputrd -+ /* 0x010C */ u32 outputclr; -+ /* 0x0110 */ u32 pinstaterd; -+#define pininputen pinstaterd -+ -+} AU1X00_SYS; -+ -+static AU1X00_SYS* const sys = (AU1X00_SYS *)SYS_BASE; -+ -+#endif - /* Processor information base on prid. - * Copied from PowerPC. - */ -+#ifndef _LANGUAGE_ASSEMBLY - struct cpu_spec { - /* CPU is matched via (PRID & prid_mask) == prid_value */ - unsigned int prid_mask; -@@ -1404,3 +1849,6 @@ - extern struct cpu_spec cpu_specs[]; - extern struct cpu_spec *cur_cpu_spec[]; - #endif -+ -+#endif -+ -diff -Nur linux-2.4.32/include/asm-mips/au1000_pcmcia.h linux-2.4.32.patched/include/asm-mips/au1000_pcmcia.h ---- linux-2.4.32/include/asm-mips/au1000_pcmcia.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1000_pcmcia.h 2006-03-13 18:55:54.000000000 +0100 -@@ -38,16 +38,41 @@ - #define AU1X_SOCK0_PHYS_MEM 0xF80000000 - - /* pcmcia socket 1 needs external glue logic so the memory map -- * differs from board to board. -+ * differs from board to board. the general rule is that -+ * static bus address bit 26 should be used to decode socket 0 -+ * from socket 1. alas, some boards dont follow this... -+ * These really belong in a board-specific header file... - */ --#if defined(CONFIG_MIPS_PB1000) || defined(CONFIG_MIPS_PB1100) || defined(CONFIG_MIPS_PB1500) --#define AU1X_SOCK1_IO 0xF08000000 --#define AU1X_SOCK1_PHYS_ATTR 0xF48000000 --#define AU1X_SOCK1_PHYS_MEM 0xF88000000 --#elif defined(CONFIG_MIPS_DB1000) || defined(CONFIG_MIPS_DB1100) || defined(CONFIG_MIPS_DB1500) || defined(CONFIG_MIPS_PB1550) || defined(CONFIG_MIPS_DB1550) --#define AU1X_SOCK1_IO 0xF04000000 --#define AU1X_SOCK1_PHYS_ATTR 0xF44000000 --#define AU1X_SOCK1_PHYS_MEM 0xF84000000 -+#ifdef CONFIG_MIPS_PB1000 -+#define SOCK1_DECODE (1<<27) -+#endif -+#ifdef CONFIG_MIPS_DB1000 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_DB1500 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_DB1100 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_DB1550 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_DB1200 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_PB1550 -+#define SOCK1_DECODE (1<<26) -+#endif -+#ifdef CONFIG_MIPS_PB1200 -+#define SOCK1_DECODE (1<<26) -+#endif -+ -+/* The board has a second PCMCIA socket */ -+#ifdef SOCK1_DECODE -+#define AU1X_SOCK1_IO (0xF00000000|SOCK1_DECODE) -+#define AU1X_SOCK1_PHYS_ATTR (0xF40000000|SOCK1_DECODE) -+#define AU1X_SOCK1_PHYS_MEM (0xF80000000|SOCK1_DECODE) - #endif - - struct pcmcia_state { -diff -Nur linux-2.4.32/include/asm-mips/au1100_mmc.h linux-2.4.32.patched/include/asm-mips/au1100_mmc.h ---- linux-2.4.32/include/asm-mips/au1100_mmc.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1100_mmc.h 2006-03-13 18:55:54.000000000 +0100 -@@ -39,16 +39,22 @@ - #define __ASM_AU1100_MMC_H - - --#define NUM_AU1100_MMC_CONTROLLERS 2 -- -- --#define AU1100_SD_IRQ 2 -- -+#if defined(CONFIG_SOC_AU1100) -+#define NUM_MMC_CONTROLLERS 2 -+#define AU1X_MMC_INT AU1100_SD_INT -+#endif -+ -+#if defined(CONFIG_SOC_AU1200) -+#define NUM_MMC_CONTROLLERS 2 -+#define AU1X_MMC_INT AU1200_SD_INT -+#endif - - #define SD0_BASE 0xB0600000 - #define SD1_BASE 0xB0680000 - - -+ -+ - /* - * Register offsets. - */ -@@ -201,5 +207,12 @@ - #define SD_CMD_RT_1B (0x00810000) - - -+/* support routines required on a platform-specific basis */ -+extern void mmc_card_inserted(int _n_, int *_res_); -+extern void mmc_card_writable(int _n_, int *_res_); -+extern void mmc_power_on(int _n_); -+extern void mmc_power_off(int _n_); -+ -+ - #endif /* __ASM_AU1100_MMC_H */ - -diff -Nur linux-2.4.32/include/asm-mips/au1xxx_dbdma.h linux-2.4.32.patched/include/asm-mips/au1xxx_dbdma.h ---- linux-2.4.32/include/asm-mips/au1xxx_dbdma.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1xxx_dbdma.h 2006-03-13 18:55:54.000000000 +0100 -@@ -43,7 +43,7 @@ - #define DDMA_GLOBAL_BASE 0xb4003000 - #define DDMA_CHANNEL_BASE 0xb4002000 - --typedef struct dbdma_global { -+typedef volatile struct dbdma_global { - u32 ddma_config; - u32 ddma_intstat; - u32 ddma_throttle; -@@ -60,7 +60,7 @@ - - /* The structure of a DMA Channel. - */ --typedef struct au1xxx_dma_channel { -+typedef volatile struct au1xxx_dma_channel { - u32 ddma_cfg; /* See below */ - u32 ddma_desptr; /* 32-byte aligned pointer to descriptor */ - u32 ddma_statptr; /* word aligned pointer to status word */ -@@ -96,7 +96,7 @@ - /* "Standard" DDMA Descriptor. - * Must be 32-byte aligned. - */ --typedef struct au1xxx_ddma_desc { -+typedef volatile struct au1xxx_ddma_desc { - u32 dscr_cmd0; /* See below */ - u32 dscr_cmd1; /* See below */ - u32 dscr_source0; /* source phys address */ -@@ -105,6 +105,12 @@ - u32 dscr_dest1; /* See below */ - u32 dscr_stat; /* completion status */ - u32 dscr_nxtptr; /* Next descriptor pointer (mostly) */ -+ /* First 32bytes are HW specific!!! -+ Lets have some SW data following.. make sure its 32bytes -+ */ -+ u32 sw_status; -+ u32 sw_context; -+ u32 sw_reserved[6]; - } au1x_ddma_desc_t; - - #define DSCR_CMD0_V (1 << 31) /* Descriptor valid */ -@@ -123,6 +129,8 @@ - #define DSCR_CMD0_CV (0x1 << 2) /* Clear Valid when done */ - #define DSCR_CMD0_ST_MASK (0x3 << 0) /* Status instruction */ - -+#define SW_STATUS_INUSE (1<<0) -+ - /* Command 0 device IDs. - */ - #ifdef CONFIG_SOC_AU1550 -@@ -169,8 +177,8 @@ - #define DSCR_CMD0_SDMS_RX0 9 - #define DSCR_CMD0_SDMS_TX1 10 - #define DSCR_CMD0_SDMS_RX1 11 --#define DSCR_CMD0_AES_TX 12 --#define DSCR_CMD0_AES_RX 13 -+#define DSCR_CMD0_AES_TX 13 -+#define DSCR_CMD0_AES_RX 12 - #define DSCR_CMD0_PSC0_TX 14 - #define DSCR_CMD0_PSC0_RX 15 - #define DSCR_CMD0_PSC1_TX 16 -@@ -189,6 +197,10 @@ - #define DSCR_CMD0_THROTTLE 30 - #define DSCR_CMD0_ALWAYS 31 - #define DSCR_NDEV_IDS 32 -+/* THis macro is used to find/create custom device types */ -+#define DSCR_DEV2CUSTOM_ID(x,d) (((((x)&0xFFFF)<<8)|0x32000000)|((d)&0xFF)) -+#define DSCR_CUSTOM2DEV_ID(x) ((x)&0xFF) -+ - - #define DSCR_CMD0_SID(x) (((x) & 0x1f) << 25) - #define DSCR_CMD0_DID(x) (((x) & 0x1f) << 20) -@@ -277,6 +289,43 @@ - */ - #define NUM_DBDMA_CHANS 16 - -+/* -+ * Ddma API definitions -+ * FIXME: may not fit to this header file -+ */ -+typedef struct dbdma_device_table { -+ u32 dev_id; -+ u32 dev_flags; -+ u32 dev_tsize; -+ u32 dev_devwidth; -+ u32 dev_physaddr; /* If FIFO */ -+ u32 dev_intlevel; -+ u32 dev_intpolarity; -+} dbdev_tab_t; -+ -+ -+typedef struct dbdma_chan_config { -+ spinlock_t lock; -+ -+ u32 chan_flags; -+ u32 chan_index; -+ dbdev_tab_t *chan_src; -+ dbdev_tab_t *chan_dest; -+ au1x_dma_chan_t *chan_ptr; -+ au1x_ddma_desc_t *chan_desc_base; -+ au1x_ddma_desc_t *get_ptr, *put_ptr, *cur_ptr; -+ void *chan_callparam; -+ void (*chan_callback)(int, void *, struct pt_regs *); -+} chan_tab_t; -+ -+#define DEV_FLAGS_INUSE (1 << 0) -+#define DEV_FLAGS_ANYUSE (1 << 1) -+#define DEV_FLAGS_OUT (1 << 2) -+#define DEV_FLAGS_IN (1 << 3) -+#define DEV_FLAGS_BURSTABLE (1 << 4) -+#define DEV_FLAGS_SYNC (1 << 5) -+/* end Ddma API definitions */ -+ - /* External functions for drivers to use. - */ - /* Use this to allocate a dbdma channel. The device ids are one of the -@@ -299,8 +348,8 @@ - - /* Put buffers on source/destination descriptors. - */ --u32 au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes); --u32 au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes); -+u32 _au1xxx_dbdma_put_source(u32 chanid, void *buf, int nbytes, u32 flags); -+u32 _au1xxx_dbdma_put_dest(u32 chanid, void *buf, int nbytes, u32 flags); - - /* Get a buffer from the destination descriptor. - */ -@@ -314,5 +363,25 @@ - void au1xxx_dbdma_chan_free(u32 chanid); - void au1xxx_dbdma_dump(u32 chanid); - -+u32 au1xxx_dbdma_put_dscr(u32 chanid, au1x_ddma_desc_t *dscr ); -+ -+u32 au1xxx_ddma_add_device( dbdev_tab_t *dev ); -+ -+/* -+ Some compatibilty macros -- -+ Needed to make changes to API without breaking existing drivers -+*/ -+#define au1xxx_dbdma_put_source(chanid,buf,nbytes)_au1xxx_dbdma_put_source(chanid, buf, nbytes, DDMA_FLAGS_IE) -+#define au1xxx_dbdma_put_source_flags(chanid,buf,nbytes,flags) _au1xxx_dbdma_put_source(chanid, buf, nbytes, flags) -+ -+#define au1xxx_dbdma_put_dest(chanid,buf,nbytes) _au1xxx_dbdma_put_dest(chanid, buf, nbytes, DDMA_FLAGS_IE) -+#define au1xxx_dbdma_put_dest_flags(chanid,buf,nbytes,flags) _au1xxx_dbdma_put_dest(chanid, buf, nbytes, flags) -+ -+/* -+ * Flags for the put_source/put_dest functions. -+ */ -+#define DDMA_FLAGS_IE (1<<0) -+#define DDMA_FLAGS_NOIE (1<<1) -+ - #endif /* _LANGUAGE_ASSEMBLY */ - #endif /* _AU1000_DBDMA_H_ */ -diff -Nur linux-2.4.32/include/asm-mips/au1xxx_gpio.h linux-2.4.32.patched/include/asm-mips/au1xxx_gpio.h ---- linux-2.4.32/include/asm-mips/au1xxx_gpio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1xxx_gpio.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,22 @@ -+ -+ -+#ifndef __AU1XXX_GPIO_H -+#define __AU1XXX_GPIO_H -+ -+void au1xxx_gpio1_set_inputs(void); -+void au1xxx_gpio_tristate(int signal); -+void au1xxx_gpio_write(int signal, int value); -+int au1xxx_gpio_read(int signal); -+ -+typedef volatile struct -+{ -+ u32 dir; -+ u32 reserved; -+ u32 output; -+ u32 pinstate; -+ u32 inten; -+ u32 enable; -+ -+} AU1X00_GPIO2; -+ -+#endif //__AU1XXX_GPIO_H -diff -Nur linux-2.4.32/include/asm-mips/au1xxx_psc.h linux-2.4.32.patched/include/asm-mips/au1xxx_psc.h ---- linux-2.4.32/include/asm-mips/au1xxx_psc.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/au1xxx_psc.h 2006-03-13 18:55:54.000000000 +0100 -@@ -41,6 +41,11 @@ - #define PSC3_BASE_ADDR 0xb0d00000 - #endif - -+#ifdef CONFIG_SOC_AU1200 -+#define PSC0_BASE_ADDR 0xb1a00000 -+#define PSC1_BASE_ADDR 0xb1b00000 -+#endif -+ - /* The PSC select and control registers are common to - * all protocols. - */ -@@ -226,6 +231,8 @@ - #define PSC_I2SCFG_DD_DISABLE (1 << 27) - #define PSC_I2SCFG_DE_ENABLE (1 << 26) - #define PSC_I2SCFG_SET_WS(x) (((((x) / 2) - 1) & 0x7f) << 16) -+#define PSC_I2SCFG_WS(n) ((n&0xFF)<<16) -+#define PSC_I2SCFG_WS_MASK (PSC_I2SCFG_WS(0x3F)) - #define PSC_I2SCFG_WI (1 << 15) - - #define PSC_I2SCFG_DIV_MASK (3 << 13) -diff -Nur linux-2.4.32/include/asm-mips/bootinfo.h linux-2.4.32.patched/include/asm-mips/bootinfo.h ---- linux-2.4.32/include/asm-mips/bootinfo.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/bootinfo.h 2006-03-13 18:55:59.000000000 +0100 -@@ -37,6 +37,7 @@ - #define MACH_GROUP_HP_LJ 20 /* Hewlett Packard LaserJet */ - #define MACH_GROUP_LASAT 21 - #define MACH_GROUP_TITAN 22 /* PMC-Sierra Titan */ -+#define MACH_GROUP_BRCM 23 /* Broadcom */ - - /* - * Valid machtype values for group unknown (low order halfword of mips_machtype) -@@ -180,6 +181,9 @@ - #define MACH_MTX1 7 /* 4G MTX-1 Au1500-based board */ - #define MACH_CSB250 8 /* Cogent Au1500 */ - #define MACH_PB1550 9 /* Au1550-based eval board */ -+#define MACH_PB1200 10 /* Au1200-based eval board */ -+#define MACH_DB1550 11 /* Au1550-based eval board */ -+#define MACH_DB1200 12 /* Au1200-based eval board */ - - /* - * Valid machtype for group NEC_VR41XX -@@ -194,6 +198,15 @@ - #define MACH_TANBAC_TB0229 7 /* TANBAC TB0229 (VR4131DIMM) */ - - /* -+ * Valid machtypes for group Broadcom -+ */ -+#define MACH_BCM93725 0 -+#define MACH_BCM93725_VJ 1 -+#define MACH_BCM93730 2 -+#define MACH_BCM947XX 3 -+#define MACH_BCM933XX 4 -+ -+/* - * Valid machtype for group TITAN - */ - #define MACH_TITAN_YOSEMITE 1 /* PMC-Sierra Yosemite */ -diff -Nur linux-2.4.32/include/asm-mips/cpu.h linux-2.4.32.patched/include/asm-mips/cpu.h ---- linux-2.4.32/include/asm-mips/cpu.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/cpu.h 2006-03-13 18:55:59.000000000 +0100 -@@ -22,6 +22,11 @@ - spec. - */ - -+#define PRID_COPT_MASK 0xff000000 -+#define PRID_COMP_MASK 0x00ff0000 -+#define PRID_IMP_MASK 0x0000ff00 -+#define PRID_REV_MASK 0x000000ff -+ - #define PRID_COMP_LEGACY 0x000000 - #define PRID_COMP_MIPS 0x010000 - #define PRID_COMP_BROADCOM 0x020000 -@@ -58,6 +63,7 @@ - #define PRID_IMP_RM7000 0x2700 - #define PRID_IMP_NEVADA 0x2800 /* RM5260 ??? */ - #define PRID_IMP_RM9000 0x3400 -+#define PRID_IMP_BCM4710 0x4000 - #define PRID_IMP_R5432 0x5400 - #define PRID_IMP_R5500 0x5500 - #define PRID_IMP_4KC 0x8000 -@@ -66,10 +72,16 @@ - #define PRID_IMP_4KEC 0x8400 - #define PRID_IMP_4KSC 0x8600 - #define PRID_IMP_25KF 0x8800 -+#define PRID_IMP_BCM3302 0x9000 -+#define PRID_IMP_BCM3303 0x9100 - #define PRID_IMP_24K 0x9300 - - #define PRID_IMP_UNKNOWN 0xff00 - -+#define BCM330X(id) \ -+ (((id & (PRID_COMP_MASK | PRID_IMP_MASK)) == (PRID_COMP_BROADCOM | PRID_IMP_BCM3302)) \ -+ || ((id & (PRID_COMP_MASK | PRID_IMP_MASK)) == (PRID_COMP_BROADCOM | PRID_IMP_BCM3303))) -+ - /* - * These are the PRID's for when 23:16 == PRID_COMP_SIBYTE - */ -@@ -174,7 +186,9 @@ - #define CPU_AU1550 57 - #define CPU_24K 58 - #define CPU_AU1200 59 --#define CPU_LAST 59 -+#define CPU_BCM4710 60 -+#define CPU_BCM3302 61 -+#define CPU_LAST 61 - - /* - * ISA Level encodings -diff -Nur linux-2.4.32/include/asm-mips/db1200.h linux-2.4.32.patched/include/asm-mips/db1200.h ---- linux-2.4.32/include/asm-mips/db1200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/db1200.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,214 @@ -+/* -+ * AMD Alchemy DB1200 Referrence Board -+ * Board Registers defines. -+ * -+ * ######################################################################## -+ * -+ * This program is free software; you can distribute it and/or modify it -+ * under the terms of the GNU General Public License (Version 2) as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * for more details. -+ * -+ * You should have received a copy of the GNU General Public License along -+ * with this program; if not, write to the Free Software Foundation, Inc., -+ * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. -+ * -+ * ######################################################################## -+ * -+ * -+ */ -+#ifndef __ASM_DB1200_H -+#define __ASM_DB1200_H -+ -+#include <linux/types.h> -+ -+// This is defined in au1000.h with bogus value -+#undef AU1X00_EXTERNAL_INT -+ -+#define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_AC97_RX_CHAN DSCR_CMD0_PSC1_RX -+#define DBDMA_I2S_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_I2S_RX_CHAN DSCR_CMD0_PSC1_RX -+ -+/* SPI and SMB are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define SPI_PSC_BASE PSC0_BASE_ADDR -+#define SMBUS_PSC_BASE PSC0_BASE_ADDR -+/* AC97 and I2S are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define AC97_PSC_BASE PSC1_BASE_ADDR -+#define I2S_PSC_BASE PSC1_BASE_ADDR -+ -+#define BCSR_KSEG1_ADDR 0xB9800000 -+ -+typedef volatile struct -+{ -+ /*00*/ u16 whoami; -+ u16 reserved0; -+ /*04*/ u16 status; -+ u16 reserved1; -+ /*08*/ u16 switches; -+ u16 reserved2; -+ /*0C*/ u16 resets; -+ u16 reserved3; -+ -+ /*10*/ u16 pcmcia; -+ u16 reserved4; -+ /*14*/ u16 board; -+ u16 reserved5; -+ /*18*/ u16 disk_leds; -+ u16 reserved6; -+ /*1C*/ u16 system; -+ u16 reserved7; -+ -+ /*20*/ u16 intclr; -+ u16 reserved8; -+ /*24*/ u16 intset; -+ u16 reserved9; -+ /*28*/ u16 intclr_mask; -+ u16 reserved10; -+ /*2C*/ u16 intset_mask; -+ u16 reserved11; -+ -+ /*30*/ u16 sig_status; -+ u16 reserved12; -+ /*34*/ u16 int_status; -+ u16 reserved13; -+ /*38*/ u16 reserved14; -+ u16 reserved15; -+ /*3C*/ u16 reserved16; -+ u16 reserved17; -+ -+} BCSR; -+ -+static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; -+ -+/* -+ * Register bit definitions for the BCSRs -+ */ -+#define BCSR_WHOAMI_DCID 0x000F -+#define BCSR_WHOAMI_CPLD 0x00F0 -+#define BCSR_WHOAMI_BOARD 0x0F00 -+ -+#define BCSR_STATUS_PCMCIA0VS 0x0003 -+#define BCSR_STATUS_PCMCIA1VS 0x000C -+#define BCSR_STATUS_SWAPBOOT 0x0040 -+#define BCSR_STATUS_FLASHBUSY 0x0100 -+#define BCSR_STATUS_IDECBLID 0x0200 -+#define BCSR_STATUS_SD0WP 0x0400 -+#define BCSR_STATUS_U0RXD 0x1000 -+#define BCSR_STATUS_U1RXD 0x2000 -+ -+#define BCSR_SWITCHES_OCTAL 0x00FF -+#define BCSR_SWITCHES_DIP_1 0x0080 -+#define BCSR_SWITCHES_DIP_2 0x0040 -+#define BCSR_SWITCHES_DIP_3 0x0020 -+#define BCSR_SWITCHES_DIP_4 0x0010 -+#define BCSR_SWITCHES_DIP_5 0x0008 -+#define BCSR_SWITCHES_DIP_6 0x0004 -+#define BCSR_SWITCHES_DIP_7 0x0002 -+#define BCSR_SWITCHES_DIP_8 0x0001 -+#define BCSR_SWITCHES_ROTARY 0x0F00 -+ -+#define BCSR_RESETS_ETH 0x0001 -+#define BCSR_RESETS_CAMERA 0x0002 -+#define BCSR_RESETS_DC 0x0004 -+#define BCSR_RESETS_IDE 0x0008 -+#define BCSR_RESETS_TV 0x0010 -+/* not resets but in the same register */ -+#define BCSR_RESETS_PWMR1mUX 0x0800 -+#define BCSR_RESETS_PCS0MUX 0x1000 -+#define BCSR_RESETS_PCS1MUX 0x2000 -+#define BCSR_RESETS_SPISEL 0x4000 -+ -+#define BCSR_PCMCIA_PC0VPP 0x0003 -+#define BCSR_PCMCIA_PC0VCC 0x000C -+#define BCSR_PCMCIA_PC0DRVEN 0x0010 -+#define BCSR_PCMCIA_PC0RST 0x0080 -+#define BCSR_PCMCIA_PC1VPP 0x0300 -+#define BCSR_PCMCIA_PC1VCC 0x0C00 -+#define BCSR_PCMCIA_PC1DRVEN 0x1000 -+#define BCSR_PCMCIA_PC1RST 0x8000 -+ -+#define BCSR_BOARD_LCDVEE 0x0001 -+#define BCSR_BOARD_LCDVDD 0x0002 -+#define BCSR_BOARD_LCDBL 0x0004 -+#define BCSR_BOARD_CAMSNAP 0x0010 -+#define BCSR_BOARD_CAMPWR 0x0020 -+#define BCSR_BOARD_SD0PWR 0x0040 -+ -+#define BCSR_LEDS_DECIMALS 0x0003 -+#define BCSR_LEDS_LED0 0x0100 -+#define BCSR_LEDS_LED1 0x0200 -+#define BCSR_LEDS_LED2 0x0400 -+#define BCSR_LEDS_LED3 0x0800 -+ -+#define BCSR_SYSTEM_POWEROFF 0x4000 -+#define BCSR_SYSTEM_RESET 0x8000 -+ -+/* Bit positions for the different interrupt sources */ -+#define BCSR_INT_IDE 0x0001 -+#define BCSR_INT_ETH 0x0002 -+#define BCSR_INT_PC0 0x0004 -+#define BCSR_INT_PC0STSCHG 0x0008 -+#define BCSR_INT_PC1 0x0010 -+#define BCSR_INT_PC1STSCHG 0x0020 -+#define BCSR_INT_DC 0x0040 -+#define BCSR_INT_FLASHBUSY 0x0080 -+#define BCSR_INT_PC0INSERT 0x0100 -+#define BCSR_INT_PC0EJECT 0x0200 -+#define BCSR_INT_PC1INSERT 0x0400 -+#define BCSR_INT_PC1EJECT 0x0800 -+#define BCSR_INT_SD0INSERT 0x1000 -+#define BCSR_INT_SD0EJECT 0x2000 -+ -+#define AU1XXX_SMC91111_PHYS_ADDR (0x19000300) -+#define AU1XXX_SMC91111_IRQ DB1200_ETH_INT -+ -+#define AU1XXX_ATA_PHYS_ADDR (0x18800000) -+#define AU1XXX_ATA_PHYS_LEN (0x100) -+#define AU1XXX_ATA_REG_OFFSET (5) -+#define AU1XXX_ATA_INT DB1200_IDE_INT -+#define AU1XXX_ATA_DDMA_REQ DSCR_CMD0_DMA_REQ1; -+#define AU1XXX_ATA_RQSIZE 128 -+ -+#define NAND_PHYS_ADDR 0x20000000 -+ -+/* -+ * External Interrupts for Pb1200 as of 8/6/2004. -+ * Bit positions in the CPLD registers can be calculated by taking -+ * the interrupt define and subtracting the DB1200_INT_BEGIN value. -+ * *example: IDE bis pos is = 64 - 64 -+ ETH bit pos is = 65 - 64 -+ */ -+#define DB1200_INT_BEGIN (AU1000_LAST_INTC1_INT + 1) -+#define DB1200_IDE_INT (DB1200_INT_BEGIN + 0) -+#define DB1200_ETH_INT (DB1200_INT_BEGIN + 1) -+#define DB1200_PC0_INT (DB1200_INT_BEGIN + 2) -+#define DB1200_PC0_STSCHG_INT (DB1200_INT_BEGIN + 3) -+#define DB1200_PC1_INT (DB1200_INT_BEGIN + 4) -+#define DB1200_PC1_STSCHG_INT (DB1200_INT_BEGIN + 5) -+#define DB1200_DC_INT (DB1200_INT_BEGIN + 6) -+#define DB1200_FLASHBUSY_INT (DB1200_INT_BEGIN + 7) -+#define DB1200_PC0_INSERT_INT (DB1200_INT_BEGIN + 8) -+#define DB1200_PC0_EJECT_INT (DB1200_INT_BEGIN + 9) -+#define DB1200_PC1_INSERT_INT (DB1200_INT_BEGIN + 10) -+#define DB1200_PC1_EJECT_INT (DB1200_INT_BEGIN + 11) -+#define DB1200_SD0_INSERT_INT (DB1200_INT_BEGIN + 12) -+#define DB1200_SD0_EJECT_INT (DB1200_INT_BEGIN + 13) -+ -+#define DB1200_INT_END (DB1200_INT_BEGIN + 15) -+ -+/* For drivers/pcmcia/au1000_db1x00.c */ -+#define BOARD_PC0_INT DB1200_PC0_INT -+#define BOARD_PC1_INT DB1200_PC1_INT -+#define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) -+ -+#endif /* __ASM_DB1200_H */ -+ -diff -Nur linux-2.4.32/include/asm-mips/db1x00.h linux-2.4.32.patched/include/asm-mips/db1x00.h ---- linux-2.4.32/include/asm-mips/db1x00.h 2005-01-19 15:10:11.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/db1x00.h 2006-03-13 18:55:54.000000000 +0100 -@@ -1,5 +1,5 @@ - /* -- * AMD Alchemy DB1x00 Reference Boards -+ * AMD Alchemy DB1x00 Reference Boards (BUT NOT DB1200) - * - * Copyright 2001 MontaVista Software Inc. - * Author: MontaVista Software, Inc. -@@ -36,9 +36,18 @@ - #define AC97_PSC_BASE PSC1_BASE_ADDR - #define SMBUS_PSC_BASE PSC2_BASE_ADDR - #define I2S_PSC_BASE PSC3_BASE_ADDR -+#define NAND_CS 1 -+/* for drivers/pcmcia/au1000_db1x00.c */ -+#define BOARD_PC0_INT AU1000_GPIO_3 -+#define BOARD_PC1_INT AU1000_GPIO_5 -+#define BOARD_CARD_INSERTED(SOCKET) !(bcsr->status & (1<<(4+SOCKET))) - - #else - #define BCSR_KSEG1_ADDR 0xAE000000 -+/* for drivers/pcmcia/au1000_db1x00.c */ -+#define BOARD_PC0_INT AU1000_GPIO_2 -+#define BOARD_PC1_INT AU1000_GPIO_5 -+#define BOARD_CARD_INSERTED(SOCKET) !(bcsr->status & (1<<(4+SOCKET))) - #endif - - /* -@@ -66,6 +75,7 @@ - - } BCSR; - -+static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; - - /* - * Register/mask bit definitions for the BCSRs -@@ -130,14 +140,6 @@ - - #define BCSR_SWRESET_RESET 0x0080 - --/* PCMCIA Db1x00 specific defines */ --#define PCMCIA_MAX_SOCK 1 --#define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK+1) -- --/* VPP/VCC */ --#define SET_VCC_VPP(VCC, VPP, SLOT)\ -- ((((VCC)<<2) | ((VPP)<<0)) << ((SLOT)*8)) -- - /* MTD CONFIG OPTIONS */ - #if defined(CONFIG_MTD_DB1X00_BOOT) && defined(CONFIG_MTD_DB1X00_USER) - #define DB1X00_BOTH_BANKS -@@ -147,48 +149,15 @@ - #define DB1X00_USER_ONLY - #endif - --/* SD controller macros */ --/* -- * Detect card. -- */ --#define mmc_card_inserted(_n_, _res_) \ -- do { \ -- BCSR * const bcsr = (BCSR *)0xAE000000; \ -- unsigned long mmc_wp, board_specific; \ -- if ((_n_)) { \ -- mmc_wp = BCSR_BOARD_SD1_WP; \ -- } else { \ -- mmc_wp = BCSR_BOARD_SD0_WP; \ -- } \ -- board_specific = au_readl((unsigned long)(&bcsr->specific)); \ -- if (!(board_specific & mmc_wp)) {/* low means card present */ \ -- *(int *)(_res_) = 1; \ -- } else { \ -- *(int *)(_res_) = 0; \ -- } \ -- } while (0) -- -+#if defined(CONFIG_BLK_DEV_IDE_AU1XXX) && defined(CONFIG_MIPS_DB1550) - /* -- * Apply power to card slot(s). -+ * Daughter card information. - */ --#define mmc_power_on(_n_) \ -- do { \ -- BCSR * const bcsr = (BCSR *)0xAE000000; \ -- unsigned long mmc_pwr, mmc_wp, board_specific; \ -- if ((_n_)) { \ -- mmc_pwr = BCSR_BOARD_SD1_PWR; \ -- mmc_wp = BCSR_BOARD_SD1_WP; \ -- } else { \ -- mmc_pwr = BCSR_BOARD_SD0_PWR; \ -- mmc_wp = BCSR_BOARD_SD0_WP; \ -- } \ -- board_specific = au_readl((unsigned long)(&bcsr->specific)); \ -- if (!(board_specific & mmc_wp)) {/* low means card present */ \ -- board_specific |= mmc_pwr; \ -- au_writel(board_specific, (int)(&bcsr->specific)); \ -- au_sync(); \ -- } \ -- } while (0) -+#define DAUGHTER_CARD_IRQ (AU1000_GPIO_8) -+/* DC_IDE */ -+#define AU1XXX_ATA_PHYS_ADDR (0x0C000000) -+#define AU1XXX_ATA_REG_OFFSET (5) -+#endif /* CONFIG_MIPS_DB1550 */ - - #endif /* __ASM_DB1X00_H */ - -diff -Nur linux-2.4.32/include/asm-mips/elf.h linux-2.4.32.patched/include/asm-mips/elf.h ---- linux-2.4.32/include/asm-mips/elf.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/elf.h 2006-03-13 18:55:54.000000000 +0100 -@@ -66,9 +66,10 @@ - #define USE_ELF_CORE_DUMP - #define ELF_EXEC_PAGESIZE PAGE_SIZE - --#define ELF_CORE_COPY_REGS(_dest,_regs) \ -- memcpy((char *) &_dest, (char *) _regs, \ -- sizeof(struct pt_regs)); -+extern void dump_regs(elf_greg_t *, struct pt_regs *regs); -+ -+#define ELF_CORE_COPY_REGS(elf_regs, regs) \ -+ dump_regs((elf_greg_t *)&(elf_regs), regs); - - /* This yields a mask that user programs can use to figure out what - instruction set this cpu supports. This could be done in userspace, -diff -Nur linux-2.4.32/include/asm-mips/ficmmp.h linux-2.4.32.patched/include/asm-mips/ficmmp.h ---- linux-2.4.32/include/asm-mips/ficmmp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/ficmmp.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,156 @@ -+/* -+ * FIC MMP -+ * -+ * ######################################################################## -+ * -+ * This program is free software; you can distribute it and/or modify it -+ * under the terms of the GNU General Public License (Version 2) as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * for more details. -+ * -+ * You should have received a copy of the GNU General Public License along -+ * with this program; if not, write to the Free Software Foundation, Inc., -+ * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. -+ * -+ * ######################################################################## -+ * -+ * -+ */ -+#ifndef __ASM_FICMMP_H -+#define __ASM_FICMMP_H -+ -+#include <linux/types.h> -+#include <asm/au1000.h> -+#include <asm/au1xxx_gpio.h> -+ -+// This is defined in au1000.h with bogus value -+#undef AU1X00_EXTERNAL_INT -+ -+#define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_AC97_RX_CHAN DSCR_CMD0_PSC1_RX -+#define DBDMA_I2S_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_I2S_RX_CHAN DSCR_CMD0_PSC1_RX -+/* SPI and SMB are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define SPI_PSC_BASE PSC0_BASE_ADDR -+#define SMBUS_PSC_BASE PSC0_BASE_ADDR -+/* AC97 and I2S are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define AC97_PSC_BASE PSC1_BASE_ADDR -+#define I2S_PSC_BASE PSC1_BASE_ADDR -+ -+ -+/* -+ * SMSC LAN91C111 -+ */ -+#define AU1XXX_SMC91111_PHYS_ADDR (0xAC000300) -+#define AU1XXX_SMC91111_IRQ AU1000_GPIO_5 -+ -+/* DC_IDE and DC_ETHERNET */ -+#define FICMMP_IDE_INT AU1000_GPIO_4 -+ -+#define AU1XXX_ATA_PHYS_ADDR (0x0C800000) -+#define AU1XXX_ATA_REG_OFFSET (5) -+/* -+#define AU1XXX_ATA_BASE (0x0C800000) -+#define AU1XXX_ATA_END (0x0CFFFFFF) -+#define AU1XXX_ATA_MEM_SIZE (AU1XXX_ATA_END - AU1XXX_ATA_BASE +1) -+ -+#define AU1XXX_ATA_REG_OFFSET (5) -+*/ -+/* VPP/VCC */ -+#define SET_VCC_VPP(VCC, VPP, SLOT)\ -+ ((((VCC)<<2) | ((VPP)<<0)) << ((SLOT)*8)) -+ -+ -+#define FICMMP_CONFIG_BASE 0xAD000000 -+#define FICMMP_CONFIG_ENABLE 13 -+ -+#define FICMMP_CONFIG_I2SFREQ(N) (N<<0) -+#define FICMMP_CONFIG_I2SXTAL0 (1<<0) -+#define FICMMP_CONFIG_I2SXTAL1 (1<<1) -+#define FICMMP_CONFIG_I2SXTAL2 (1<<2) -+#define FICMMP_CONFIG_I2SXTAL3 (1<<3) -+#define FICMMP_CONFIG_ADV1 (1<<4) -+#define FICMMP_CONFIG_IDERST (1<<5) -+#define FICMMP_CONFIG_LCMEN (1<<6) -+#define FICMMP_CONFIG_CAMPWDN (1<<7) -+#define FICMMP_CONFIG_USBPWREN (1<<8) -+#define FICMMP_CONFIG_LCMPWREN (1<<9) -+#define FICMMP_CONFIG_TVOUTPWREN (1<<10) -+#define FICMMP_CONFIG_RS232PWREN (1<<11) -+#define FICMMP_CONFIG_LCMDATAOUT (1<<12) -+#define FICMMP_CONFIG_TVODATAOUT (1<<13) -+#define FICMMP_CONFIG_ADV3 (1<<14) -+#define FICMMP_CONFIG_ADV4 (1<<15) -+ -+#define I2S_FREQ_8_192 (0x0) -+#define I2S_FREQ_11_2896 (0x1) -+#define I2S_FREQ_12_288 (0x2) -+#define I2S_FREQ_24_576 (0x3) -+//#define I2S_FREQ_12_288 (0x4) -+#define I2S_FREQ_16_9344 (0x5) -+#define I2S_FREQ_18_432 (0x6) -+#define I2S_FREQ_36_864 (0x7) -+#define I2S_FREQ_16_384 (0x8) -+#define I2S_FREQ_22_5792 (0x9) -+//#define I2S_FREQ_24_576 (0x10) -+#define I2S_FREQ_49_152 (0x11) -+//#define I2S_FREQ_24_576 (0x12) -+#define I2S_FREQ_33_8688 (0x13) -+//#define I2S_FREQ_36_864 (0x14) -+#define I2S_FREQ_73_728 (0x15) -+ -+#define FICMMP_IDE_PWR 9 -+#define FICMMP_FOCUS_RST 2 -+ -+static __inline void ficmmp_config_set(u16 bits) -+{ -+ extern u16 ficmmp_config; -+ //printk("set_config: %X, Old: %X, New: %X\n", bits, ficmmp_config, ficmmp_config | bits); -+ ficmmp_config |= bits; -+ *((u16*)FICMMP_CONFIG_BASE) = ficmmp_config; -+} -+ -+static __inline void ficmmp_config_clear(u16 bits) -+{ -+ extern u16 ficmmp_config; -+// printk("clear_config: %X, Old: %X, New: %X\n", bits, ficmmp_config, ficmmp_config & ~bits); -+ ficmmp_config &= ~bits; -+ *((u16*)FICMMP_CONFIG_BASE) = ficmmp_config; -+} -+ -+static __inline void ficmmp_config_init(void) -+{ -+ au1xxx_gpio_write(FICMMP_CONFIG_ENABLE, 0); //Enable configuration latch -+ ficmmp_config_set(FICMMP_CONFIG_LCMDATAOUT | FICMMP_CONFIG_TVODATAOUT | FICMMP_CONFIG_IDERST); //Disable display data buffers -+ ficmmp_config_set(FICMMP_CONFIG_I2SFREQ(I2S_FREQ_36_864)); -+} -+ -+static __inline u32 ficmmp_set_i2s_sample_rate(u32 rate) -+{ -+ u32 freq; -+ -+ switch(rate) -+ { -+ case 88200: -+ case 44100: -+ case 8018: freq = I2S_FREQ_11_2896; break; -+ case 48000: -+ case 32000: //freq = I2S_FREQ_18_432; break; -+ case 8000: freq = I2S_FREQ_12_288; break; -+ default: freq = I2S_FREQ_12_288; rate = 8000; -+ } -+ ficmmp_config_clear(FICMMP_CONFIG_I2SFREQ(0xF)); -+ ficmmp_config_set(FICMMP_CONFIG_I2SFREQ(freq)); -+ return rate; -+} -+ -+#endif /* __ASM_FICMMP_H */ -+ -diff -Nur linux-2.4.32/include/asm-mips/hazards.h linux-2.4.32.patched/include/asm-mips/hazards.h ---- linux-2.4.32/include/asm-mips/hazards.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/hazards.h 2006-03-13 18:57:11.000000000 +0100 -@@ -3,7 +3,7 @@ - * License. See the file "COPYING" in the main directory of this archive - * for more details. - * -- * Copyright (C) 2003 Ralf Baechle -+ * Copyright (C) 2003, 2004 Ralf Baechle - */ - #ifndef _ASM_HAZARDS_H - #define _ASM_HAZARDS_H -@@ -12,38 +12,200 @@ - - #ifdef __ASSEMBLY__ - -+ .macro _ssnop -+ sll $0, $0, 1 -+ .endm -+ - /* - * RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent - * use of the JTLB for instructions should not occur for 4 cpu cycles and use - * for data translations should not occur for 3 cpu cycles. - */ - #ifdef CONFIG_CPU_RM9000 --#define rm9000_tlb_hazard \ -+ -+#define mtc0_tlbw_hazard \ - .set push; \ - .set mips32; \ -- ssnop; ssnop; ssnop; ssnop; \ -+ _ssnop; _ssnop; _ssnop; _ssnop; \ - .set pop -+ -+#define tlbw_eret_hazard \ -+ .set push; \ -+ .set mips32; \ -+ _ssnop; _ssnop; _ssnop; _ssnop; \ -+ .set pop -+ - #else --#define rm9000_tlb_hazard -+ -+/* -+ * The taken branch will result in a two cycle penalty for the two killed -+ * instructions on R4000 / R4400. Other processors only have a single cycle -+ * hazard so this is nice trick to have an optimal code for a range of -+ * processors. -+ */ -+#define mtc0_tlbw_hazard \ -+ b . + 8 -+#define tlbw_eret_hazard \ -+ nop - #endif - -+/* -+ * mtc0->mfc0 hazard -+ * The 24K has a 2 cycle mtc0/mfc0 execution hazard. -+ * It is a MIPS32R2 processor so ehb will clear the hazard. -+ */ -+ -+#ifdef CONFIG_CPU_MIPSR2 -+/* -+ * Use a macro for ehb unless explicit support for MIPSR2 is enabled -+ */ -+ .macro ehb -+ sll $0, $0, 3 -+ .endm -+ -+#define irq_enable_hazard \ -+ ehb # irq_enable_hazard -+ -+#define irq_disable_hazard \ -+ ehb # irq_disable_hazard -+ -+#elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_RM9000) -+ -+/* -+ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. -+ */ -+ -+#define irq_enable_hazard -+ -+#define irq_disable_hazard -+ - #else - - /* -+ * Classic MIPS needs 1 - 3 nops or ssnops -+ */ -+#define irq_enable_hazard -+#define irq_disable_hazard \ -+ _ssnop; _ssnop; _ssnop -+ -+#endif -+ -+#else /* __ASSEMBLY__ */ -+ -+/* - * RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent - * use of the JTLB for instructions should not occur for 4 cpu cycles and use - * for data translations should not occur for 3 cpu cycles. - */ - #ifdef CONFIG_CPU_RM9000 --#define rm9000_tlb_hazard() \ -+ -+#define mtc0_tlbw_hazard() \ - __asm__ __volatile__( \ - ".set\tmips32\n\t" \ -- "ssnop; ssnop; ssnop; ssnop\n\t" \ -+ "_ssnop; _ssnop; _ssnop; _ssnop\n\t" \ -+ ".set\tmips0") -+ -+#define tlbw_use_hazard() \ -+ __asm__ __volatile__( \ -+ ".set\tmips32\n\t" \ -+ "_ssnop; _ssnop; _ssnop; _ssnop\n\t" \ - ".set\tmips0") - #else --#define rm9000_tlb_hazard() do { } while (0) -+ -+/* -+ * Overkill warning ... -+ */ -+#define mtc0_tlbw_hazard() \ -+ __asm__ __volatile__( \ -+ ".set noreorder\n\t" \ -+ "nop; nop; nop; nop; nop; nop;\n\t" \ -+ ".set reorder\n\t") -+ -+#define tlbw_use_hazard() \ -+ __asm__ __volatile__( \ -+ ".set noreorder\n\t" \ -+ "nop; nop; nop; nop; nop; nop;\n\t" \ -+ ".set reorder\n\t") -+ - #endif - -+/* -+ * mtc0->mfc0 hazard -+ * The 24K has a 2 cycle mtc0/mfc0 execution hazard. -+ * It is a MIPS32R2 processor so ehb will clear the hazard. -+ */ -+ -+#ifdef CONFIG_CPU_MIPSR2 -+/* -+ * Use a macro for ehb unless explicit support for MIPSR2 is enabled -+ */ -+__asm__( -+ " .macro ehb \n\t" -+ " sll $0, $0, 3 \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_enable_hazard \n\t" -+ " ehb \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " ehb \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() \ -+ __asm__ __volatile__( \ -+ "ehb\t\t\t\t# irq_enable_hazard") -+ -+#define irq_disable_hazard() \ -+ __asm__ __volatile__( \ -+ "ehb\t\t\t\t# irq_disable_hazard") -+ -+#elif defined(CONFIG_CPU_R10000) -+ -+/* -+ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. -+ */ -+ -+__asm__( -+ " .macro\tirq_enable_hazard \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() do { } while (0) -+#define irq_disable_hazard() do { } while (0) -+ -+#else -+ -+/* -+ * Default for classic MIPS processors. Assume worst case hazards but don't -+ * care about the irq_enable_hazard - sooner or later the hardware will -+ * enable it and we don't care when exactly. -+ */ -+ -+__asm__( -+ " .macro _ssnop \n\t" -+ " sll $0, $2, 1 \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " # \n\t" -+ " # There is a hazard but we do not care \n\t" -+ " # \n\t" -+ " .macro\tirq_enable_hazard \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " _ssnop; _ssnop; _ssnop \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() do { } while (0) -+#define irq_disable_hazard() \ -+ __asm__ __volatile__( \ -+ "_ssnop; _ssnop; _ssnop;\t\t# irq_disable_hazard") -+ - #endif - -+#endif /* __ASSEMBLY__ */ -+ - #endif /* _ASM_HAZARDS_H */ -diff -Nur linux-2.4.32/include/asm-mips/ide.h linux-2.4.32.patched/include/asm-mips/ide.h ---- linux-2.4.32/include/asm-mips/ide.h 2003-08-25 13:44:43.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/ide.h 2006-03-13 18:57:19.000000000 +0100 -@@ -32,12 +32,12 @@ - - extern struct ide_ops *ide_ops; - --static __inline__ int ide_default_irq(ide_ioreg_t base) -+static inline int ide_default_irq(ide_ioreg_t base) - { - return ide_ops->ide_default_irq(base); - } - --static __inline__ ide_ioreg_t ide_default_io_base(int index) -+static inline ide_ioreg_t ide_default_io_base(int index) - { - return ide_ops->ide_default_io_base(index); - } -@@ -48,7 +48,7 @@ - ide_ops->ide_init_hwif_ports(hw, data_port, ctrl_port, irq); - } - --static __inline__ void ide_init_default_hwifs(void) -+static inline void ide_init_default_hwifs(void) - { - #ifndef CONFIG_BLK_DEV_IDEPCI - hw_regs_t hw; -@@ -68,7 +68,89 @@ - #define ide_ack_intr(hwif) ((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1) - #endif - --#include <asm-generic/ide_iops.h> -+/* MIPS port and memory-mapped I/O string operations. */ -+ -+static inline void __ide_flush_dcache_range(unsigned long addr, unsigned long size) -+{ -+ if (cpu_has_dc_aliases) { -+ unsigned long end = addr + size; -+ for (; addr < end; addr += PAGE_SIZE) -+ flush_dcache_page(virt_to_page(addr)); -+ } -+} -+ -+static inline void __ide_insw(unsigned long port, void *addr, -+ unsigned int count) -+{ -+ insw(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 2); -+} -+ -+static inline void __ide_insl(unsigned long port, void *addr, unsigned int count) -+{ -+ insl(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 4); -+} -+ -+static inline void __ide_outsw(unsigned long port, const void *addr, -+ unsigned long count) -+{ -+ outsw(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 2); -+} -+ -+static inline void __ide_outsl(unsigned long port, const void *addr, -+ unsigned long count) -+{ -+ outsl(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 4); -+} -+ -+static inline void __ide_mm_insw(unsigned long port, void *addr, u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ *(u16 *)addr = readw(port); -+ addr += 2; -+ } -+ __ide_flush_dcache_range(start, count * 2); -+} -+ -+static inline void __ide_mm_insl(unsigned long port, void *addr, u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ *(u32 *)addr = readl(port); -+ addr += 4; -+ } -+ __ide_flush_dcache_range(start, count * 4); -+} -+ -+static inline void __ide_mm_outsw(unsigned long port, const void *addr, -+ u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ writew(*(u16 *)addr, port); -+ addr += 2; -+ } -+ __ide_flush_dcache_range(start, count * 2); -+} -+ -+static inline void __ide_mm_outsl(unsigned long port, const void *addr, -+ u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ writel(*(u32 *)addr, port); -+ addr += 4; -+ } -+ __ide_flush_dcache_range(start, count * 4); -+} - - #endif /* __KERNEL__ */ - -diff -Nur linux-2.4.32/include/asm-mips/io.h linux-2.4.32.patched/include/asm-mips/io.h ---- linux-2.4.32/include/asm-mips/io.h 2003-08-25 13:44:43.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/io.h 2006-03-13 18:57:11.000000000 +0100 -@@ -392,7 +392,8 @@ - return __ioswab32(__val); - } - --static inline void __outsb(unsigned long port, void *addr, unsigned int count) -+static inline void __outsb(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outb(*(u8 *)addr, port); -@@ -408,7 +409,8 @@ - } - } - --static inline void __outsw(unsigned long port, void *addr, unsigned int count) -+static inline void __outsw(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outw(*(u16 *)addr, port); -@@ -424,7 +426,8 @@ - } - } - --static inline void __outsl(unsigned long port, void *addr, unsigned int count) -+static inline void __outsl(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outl(*(u32 *)addr, port); -diff -Nur linux-2.4.32/include/asm-mips/mipsregs.h linux-2.4.32.patched/include/asm-mips/mipsregs.h ---- linux-2.4.32/include/asm-mips/mipsregs.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/mipsregs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -757,10 +757,18 @@ - #define read_c0_config1() __read_32bit_c0_register($16, 1) - #define read_c0_config2() __read_32bit_c0_register($16, 2) - #define read_c0_config3() __read_32bit_c0_register($16, 3) -+#define read_c0_config4() __read_32bit_c0_register($16, 4) -+#define read_c0_config5() __read_32bit_c0_register($16, 5) -+#define read_c0_config6() __read_32bit_c0_register($16, 6) -+#define read_c0_config7() __read_32bit_c0_register($16, 7) - #define write_c0_config(val) __write_32bit_c0_register($16, 0, val) - #define write_c0_config1(val) __write_32bit_c0_register($16, 1, val) - #define write_c0_config2(val) __write_32bit_c0_register($16, 2, val) - #define write_c0_config3(val) __write_32bit_c0_register($16, 3, val) -+#define write_c0_config4(val) __write_32bit_c0_register($16, 4, val) -+#define write_c0_config5(val) __write_32bit_c0_register($16, 5, val) -+#define write_c0_config6(val) __write_32bit_c0_register($16, 6, val) -+#define write_c0_config7(val) __write_32bit_c0_register($16, 7, val) - - /* - * The WatchLo register. There may be upto 8 of them. -@@ -874,42 +882,34 @@ - */ - static inline void tlb_probe(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbp\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_read(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbr\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_write_indexed(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbwi\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_write_random(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbwr\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - /* -diff -Nur linux-2.4.32/include/asm-mips/mmu_context.h linux-2.4.32.patched/include/asm-mips/mmu_context.h ---- linux-2.4.32/include/asm-mips/mmu_context.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/mmu_context.h 2006-03-13 18:55:54.000000000 +0100 -@@ -27,7 +27,7 @@ - #define TLBMISS_HANDLER_SETUP_PGD(pgd) \ - pgd_current[smp_processor_id()] = (unsigned long)(pgd) - #define TLBMISS_HANDLER_SETUP() \ -- write_c0_context((unsigned long) smp_processor_id() << (23 + 3)); \ -+ write_c0_context((unsigned long) smp_processor_id() << 23); \ - TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir) - extern unsigned long pgd_current[]; - -diff -Nur linux-2.4.32/include/asm-mips/param.h linux-2.4.32.patched/include/asm-mips/param.h ---- linux-2.4.32/include/asm-mips/param.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/param.h 2006-03-13 18:57:11.000000000 +0100 -@@ -55,7 +55,7 @@ - #endif /* defined(__KERNEL__) */ - #endif /* defined(HZ) */ - --#define EXEC_PAGESIZE 65536 -+#define EXEC_PAGESIZE 4096 - - #ifndef NGROUPS - #define NGROUPS 32 -diff -Nur linux-2.4.32/include/asm-mips/pb1100.h linux-2.4.32.patched/include/asm-mips/pb1100.h ---- linux-2.4.32/include/asm-mips/pb1100.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/pb1100.h 2006-03-13 18:55:54.000000000 +0100 -@@ -1,5 +1,5 @@ - /* -- * Alchemy Semi PB1100 Referrence Board -+ * AMD Alchemy PB1100 Reference Boards - * - * Copyright 2001 MontaVista Software Inc. - * Author: MontaVista Software, Inc. -@@ -27,55 +27,108 @@ - #ifndef __ASM_PB1100_H - #define __ASM_PB1100_H - --#define PB1100_IDENT 0xAE000000 --#define BOARD_STATUS_REG 0xAE000004 -- #define PB1100_ROM_SEL (1<<15) -- #define PB1100_ROM_SIZ (1<<14) -- #define PB1100_SWAP_BOOT (1<<13) -- #define PB1100_FLASH_WP (1<<12) -- #define PB1100_ROM_H_STS (1<<11) -- #define PB1100_ROM_L_STS (1<<10) -- #define PB1100_FLASH_H_STS (1<<9) -- #define PB1100_FLASH_L_STS (1<<8) -- #define PB1100_SRAM_SIZ (1<<7) -- #define PB1100_TSC_BUSY (1<<6) -- #define PB1100_PCMCIA_VS_MASK (3<<4) -- #define PB1100_RS232_CD (1<<3) -- #define PB1100_RS232_CTS (1<<2) -- #define PB1100_RS232_DSR (1<<1) -- #define PB1100_RS232_RI (1<<0) -- --#define PB1100_IRDA_RS232 0xAE00000C -- #define PB1100_IRDA_FULL (0<<14) /* full power */ -- #define PB1100_IRDA_SHUTDOWN (1<<14) -- #define PB1100_IRDA_TT (2<<14) /* 2/3 power */ -- #define PB1100_IRDA_OT (3<<14) /* 1/3 power */ -- #define PB1100_IRDA_FIR (1<<13) -- --#define PCMCIA_BOARD_REG 0xAE000010 -- #define PB1100_SD_WP1_RO (1<<15) /* read only */ -- #define PB1100_SD_WP0_RO (1<<14) /* read only */ -- #define PB1100_SD_PWR1 (1<<11) /* applies power to SD1 */ -- #define PB1100_SD_PWR0 (1<<10) /* applies power to SD0 */ -- #define PB1100_SEL_SD_CONN1 (1<<9) -- #define PB1100_SEL_SD_CONN0 (1<<8) -- #define PC_DEASSERT_RST (1<<7) -- #define PC_DRV_EN (1<<4) -- --#define PB1100_G_CONTROL 0xAE000014 /* graphics control */ -- --#define PB1100_RST_VDDI 0xAE00001C -- #define PB1100_SOFT_RESET (1<<15) /* clear to reset the board */ -- #define PB1100_VDDI_MASK (0x1F) -+#define BCSR_KSEG1_ADDR 0xAE000000 -+ -+/* -+ * Overlay data structure of the Pb1100 board registers. -+ * Registers located at physical 0E0000xx, KSEG1 0xAE0000xx -+ */ -+typedef volatile struct -+{ -+ /*00*/ unsigned short whoami; -+ unsigned short reserved0; -+ /*04*/ unsigned short status; -+ unsigned short reserved1; -+ /*08*/ unsigned short switches; -+ unsigned short reserved2; -+ /*0C*/ unsigned short resets; -+ unsigned short reserved3; -+ /*10*/ unsigned short pcmcia; -+ unsigned short reserved4; -+ /*14*/ unsigned short graphics; -+ unsigned short reserved5; -+ /*18*/ unsigned short leds; -+ unsigned short reserved6; -+ /*1C*/ unsigned short swreset; -+ unsigned short reserved7; -+ -+} BCSR; - --#define PB1100_LEDS 0xAE000018 - --/* 11:8 is 4 discreet LEDs. Clearing a bit illuminates the LED. -- * 7:0 is the LED Display's decimal points. -+/* -+ * Register/mask bit definitions for the BCSRs - */ --#define PB1100_HEX_LED 0xAE000018 -+#define BCSR_WHOAMI_DCID 0x000F -+#define BCSR_WHOAMI_CPLD 0x00F0 -+#define BCSR_WHOAMI_BOARD 0x0F00 -+ -+#define BCSR_STATUS_RS232_RI 0x0001 -+#define BCSR_STATUS_RS232_DSR 0x0002 -+#define BCSR_STATUS_RS232_CTS 0x0004 -+#define BCSR_STATUS_RS232_CD 0x0008 -+#define BCSR_STATUS_PCMCIA_VS_MASK 0x0030 -+#define BCSR_STATUS_TSC_BUSY 0x0040 -+#define BCSR_STATUS_SRAM_SIZ 0x0080 -+#define BCSR_STATUS_FLASH_L_STS 0x0100 -+#define BCSR_STATUS_FLASH_H_STS 0x0200 -+#define BCSR_STATUS_ROM_H_STS 0x0400 -+#define BCSR_STATUS_ROM_L_STS 0x0800 -+#define BCSR_STATUS_FLASH_WP 0x1000 -+#define BCSR_STATUS_SWAP_BOOT 0x2000 -+#define BCSR_STATUS_ROM_SIZ 0x4000 -+#define BCSR_STATUS_ROM_SEL 0x8000 -+ -+#define BCSR_SWITCHES_DIP 0x00FF -+#define BCSR_SWITCHES_DIP_1 0x0080 -+#define BCSR_SWITCHES_DIP_2 0x0040 -+#define BCSR_SWITCHES_DIP_3 0x0020 -+#define BCSR_SWITCHES_DIP_4 0x0010 -+#define BCSR_SWITCHES_DIP_5 0x0008 -+#define BCSR_SWITCHES_DIP_6 0x0004 -+#define BCSR_SWITCHES_DIP_7 0x0002 -+#define BCSR_SWITCHES_DIP_8 0x0001 -+#define BCSR_SWITCHES_ROTARY 0x0F00 -+#define BCSR_SWITCHES_SDO_CL 0x8000 -+ -+#define BCSR_RESETS_PHY0 0x0001 -+#define BCSR_RESETS_PHY1 0x0002 -+#define BCSR_RESETS_DC 0x0004 -+#define BCSR_RESETS_RS232_RTS 0x0100 -+#define BCSR_RESETS_RS232_DTR 0x0200 -+#define BCSR_RESETS_FIR_SEL 0x2000 -+#define BCSR_RESETS_IRDA_MODE_MASK 0xC000 -+#define BCSR_RESETS_IRDA_MODE_FULL 0x0000 -+#define BCSR_RESETS_IRDA_MODE_OFF 0x4000 -+#define BCSR_RESETS_IRDA_MODE_2_3 0x8000 -+#define BCSR_RESETS_IRDA_MODE_1_3 0xC000 -+ -+#define BCSR_PCMCIA_PC0VPP 0x0003 -+#define BCSR_PCMCIA_PC0VCC 0x000C -+#define BCSR_PCMCIA_PC0_DR_VEN 0x0010 -+#define BCSR_PCMCIA_PC0RST 0x0080 -+#define BCSR_PCMCIA_SEL_SD_CON0 0x0100 -+#define BCSR_PCMCIA_SEL_SD_CON1 0x0200 -+#define BCSR_PCMCIA_SD0_PWR 0x0400 -+#define BCSR_PCMCIA_SD1_PWR 0x0800 -+#define BCSR_PCMCIA_SD0_WP 0x4000 -+#define BCSR_PCMCIA_SD1_WP 0x8000 -+ -+#define PB1100_G_CONTROL 0xAE000014 -+#define BCSR_GRAPHICS_GPX_SMPASS 0x0010 -+#define BCSR_GRAPHICS_GPX_BIG_ENDIAN 0x0020 -+#define BCSR_GRAPHICS_GPX_RST 0x0040 -+ -+#define BCSR_LEDS_DECIMALS 0x00FF -+#define BCSR_LEDS_LED0 0x0100 -+#define BCSR_LEDS_LED1 0x0200 -+#define BCSR_LEDS_LED2 0x0400 -+#define BCSR_LEDS_LED3 0x0800 -+ -+#define BCSR_SWRESET_RESET 0x0080 -+#define BCSR_VDDI_VDI 0x001F - --/* PCMCIA PB1100 specific defines */ -+ -+ /* PCMCIA Pb1x00 specific defines */ - #define PCMCIA_MAX_SOCK 0 - #define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK+1) - -@@ -83,3 +136,4 @@ - #define SET_VCC_VPP(VCC, VPP) (((VCC)<<2) | ((VPP)<<0)) - - #endif /* __ASM_PB1100_H */ -+ -diff -Nur linux-2.4.32/include/asm-mips/pb1200.h linux-2.4.32.patched/include/asm-mips/pb1200.h ---- linux-2.4.32/include/asm-mips/pb1200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/pb1200.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,244 @@ -+/* -+ * AMD Alchemy PB1200 Referrence Board -+ * Board Registers defines. -+ * -+ * ######################################################################## -+ * -+ * This program is free software; you can distribute it and/or modify it -+ * under the terms of the GNU General Public License (Version 2) as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * for more details. -+ * -+ * You should have received a copy of the GNU General Public License along -+ * with this program; if not, write to the Free Software Foundation, Inc., -+ * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. -+ * -+ * ######################################################################## -+ * -+ * -+ */ -+#ifndef __ASM_PB1200_H -+#define __ASM_PB1200_H -+ -+#include <linux/types.h> -+ -+// This is defined in au1000.h with bogus value -+#undef AU1X00_EXTERNAL_INT -+ -+#define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_AC97_RX_CHAN DSCR_CMD0_PSC1_RX -+#define DBDMA_I2S_TX_CHAN DSCR_CMD0_PSC1_TX -+#define DBDMA_I2S_RX_CHAN DSCR_CMD0_PSC1_RX -+ -+/* SPI and SMB are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define SPI_PSC_BASE PSC0_BASE_ADDR -+#define SMBUS_PSC_BASE PSC0_BASE_ADDR -+/* AC97 and I2S are muxed on the Pb1200 board. -+ Refer to board documentation. -+ */ -+#define AC97_PSC_BASE PSC1_BASE_ADDR -+#define I2S_PSC_BASE PSC1_BASE_ADDR -+ -+#define BCSR_KSEG1_ADDR 0xAD800000 -+ -+typedef volatile struct -+{ -+ /*00*/ u16 whoami; -+ u16 reserved0; -+ /*04*/ u16 status; -+ u16 reserved1; -+ /*08*/ u16 switches; -+ u16 reserved2; -+ /*0C*/ u16 resets; -+ u16 reserved3; -+ -+ /*10*/ u16 pcmcia; -+ u16 reserved4; -+ /*14*/ u16 board; -+ u16 reserved5; -+ /*18*/ u16 disk_leds; -+ u16 reserved6; -+ /*1C*/ u16 system; -+ u16 reserved7; -+ -+ /*20*/ u16 intclr; -+ u16 reserved8; -+ /*24*/ u16 intset; -+ u16 reserved9; -+ /*28*/ u16 intclr_mask; -+ u16 reserved10; -+ /*2C*/ u16 intset_mask; -+ u16 reserved11; -+ -+ /*30*/ u16 sig_status; -+ u16 reserved12; -+ /*34*/ u16 int_status; -+ u16 reserved13; -+ /*38*/ u16 reserved14; -+ u16 reserved15; -+ /*3C*/ u16 reserved16; -+ u16 reserved17; -+ -+} BCSR; -+ -+static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; -+ -+/* -+ * Register bit definitions for the BCSRs -+ */ -+#define BCSR_WHOAMI_DCID 0x000F -+#define BCSR_WHOAMI_CPLD 0x00F0 -+#define BCSR_WHOAMI_BOARD 0x0F00 -+ -+#define BCSR_STATUS_PCMCIA0VS 0x0003 -+#define BCSR_STATUS_PCMCIA1VS 0x000C -+#define BCSR_STATUS_SWAPBOOT 0x0040 -+#define BCSR_STATUS_FLASHBUSY 0x0100 -+#define BCSR_STATUS_IDECBLID 0x0200 -+#define BCSR_STATUS_SD0WP 0x0400 -+#define BCSR_STATUS_SD1WP 0x0800 -+#define BCSR_STATUS_U0RXD 0x1000 -+#define BCSR_STATUS_U1RXD 0x2000 -+ -+#define BCSR_SWITCHES_OCTAL 0x00FF -+#define BCSR_SWITCHES_DIP_1 0x0080 -+#define BCSR_SWITCHES_DIP_2 0x0040 -+#define BCSR_SWITCHES_DIP_3 0x0020 -+#define BCSR_SWITCHES_DIP_4 0x0010 -+#define BCSR_SWITCHES_DIP_5 0x0008 -+#define BCSR_SWITCHES_DIP_6 0x0004 -+#define BCSR_SWITCHES_DIP_7 0x0002 -+#define BCSR_SWITCHES_DIP_8 0x0001 -+#define BCSR_SWITCHES_ROTARY 0x0F00 -+ -+#define BCSR_RESETS_ETH 0x0001 -+#define BCSR_RESETS_CAMERA 0x0002 -+#define BCSR_RESETS_DC 0x0004 -+#define BCSR_RESETS_IDE 0x0008 -+/* not resets but in the same register */ -+#define BCSR_RESETS_WSCFSM 0x0800 -+#define BCSR_RESETS_PCS0MUX 0x1000 -+#define BCSR_RESETS_PCS1MUX 0x2000 -+#define BCSR_RESETS_SPISEL 0x4000 -+#define BCSR_RESETS_SD1MUX 0x8000 -+ -+#define BCSR_PCMCIA_PC0VPP 0x0003 -+#define BCSR_PCMCIA_PC0VCC 0x000C -+#define BCSR_PCMCIA_PC0DRVEN 0x0010 -+#define BCSR_PCMCIA_PC0RST 0x0080 -+#define BCSR_PCMCIA_PC1VPP 0x0300 -+#define BCSR_PCMCIA_PC1VCC 0x0C00 -+#define BCSR_PCMCIA_PC1DRVEN 0x1000 -+#define BCSR_PCMCIA_PC1RST 0x8000 -+ -+#define BCSR_BOARD_LCDVEE 0x0001 -+#define BCSR_BOARD_LCDVDD 0x0002 -+#define BCSR_BOARD_LCDBL 0x0004 -+#define BCSR_BOARD_CAMSNAP 0x0010 -+#define BCSR_BOARD_CAMPWR 0x0020 -+#define BCSR_BOARD_SD0PWR 0x0040 -+#define BCSR_BOARD_SD1PWR 0x0080 -+ -+#define BCSR_LEDS_DECIMALS 0x00FF -+#define BCSR_LEDS_LED0 0x0100 -+#define BCSR_LEDS_LED1 0x0200 -+#define BCSR_LEDS_LED2 0x0400 -+#define BCSR_LEDS_LED3 0x0800 -+ -+#define BCSR_SYSTEM_VDDI 0x001F -+#define BCSR_SYSTEM_POWEROFF 0x4000 -+#define BCSR_SYSTEM_RESET 0x8000 -+ -+/* Bit positions for the different interrupt sources */ -+#define BCSR_INT_IDE 0x0001 -+#define BCSR_INT_ETH 0x0002 -+#define BCSR_INT_PC0 0x0004 -+#define BCSR_INT_PC0STSCHG 0x0008 -+#define BCSR_INT_PC1 0x0010 -+#define BCSR_INT_PC1STSCHG 0x0020 -+#define BCSR_INT_DC 0x0040 -+#define BCSR_INT_FLASHBUSY 0x0080 -+#define BCSR_INT_PC0INSERT 0x0100 -+#define BCSR_INT_PC0EJECT 0x0200 -+#define BCSR_INT_PC1INSERT 0x0400 -+#define BCSR_INT_PC1EJECT 0x0800 -+#define BCSR_INT_SD0INSERT 0x1000 -+#define BCSR_INT_SD0EJECT 0x2000 -+#define BCSR_INT_SD1INSERT 0x4000 -+#define BCSR_INT_SD1EJECT 0x8000 -+ -+#define AU1XXX_SMC91111_PHYS_ADDR (0x0D000300) -+#define AU1XXX_SMC91111_IRQ PB1200_ETH_INT -+ -+#define AU1XXX_ATA_PHYS_ADDR (0x0C800000) -+#define AU1XXX_ATA_PHYS_LEN (0x100) -+#define AU1XXX_ATA_REG_OFFSET (5) -+#define AU1XXX_ATA_INT PB1200_IDE_INT -+#define AU1XXX_ATA_DDMA_REQ DSCR_CMD0_DMA_REQ1; -+#define AU1XXX_ATA_RQSIZE 128 -+ -+#define NAND_PHYS_ADDR 0x1C000000 -+ -+/* Timing values as described in databook, * ns value stripped of -+ * lower 2 bits. -+ * These defines are here rather than an SOC1200 generic file because -+ * the parts chosen on another board may be different and may require -+ * different timings. -+ */ -+#define NAND_T_H (18 >> 2) -+#define NAND_T_PUL (30 >> 2) -+#define NAND_T_SU (30 >> 2) -+#define NAND_T_WH (30 >> 2) -+ -+/* Bitfield shift amounts */ -+#define NAND_T_H_SHIFT 0 -+#define NAND_T_PUL_SHIFT 4 -+#define NAND_T_SU_SHIFT 8 -+#define NAND_T_WH_SHIFT 12 -+ -+#define NAND_TIMING ((NAND_T_H & 0xF) << NAND_T_H_SHIFT) | \ -+ ((NAND_T_PUL & 0xF) << NAND_T_PUL_SHIFT) | \ -+ ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ -+ ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) -+ -+ -+/* -+ * External Interrupts for Pb1200 as of 8/6/2004. -+ * Bit positions in the CPLD registers can be calculated by taking -+ * the interrupt define and subtracting the PB1200_INT_BEGIN value. -+ * *example: IDE bis pos is = 64 - 64 -+ ETH bit pos is = 65 - 64 -+ */ -+#define PB1200_INT_BEGIN (AU1000_LAST_INTC1_INT + 1) -+#define PB1200_IDE_INT (PB1200_INT_BEGIN + 0) -+#define PB1200_ETH_INT (PB1200_INT_BEGIN + 1) -+#define PB1200_PC0_INT (PB1200_INT_BEGIN + 2) -+#define PB1200_PC0_STSCHG_INT (PB1200_INT_BEGIN + 3) -+#define PB1200_PC1_INT (PB1200_INT_BEGIN + 4) -+#define PB1200_PC1_STSCHG_INT (PB1200_INT_BEGIN + 5) -+#define PB1200_DC_INT (PB1200_INT_BEGIN + 6) -+#define PB1200_FLASHBUSY_INT (PB1200_INT_BEGIN + 7) -+#define PB1200_PC0_INSERT_INT (PB1200_INT_BEGIN + 8) -+#define PB1200_PC0_EJECT_INT (PB1200_INT_BEGIN + 9) -+#define PB1200_PC1_INSERT_INT (PB1200_INT_BEGIN + 10) -+#define PB1200_PC1_EJECT_INT (PB1200_INT_BEGIN + 11) -+#define PB1200_SD0_INSERT_INT (PB1200_INT_BEGIN + 12) -+#define PB1200_SD0_EJECT_INT (PB1200_INT_BEGIN + 13) -+#define PB1200_SD1_INSERT_INT (PB1200_INT_BEGIN + 14) -+#define PB1200_SD1_EJECT_INT (PB1200_INT_BEGIN + 15) -+ -+#define PB1200_INT_END (PB1200_INT_BEGIN + 15) -+ -+/* For drivers/pcmcia/au1000_db1x00.c */ -+#define BOARD_PC0_INT PB1200_PC0_INT -+#define BOARD_PC1_INT PB1200_PC1_INT -+#define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) -+ -+#endif /* __ASM_PB1200_H */ -+ -diff -Nur linux-2.4.32/include/asm-mips/pb1550.h linux-2.4.32.patched/include/asm-mips/pb1550.h ---- linux-2.4.32/include/asm-mips/pb1550.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/pb1550.h 2006-03-13 18:55:54.000000000 +0100 -@@ -30,13 +30,11 @@ - - #define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX - #define DBDMA_AC97_RX_CHAN DSCR_CMD0_PSC1_RX --#define DBDMA_I2S_TX_CHAN DSCR_CMD0_PSC3_TX --#define DBDMA_I2S_RX_CHAN DSCR_CMD0_PSC3_RX -- - #define SPI_PSC_BASE PSC0_BASE_ADDR - #define AC97_PSC_BASE PSC1_BASE_ADDR - #define SMBUS_PSC_BASE PSC2_BASE_ADDR - #define I2S_PSC_BASE PSC3_BASE_ADDR -+#define NAND_CS 1 - - #define BCSR_PHYS_ADDR 0xAF000000 - -@@ -160,9 +158,23 @@ - #define NAND_T_SU_SHIFT 8 - #define NAND_T_WH_SHIFT 12 - --#define NAND_TIMING ((NAND_T_H & 0xF) << NAND_T_H_SHIFT) | \ -- ((NAND_T_PUL & 0xF) << NAND_T_PUL_SHIFT) | \ -- ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ -- ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) -+#define NAND_TIMING ((NAND_T_H & 0xF) << NAND_T_H_SHIFT) | \ -+ ((NAND_T_PUL & 0xF) << NAND_T_PUL_SHIFT) | \ -+ ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ -+ ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) -+ -+/* -+ * Daughter card information. -+ */ -+#define DAUGHTER_CARD_BASE (0xAC000000) -+#define DAUGHTER_CARD_MEM_SIZE (0xADFFFFFF - DAUGHTER_CARD_BASE + 1) -+#define DAUGHTER_CARD_IRQ (AU1000_GPIO_3) -+ -+/* DC_IDE and DC_ETHERNET */ -+#define AU1XXX_ATA_PHYS_ADDR (0x0C000000) -+#define AU1XXX_ATA_REG_OFFSET (5) -+ -+#define AU1XXX_SMC91111_PHYS_ADDR (0x0C000300) -+#define AU1XXX_SMC91111_IRQ AU1000_GPIO_3 - - #endif /* __ASM_PB1550_H */ -diff -Nur linux-2.4.32/include/asm-mips/ptrace.h linux-2.4.32.patched/include/asm-mips/ptrace.h ---- linux-2.4.32/include/asm-mips/ptrace.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/ptrace.h 2006-03-13 18:57:11.000000000 +0100 -@@ -4,6 +4,7 @@ - * for more details. - * - * Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000 by Ralf Baechle -+ * Copyright (C) 2004 Maciej W. Rozycki - * - * Machine dependent structs and defines to help the user use - * the ptrace system call. -@@ -64,12 +65,10 @@ - "sw\t$22,"__str(PT_R22)"($29)\n\t" \ - "sw\t$23,"__str(PT_R23)"($29)\n\t" \ - "sw\t$30,"__str(PT_R30)"($29)\n\t" \ -+ "j\t_" #symbol "\n\t" \ - ".end\t" #symbol "\n\t" \ - ".size\t" #symbol",. - " #symbol) - --/* Used in declaration of save_static functions. */ --#define static_unused static __attribute__((unused)) -- - #endif /* !__ASSEMBLY__ */ - - /* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */ -diff -Nur linux-2.4.32/include/asm-mips/r4kcache.h linux-2.4.32.patched/include/asm-mips/r4kcache.h ---- linux-2.4.32/include/asm-mips/r4kcache.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/r4kcache.h 2006-03-13 18:55:59.000000000 +0100 -@@ -15,6 +15,18 @@ - #include <asm/asm.h> - #include <asm/cacheops.h> - -+#ifdef CONFIG_BCM4710 -+#define BCM4710_DUMMY_RREG() (((sbconfig_t *)(KSEG1ADDR(SB_ENUM_BASE + SBCONFIGOFF)))->sbimstate) -+ -+#define BCM4710_FILL_TLB(addr) (*(volatile unsigned long *)(addr)) -+#define BCM4710_PROTECTED_FILL_TLB(addr) ({ unsigned long x; get_dbe(x, (volatile unsigned long *)(addr)); }) -+#else -+#define BCM4710_DUMMY_RREG() -+ -+#define BCM4710_FILL_TLB(addr) -+#define BCM4710_PROTECTED_FILL_TLB(addr) -+#endif -+ - #define cache_op(op,addr) \ - __asm__ __volatile__( \ - " .set noreorder \n" \ -@@ -27,12 +39,25 @@ - - static inline void flush_icache_line_indexed(unsigned long addr) - { -- cache_op(Index_Invalidate_I, addr); -+ unsigned int way; -+ unsigned long ws_inc = 1UL << current_cpu_data.dcache.waybit; -+ -+ for (way = 0; way < current_cpu_data.dcache.ways; way++) { -+ cache_op(Index_Invalidate_I, addr); -+ addr += ws_inc; -+ } - } - - static inline void flush_dcache_line_indexed(unsigned long addr) - { -- cache_op(Index_Writeback_Inv_D, addr); -+ unsigned int way; -+ unsigned long ws_inc = 1UL << current_cpu_data.dcache.waybit; -+ -+ for (way = 0; way < current_cpu_data.dcache.ways; way++) { -+ BCM4710_DUMMY_RREG(); -+ cache_op(Index_Writeback_Inv_D, addr); -+ addr += ws_inc; -+ } - } - - static inline void flush_scache_line_indexed(unsigned long addr) -@@ -47,6 +72,7 @@ - - static inline void flush_dcache_line(unsigned long addr) - { -+ BCM4710_DUMMY_RREG(); - cache_op(Hit_Writeback_Inv_D, addr); - } - -@@ -91,6 +117,7 @@ - */ - static inline void protected_writeback_dcache_line(unsigned long addr) - { -+ BCM4710_DUMMY_RREG(); - __asm__ __volatile__( - ".set noreorder\n\t" - ".set mips3\n" -@@ -138,6 +165,62 @@ - : "r" (base), \ - "i" (op)); - -+#define cache_unroll(base,op) \ -+ __asm__ __volatile__(" \ -+ .set noreorder; \ -+ .set mips3; \ -+ cache %1, (%0); \ -+ .set mips0; \ -+ .set reorder" \ -+ : \ -+ : "r" (base), \ -+ "i" (op)); -+ -+ -+static inline void blast_dcache(void) -+{ -+ unsigned long start = KSEG0; -+ unsigned long dcache_size = current_cpu_data.dcache.waysize * current_cpu_data.dcache.ways; -+ unsigned long end = (start + dcache_size); -+ -+ while(start < end) { -+ BCM4710_DUMMY_RREG(); -+ cache_unroll(start,Index_Writeback_Inv_D); -+ start += current_cpu_data.dcache.linesz; -+ } -+} -+ -+static inline void blast_dcache_page(unsigned long page) -+{ -+ unsigned long start = page; -+ unsigned long end = start + PAGE_SIZE; -+ -+ BCM4710_FILL_TLB(start); -+ do { -+ BCM4710_DUMMY_RREG(); -+ cache_unroll(start,Hit_Writeback_Inv_D); -+ start += current_cpu_data.dcache.linesz; -+ } while (start < end); -+} -+ -+static inline void blast_dcache_page_indexed(unsigned long page) -+{ -+ unsigned long start = page; -+ unsigned long end = start + PAGE_SIZE; -+ unsigned long ws_inc = 1UL << current_cpu_data.dcache.waybit; -+ unsigned long ws_end = current_cpu_data.dcache.ways << -+ current_cpu_data.dcache.waybit; -+ unsigned long ws, addr; -+ -+ for (ws = 0; ws < ws_end; ws += ws_inc) { -+ start = page + ws; -+ for (addr = start; addr < end; addr += current_cpu_data.dcache.linesz) { -+ BCM4710_DUMMY_RREG(); -+ cache_unroll(addr,Index_Writeback_Inv_D); -+ } -+ } -+} -+ - static inline void blast_dcache16(void) - { - unsigned long start = KSEG0; -@@ -148,8 +231,9 @@ - unsigned long ws, addr; - - for (ws = 0; ws < ws_end; ws += ws_inc) -- for (addr = start; addr < end; addr += 0x200) -+ for (addr = start; addr < end; addr += 0x200) { - cache16_unroll32(addr|ws,Index_Writeback_Inv_D); -+ } - } - - static inline void blast_dcache16_page(unsigned long page) -@@ -173,8 +257,9 @@ - unsigned long ws, addr; - - for (ws = 0; ws < ws_end; ws += ws_inc) -- for (addr = start; addr < end; addr += 0x200) -+ for (addr = start; addr < end; addr += 0x200) { - cache16_unroll32(addr|ws,Index_Writeback_Inv_D); -+ } - } - - static inline void blast_icache16(void) -@@ -196,6 +281,7 @@ - unsigned long start = page; - unsigned long end = start + PAGE_SIZE; - -+ BCM4710_FILL_TLB(start); - do { - cache16_unroll32(start,Hit_Invalidate_I); - start += 0x200; -@@ -281,6 +367,7 @@ - : "r" (base), \ - "i" (op)); - -+ - static inline void blast_dcache32(void) - { - unsigned long start = KSEG0; -@@ -291,8 +378,9 @@ - unsigned long ws, addr; - - for (ws = 0; ws < ws_end; ws += ws_inc) -- for (addr = start; addr < end; addr += 0x400) -+ for (addr = start; addr < end; addr += 0x400) { - cache32_unroll32(addr|ws,Index_Writeback_Inv_D); -+ } - } - - static inline void blast_dcache32_page(unsigned long page) -@@ -316,8 +404,9 @@ - unsigned long ws, addr; - - for (ws = 0; ws < ws_end; ws += ws_inc) -- for (addr = start; addr < end; addr += 0x400) -+ for (addr = start; addr < end; addr += 0x400) { - cache32_unroll32(addr|ws,Index_Writeback_Inv_D); -+ } - } - - static inline void blast_icache32(void) -@@ -339,6 +428,7 @@ - unsigned long start = page; - unsigned long end = start + PAGE_SIZE; - -+ BCM4710_FILL_TLB(start); - do { - cache32_unroll32(start,Hit_Invalidate_I); - start += 0x400; -@@ -443,6 +533,7 @@ - unsigned long start = page; - unsigned long end = start + PAGE_SIZE; - -+ BCM4710_FILL_TLB(start); - do { - cache64_unroll32(start,Hit_Invalidate_I); - start += 0x800; -@@ -567,4 +658,17 @@ - cache128_unroll32(addr|ws,Index_Writeback_Inv_SD); - } - -+extern inline void fill_icache_line(unsigned long addr) -+{ -+ __asm__ __volatile__( -+ ".set noreorder\n\t" -+ ".set mips3\n\t" -+ "cache %1, (%0)\n\t" -+ ".set mips0\n\t" -+ ".set reorder" -+ : -+ : "r" (addr), -+ "i" (Fill)); -+} -+ - #endif /* __ASM_R4KCACHE_H */ -diff -Nur linux-2.4.32/include/asm-mips/reg.h linux-2.4.32.patched/include/asm-mips/reg.h ---- linux-2.4.32/include/asm-mips/reg.h 2002-08-03 02:39:45.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/reg.h 2006-03-13 18:55:54.000000000 +0100 -@@ -45,6 +45,9 @@ - /* - * k0/k1 unsaved - */ -+#define EF_REG26 32 -+#define EF_REG27 33 -+ - #define EF_REG28 34 - #define EF_REG29 35 - #define EF_REG30 36 -@@ -60,6 +63,7 @@ - #define EF_CP0_BADVADDR 41 - #define EF_CP0_STATUS 42 - #define EF_CP0_CAUSE 43 -+#define EF_UNUSED0 44 - - #define EF_SIZE 180 /* size in bytes */ - -diff -Nur linux-2.4.32/include/asm-mips/serial.h linux-2.4.32.patched/include/asm-mips/serial.h ---- linux-2.4.32/include/asm-mips/serial.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/serial.h 2006-03-13 18:55:59.000000000 +0100 -@@ -223,6 +223,13 @@ - #define TXX927_SERIAL_PORT_DEFNS - #endif - -+#ifdef CONFIG_BCM947XX -+/* reserve 4 ports to be configured at runtime */ -+#define BCM947XX_SERIAL_PORT_DEFNS { 0, }, { 0, }, { 0, }, { 0, }, -+#else -+#define BCM947XX_SERIAL_PORT_DEFNS -+#endif -+ - #ifdef CONFIG_HAVE_STD_PC_SERIAL_PORT - #define STD_SERIAL_PORT_DEFNS \ - /* UART CLK PORT IRQ FLAGS */ \ -@@ -470,6 +477,7 @@ - #define SERIAL_PORT_DFNS \ - ATLAS_SERIAL_PORT_DEFNS \ - AU1000_SERIAL_PORT_DEFNS \ -+ BCM947XX_SERIAL_PORT_DEFNS \ - COBALT_SERIAL_PORT_DEFNS \ - DDB5477_SERIAL_PORT_DEFNS \ - EV96100_SERIAL_PORT_DEFNS \ -diff -Nur linux-2.4.32/include/asm-mips/sgi/hpc3.h linux-2.4.32.patched/include/asm-mips/sgi/hpc3.h ---- linux-2.4.32/include/asm-mips/sgi/hpc3.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/sgi/hpc3.h 2006-03-13 18:55:54.000000000 +0100 -@@ -128,26 +128,26 @@ - volatile u32 rx_gfptr; /* current GIO fifo ptr */ - volatile u32 rx_dfptr; /* current device fifo ptr */ - u32 _unused1; /* padding */ -- volatile u32 rx_reset; /* reset register */ --#define HPC3_ERXRST_CRESET 0x1 /* Reset dma channel and external controller */ --#define HPC3_ERXRST_CLRIRQ 0x2 /* Clear channel interrupt */ --#define HPC3_ERXRST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */ -- -- volatile u32 rx_dconfig; /* DMA configuration register */ --#define HPC3_ERXDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */ --#define HPC3_ERXDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */ --#define HPC3_ERXDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */ --#define HPC3_ERXDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */ --#define HPC3_ERXDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */ --#define HPC3_ERXDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */ --#define HPC3_ERXDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */ --#define HPC3_ERXDCFG_PTO 0x30000 /* Programmed timeout value for above two */ -- -- volatile u32 rx_pconfig; /* PIO configuration register */ --#define HPC3_ERXPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */ --#define HPC3_ERXPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */ --#define HPC3_ERXPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */ --#define HPC3_ERXPCFG_TST 0x1000 /* Diagnistic ram test feature bit */ -+ volatile u32 reset; /* reset register */ -+#define HPC3_ERST_CRESET 0x1 /* Reset dma channel and external controller */ -+#define HPC3_ERST_CLRIRQ 0x2 /* Clear channel interrupt */ -+#define HPC3_ERST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */ -+ -+ volatile u32 dconfig; /* DMA configuration register */ -+#define HPC3_EDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */ -+#define HPC3_EDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */ -+#define HPC3_EDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */ -+#define HPC3_EDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */ -+#define HPC3_EDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */ -+#define HPC3_EDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */ -+#define HPC3_EDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */ -+#define HPC3_EDCFG_PTO 0x30000 /* Programmed timeout value for above two */ -+ -+ volatile u32 pconfig; /* PIO configuration register */ -+#define HPC3_EPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */ -+#define HPC3_EPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */ -+#define HPC3_EPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */ -+#define HPC3_EPCFG_TST 0x1000 /* Diagnistic ram test feature bit */ - - u32 _unused2[0x1000/4 - 8]; /* padding */ - -@@ -221,7 +221,7 @@ - #define HPC3_BESTAT_PIDMASK 0x3f700 /* DMA channel parity identifier */ - - u32 _unused1[0x14000/4 - 5]; /* padding */ -- -+ - /* Now direct PIO per-HPC3 peripheral access to external regs. */ - volatile u32 scsi0_ext[256]; /* SCSI channel 0 external regs */ - u32 _unused2[0x7c00/4]; -@@ -304,7 +304,7 @@ - volatile u32 bbram[8192-50-14]; /* Battery backed ram */ - }; - --/* -+/* - * It is possible to have two HPC3's within the address space on - * one machine, though only having one is more likely on an Indy. - */ -diff -Nur linux-2.4.32/include/asm-mips/signal.h linux-2.4.32.patched/include/asm-mips/signal.h ---- linux-2.4.32/include/asm-mips/signal.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/signal.h 2006-03-13 18:57:11.000000000 +0100 -@@ -111,6 +111,12 @@ - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x02000000 - -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 -+#endif -+ - #endif /* __KERNEL__ */ - - #define SIG_BLOCK 1 /* for blocking signals */ -diff -Nur linux-2.4.32/include/asm-mips/stackframe.h linux-2.4.32.patched/include/asm-mips/stackframe.h ---- linux-2.4.32/include/asm-mips/stackframe.h 2002-11-29 00:53:15.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/stackframe.h 2006-03-13 18:55:59.000000000 +0100 -@@ -209,6 +209,20 @@ - - #endif - -+#if defined(CONFIG_BCM4710) || defined(CONFIG_BCM4704) -+ -+#undef RESTORE_SP_AND_RET -+#define RESTORE_SP_AND_RET \ -+ lw sp, PT_R29(sp); \ -+ .set mips3; \ -+ nop; \ -+ nop; \ -+ eret; \ -+ .set mips0 -+ -+#endif -+ -+ - #define RESTORE_SP \ - lw sp, PT_R29(sp); \ - -diff -Nur linux-2.4.32/include/asm-mips/timex.h linux-2.4.32.patched/include/asm-mips/timex.h ---- linux-2.4.32/include/asm-mips/timex.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/timex.h 2006-03-13 18:57:11.000000000 +0100 -@@ -31,6 +31,19 @@ - return read_c0_count(); - } - -+extern __u32 get_htscl(void); -+extern __u64 get_tscll(void); -+ -+#define rdtsc(low, high) \ -+ high = get_htscl(); \ -+ low = read_c0_count(); -+ -+#define rdtscl(low) \ -+ low = read_c0_count(); -+ -+#define rdtscll(val) \ -+ val = get_tscll(); -+ - #define vxtime_lock() do {} while (0) - #define vxtime_unlock() do {} while (0) - -diff -Nur linux-2.4.32/include/asm-mips/tx4927/tx4927.h linux-2.4.32.patched/include/asm-mips/tx4927/tx4927.h ---- linux-2.4.32/include/asm-mips/tx4927/tx4927.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips/tx4927/tx4927.h 2006-03-13 18:55:54.000000000 +0100 -@@ -88,8 +88,8 @@ - - - /* TX4927 Configuration registers (64-bit registers) */ --#define TX4927_CONFIG_BASE 0xe300 --#define TX4927_CONFIG_CCFG 0xe300 -+#define TX4927_CONFIG_BASE 0xe000 -+#define TX4927_CONFIG_CCFG 0xe000 - #define TX4927_CONFIG_CCFG_RESERVED_42_63 BM_63_42 - #define TX4927_CONFIG_CCFG_WDRST BM_41_41 - #define TX4927_CONFIG_CCFG_WDREXEN BM_40_40 -@@ -124,14 +124,14 @@ - #define TX4927_CONFIG_CCFG_ENDIAN BM_02_02 - #define TX4927_CONFIG_CCFG_ARMODE BM_01_01 - #define TX4927_CONFIG_CCFG_ACEHOLD BM_00_00 --#define TX4927_CONFIG_REVID 0xe308 -+#define TX4927_CONFIG_REVID 0xe008 - #define TX4927_CONFIG_REVID_RESERVED_32_63 BM_32_63 - #define TX4927_CONFIG_REVID_PCODE BM_16_31 - #define TX4927_CONFIG_REVID_MJERREV BM_12_15 - #define TX4927_CONFIG_REVID_MINEREV BM_08_11 - #define TX4927_CONFIG_REVID_MJREV BM_04_07 - #define TX4927_CONFIG_REVID_MINREV BM_00_03 --#define TX4927_CONFIG_PCFG 0xe310 -+#define TX4927_CONFIG_PCFG 0xe010 - #define TX4927_CONFIG_PCFG_RESERVED_57_63 BM_57_63 - #define TX4927_CONFIG_PCFG_DRVDATA BM_56_56 - #define TX4927_CONFIG_PCFG_DRVCB BM_55_55 -@@ -197,10 +197,10 @@ - #define TX4927_CONFIG_PCFG_DMASEL0_SIO1 BM_00_00 - #define TX4927_CONFIG_PCFG_DMASEL0_ACLC0 BM_01_01 - #define TX4927_CONFIG_PCFG_DMASEL0_ACLC2 BM_00_01 --#define TX4927_CONFIG_TOEA 0xe318 -+#define TX4927_CONFIG_TOEA 0xe018 - #define TX4927_CONFIG_TOEA_RESERVED_36_63 BM_36_63 - #define TX4927_CONFIG_TOEA_TOEA BM_00_35 --#define TX4927_CONFIG_CLKCTR 0xe320 -+#define TX4927_CONFIG_CLKCTR 0xe020 - #define TX4927_CONFIG_CLKCTR_RESERVED_26_63 BM_26_63 - #define TX4927_CONFIG_CLKCTR_ACLCKD BM_25_25 - #define TX4927_CONFIG_CLKCTR_PIOCKD BM_24_24 -@@ -223,7 +223,7 @@ - #define TX4927_CONFIG_CLKCTR_TM2RST BM_02_02 - #define TX4927_CONFIG_CLKCTR_SIO0RST BM_01_01 - #define TX4927_CONFIG_CLKCTR_SIO1RST BM_00_00 --#define TX4927_CONFIG_GARBC 0xe330 -+#define TX4927_CONFIG_GARBC 0xe030 - #define TX4927_CONFIG_GARBC_RESERVED_10_63 BM_10_63 - #define TX4927_CONFIG_GARBC_SET_09 BM_09_09 - #define TX4927_CONFIG_GARBC_ARBMD BM_08_08 -@@ -243,7 +243,7 @@ - #define TX4927_CONFIG_GARBC_PRIORITY_H3_PDMAC BM_00_00 - #define TX4927_CONFIG_GARBC_PRIORITY_H3_DMAC BM_01_01 - #define TX4927_CONFIG_GARBC_PRIORITY_H3_BAD_VALUE BM_00_01 --#define TX4927_CONFIG_RAMP 0xe348 -+#define TX4927_CONFIG_RAMP 0xe048 - #define TX4927_CONFIG_RAMP_RESERVED_20_63 BM_20_63 - #define TX4927_CONFIG_RAMP_RAMP BM_00_19 - #define TX4927_CONFIG_LIMIT 0xefff -@@ -456,7 +456,7 @@ - #define TX4927_ACLC_ACINTSTS 0xf710 - #define TX4927_ACLC_ACINTMSTS 0xf714 - #define TX4927_ACLC_ACINTEN 0xf718 --#define TX4927_ACLC_ACINTDIS 0xfR71c -+#define TX4927_ACLC_ACINTDIS 0xf71c - #define TX4927_ACLC_ACSEMAPH 0xf720 - #define TX4927_ACLC_ACGPIDAT 0xf740 - #define TX4927_ACLC_ACGPODAT 0xf744 -diff -Nur linux-2.4.32/include/asm-mips/uaccess.h linux-2.4.32.patched/include/asm-mips/uaccess.h ---- linux-2.4.32/include/asm-mips/uaccess.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/uaccess.h 2006-03-13 18:57:11.000000000 +0100 -@@ -149,7 +149,7 @@ - * Returns zero on success, or -EFAULT on error. - */ - #define put_user(x,ptr) \ -- __put_user_check((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr))) -+ __put_user_check((x),(ptr),sizeof(*(ptr))) - - /* - * get_user: - Get a simple variable from user space. -@@ -169,7 +169,7 @@ - * On error, the variable @x is set to zero. - */ - #define get_user(x,ptr) \ -- __get_user_check((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr))) -+ __get_user_check((x),(ptr),sizeof(*(ptr))) - - /* - * __put_user: - Write a simple value into user space, with less checking. -@@ -191,7 +191,7 @@ - * Returns zero on success, or -EFAULT on error. - */ - #define __put_user(x,ptr) \ -- __put_user_nocheck((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr))) -+ __put_user_nocheck((x),(ptr),sizeof(*(ptr))) - - /* - * __get_user: - Get a simple variable from user space, with less checking. -@@ -214,7 +214,7 @@ - * On error, the variable @x is set to zero. - */ - #define __get_user(x,ptr) \ -- __get_user_nocheck((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr))) -+ __get_user_nocheck((x),(ptr),sizeof(*(ptr))) - - struct __large_struct { unsigned long buf[100]; }; - #define __m(x) (*(struct __large_struct *)(x)) -@@ -232,7 +232,7 @@ - #define __get_user_nocheck(x,ptr,size) \ - ({ \ - long __gu_err = 0; \ -- __typeof(*(ptr)) __gu_val = 0; \ -+ __typeof(*(ptr)) __gu_val = (__typeof(*(ptr))) 0; \ - long __gu_addr; \ - __gu_addr = (long) (ptr); \ - switch (size) { \ -diff -Nur linux-2.4.32/include/asm-mips/unistd.h linux-2.4.32.patched/include/asm-mips/unistd.h ---- linux-2.4.32/include/asm-mips/unistd.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips/unistd.h 2006-03-13 18:55:54.000000000 +0100 -@@ -760,7 +760,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - /* -@@ -788,7 +788,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall2(type,name,atype,a,btype,b) \ -@@ -813,7 +813,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall3(type,name,atype,a,btype,b,ctype,c) \ -@@ -839,7 +839,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall4(type,name,atype,a,btype,b,ctype,c,dtype,d) \ -@@ -865,7 +865,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #if (_MIPS_SIM == _MIPS_SIM_ABI32) -@@ -902,7 +902,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ -@@ -935,7 +935,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */ -@@ -966,7 +966,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ -@@ -995,7 +995,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ -diff -Nur linux-2.4.32/include/asm-mips64/checksum.h linux-2.4.32.patched/include/asm-mips64/checksum.h ---- linux-2.4.32/include/asm-mips64/checksum.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/checksum.h 2006-03-13 18:55:54.000000000 +0100 -@@ -144,7 +144,7 @@ - "daddu\t%0, %4\n\t" - "dsll32\t$1, %0, 0\n\t" - "daddu\t%0, $1\n\t" -- "dsrl32\t%0, %0, 0\n\t" -+ "dsra32\t%0, %0, 0\n\t" - ".set\tat" - : "=&r" (sum) - : "0" (daddr), "r"(saddr), -diff -Nur linux-2.4.32/include/asm-mips64/elf.h linux-2.4.32.patched/include/asm-mips64/elf.h ---- linux-2.4.32/include/asm-mips64/elf.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/elf.h 2006-03-13 18:55:54.000000000 +0100 -@@ -64,9 +64,10 @@ - #define USE_ELF_CORE_DUMP - #define ELF_EXEC_PAGESIZE PAGE_SIZE - --#define ELF_CORE_COPY_REGS(_dest,_regs) \ -- memcpy((char *) &_dest, (char *) _regs, \ -- sizeof(struct pt_regs)); -+extern void dump_regs(elf_greg_t *, struct pt_regs *regs); -+ -+#define ELF_CORE_COPY_REGS(elf_regs, regs) \ -+ dump_regs((elf_greg_t *)&(elf_regs), regs); - - /* This yields a mask that user programs can use to figure out what - instruction set this cpu supports. This could be done in userspace, -diff -Nur linux-2.4.32/include/asm-mips64/hazards.h linux-2.4.32.patched/include/asm-mips64/hazards.h ---- linux-2.4.32/include/asm-mips64/hazards.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/hazards.h 2006-03-13 18:55:54.000000000 +0100 -@@ -3,7 +3,7 @@ - * License. See the file "COPYING" in the main directory of this archive - * for more details. - * -- * Copyright (C) 2003 Ralf Baechle -+ * Copyright (C) 2003, 2004 Ralf Baechle - */ - #ifndef _ASM_HAZARDS_H - #define _ASM_HAZARDS_H -@@ -12,37 +12,200 @@ - - #ifdef __ASSEMBLY__ - -+ .macro _ssnop -+ sll $0, $0, 1 -+ .endm -+ - /* - * RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent - * use of the JTLB for instructions should not occur for 4 cpu cycles and use - * for data translations should not occur for 3 cpu cycles. - */ - #ifdef CONFIG_CPU_RM9000 --#define rm9000_tlb_hazard \ -+ -+#define mtc0_tlbw_hazard \ -+ .set push; \ - .set mips32; \ -- ssnop; ssnop; ssnop; ssnop; \ -- .set mips0 -+ _ssnop; _ssnop; _ssnop; _ssnop; \ -+ .set pop -+ -+#define tlbw_eret_hazard \ -+ .set push; \ -+ .set mips32; \ -+ _ssnop; _ssnop; _ssnop; _ssnop; \ -+ .set pop -+ - #else --#define rm9000_tlb_hazard -+ -+/* -+ * The taken branch will result in a two cycle penalty for the two killed -+ * instructions on R4000 / R4400. Other processors only have a single cycle -+ * hazard so this is nice trick to have an optimal code for a range of -+ * processors. -+ */ -+#define mtc0_tlbw_hazard \ -+ b . + 8 -+#define tlbw_eret_hazard \ -+ nop - #endif - -+/* -+ * mtc0->mfc0 hazard -+ * The 24K has a 2 cycle mtc0/mfc0 execution hazard. -+ * It is a MIPS32R2 processor so ehb will clear the hazard. -+ */ -+ -+#ifdef CONFIG_CPU_MIPSR2 -+/* -+ * Use a macro for ehb unless explicit support for MIPSR2 is enabled -+ */ -+ .macro ehb -+ sll $0, $0, 3 -+ .endm -+ -+#define irq_enable_hazard \ -+ ehb # irq_enable_hazard -+ -+#define irq_disable_hazard \ -+ ehb # irq_disable_hazard -+ -+#elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_RM9000) -+ -+/* -+ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. -+ */ -+ -+#define irq_enable_hazard -+ -+#define irq_disable_hazard -+ - #else - - /* -+ * Classic MIPS needs 1 - 3 nops or ssnops -+ */ -+#define irq_enable_hazard -+#define irq_disable_hazard \ -+ _ssnop; _ssnop; _ssnop -+ -+#endif -+ -+#else /* __ASSEMBLY__ */ -+ -+/* - * RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent - * use of the JTLB for instructions should not occur for 4 cpu cycles and use - * for data translations should not occur for 3 cpu cycles. - */ - #ifdef CONFIG_CPU_RM9000 --#define rm9000_tlb_hazard() \ -+ -+#define mtc0_tlbw_hazard() \ -+ __asm__ __volatile__( \ -+ ".set\tmips32\n\t" \ -+ "_ssnop; _ssnop; _ssnop; _ssnop\n\t" \ -+ ".set\tmips0") -+ -+#define tlbw_use_hazard() \ - __asm__ __volatile__( \ - ".set\tmips32\n\t" \ -- "ssnop; ssnop; ssnop; ssnop\n\t" \ -+ "_ssnop; _ssnop; _ssnop; _ssnop\n\t" \ - ".set\tmips0") - #else --#define rm9000_tlb_hazard() do { } while (0) -+ -+/* -+ * Overkill warning ... -+ */ -+#define mtc0_tlbw_hazard() \ -+ __asm__ __volatile__( \ -+ ".set noreorder\n\t" \ -+ "nop; nop; nop; nop; nop; nop;\n\t" \ -+ ".set reorder\n\t") -+ -+#define tlbw_use_hazard() \ -+ __asm__ __volatile__( \ -+ ".set noreorder\n\t" \ -+ "nop; nop; nop; nop; nop; nop;\n\t" \ -+ ".set reorder\n\t") -+ - #endif - -+/* -+ * mtc0->mfc0 hazard -+ * The 24K has a 2 cycle mtc0/mfc0 execution hazard. -+ * It is a MIPS32R2 processor so ehb will clear the hazard. -+ */ -+ -+#ifdef CONFIG_CPU_MIPSR2 -+/* -+ * Use a macro for ehb unless explicit support for MIPSR2 is enabled -+ */ -+__asm__( -+ " .macro ehb \n\t" -+ " sll $0, $0, 3 \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_enable_hazard \n\t" -+ " ehb \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " ehb \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() \ -+ __asm__ __volatile__( \ -+ "ehb\t\t\t\t# irq_enable_hazard") -+ -+#define irq_disable_hazard() \ -+ __asm__ __volatile__( \ -+ "ehb\t\t\t\t# irq_disable_hazard") -+ -+#elif defined(CONFIG_CPU_R10000) -+ -+/* -+ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. -+ */ -+ -+__asm__( -+ " .macro\tirq_enable_hazard \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() do { } while (0) -+#define irq_disable_hazard() do { } while (0) -+ -+#else -+ -+/* -+ * Default for classic MIPS processors. Assume worst case hazards but don't -+ * care about the irq_enable_hazard - sooner or later the hardware will -+ * enable it and we don't care when exactly. -+ */ -+ -+__asm__( -+ " .macro _ssnop \n\t" -+ " sll $0, $2, 1 \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " # \n\t" -+ " # There is a hazard but we do not care \n\t" -+ " # \n\t" -+ " .macro\tirq_enable_hazard \n\t" -+ " .endm \n\t" -+ " \n\t" -+ " .macro\tirq_disable_hazard \n\t" -+ " _ssnop; _ssnop; _ssnop \n\t" -+ " .endm"); -+ -+#define irq_enable_hazard() do { } while (0) -+#define irq_disable_hazard() \ -+ __asm__ __volatile__( \ -+ "_ssnop; _ssnop; _ssnop;\t\t# irq_disable_hazard") -+ - #endif - -+#endif /* __ASSEMBLY__ */ -+ - #endif /* _ASM_HAZARDS_H */ -diff -Nur linux-2.4.32/include/asm-mips64/ide.h linux-2.4.32.patched/include/asm-mips64/ide.h ---- linux-2.4.32/include/asm-mips64/ide.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips64/ide.h 2006-03-13 18:55:54.000000000 +0100 -@@ -32,12 +32,12 @@ - - extern struct ide_ops *ide_ops; - --static __inline__ int ide_default_irq(ide_ioreg_t base) -+static inline int ide_default_irq(ide_ioreg_t base) - { - return ide_ops->ide_default_irq(base); - } - --static __inline__ ide_ioreg_t ide_default_io_base(int index) -+static inline ide_ioreg_t ide_default_io_base(int index) - { - return ide_ops->ide_default_io_base(index); - } -@@ -48,7 +48,7 @@ - ide_ops->ide_init_hwif_ports(hw, data_port, ctrl_port, irq); - } - --static __inline__ void ide_init_default_hwifs(void) -+static inline void ide_init_default_hwifs(void) - { - #ifndef CONFIG_BLK_DEV_IDEPCI - hw_regs_t hw; -@@ -68,7 +68,89 @@ - #define ide_ack_intr(hwif) ((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1) - #endif - --#include <asm-generic/ide_iops.h> -+/* MIPS port and memory-mapped I/O string operations. */ -+ -+static inline void __ide_flush_dcache_range(unsigned long addr, unsigned long size) -+{ -+ if (cpu_has_dc_aliases) { -+ unsigned long end = addr + size; -+ for (; addr < end; addr += PAGE_SIZE) -+ flush_dcache_page(virt_to_page(addr)); -+ } -+} -+ -+static inline void __ide_insw(unsigned long port, void *addr, -+ unsigned int count) -+{ -+ insw(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 2); -+} -+ -+static inline void __ide_insl(unsigned long port, void *addr, unsigned int count) -+{ -+ insl(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 4); -+} -+ -+static inline void __ide_outsw(unsigned long port, const void *addr, -+ unsigned long count) -+{ -+ outsw(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 2); -+} -+ -+static inline void __ide_outsl(unsigned long port, const void *addr, -+ unsigned long count) -+{ -+ outsl(port, addr, count); -+ __ide_flush_dcache_range((unsigned long)addr, count * 4); -+} -+ -+static inline void __ide_mm_insw(unsigned long port, void *addr, u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ *(u16 *)addr = readw(port); -+ addr += 2; -+ } -+ __ide_flush_dcache_range(start, count * 2); -+} -+ -+static inline void __ide_mm_insl(unsigned long port, void *addr, u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ *(u32 *)addr = readl(port); -+ addr += 4; -+ } -+ __ide_flush_dcache_range(start, count * 4); -+} -+ -+static inline void __ide_mm_outsw(unsigned long port, const void *addr, -+ u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ writew(*(u16 *)addr, port); -+ addr += 2; -+ } -+ __ide_flush_dcache_range(start, count * 2); -+} -+ -+static inline void __ide_mm_outsl(unsigned long port, const void *addr, -+ u32 count) -+{ -+ unsigned long start = (unsigned long) addr; -+ -+ while (count--) { -+ writel(*(u32 *)addr, port); -+ addr += 4; -+ } -+ __ide_flush_dcache_range(start, count * 4); -+} - - #endif /* __KERNEL__ */ - -diff -Nur linux-2.4.32/include/asm-mips64/io.h linux-2.4.32.patched/include/asm-mips64/io.h ---- linux-2.4.32/include/asm-mips64/io.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/io.h 2006-03-13 18:55:54.000000000 +0100 -@@ -414,7 +414,8 @@ - return __ioswab32(__val); - } - --static inline void __outsb(unsigned long port, void *addr, unsigned int count) -+static inline void __outsb(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outb(*(u8 *)addr, port); -@@ -430,7 +431,8 @@ - } - } - --static inline void __outsw(unsigned long port, void *addr, unsigned int count) -+static inline void __outsw(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outw(*(u16 *)addr, port); -@@ -446,7 +448,8 @@ - } - } - --static inline void __outsl(unsigned long port, void *addr, unsigned int count) -+static inline void __outsl(unsigned long port, const void *addr, -+ unsigned int count) - { - while (count--) { - outl(*(u32 *)addr, port); -diff -Nur linux-2.4.32/include/asm-mips64/mipsregs.h linux-2.4.32.patched/include/asm-mips64/mipsregs.h ---- linux-2.4.32/include/asm-mips64/mipsregs.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/mipsregs.h 2006-03-13 18:55:54.000000000 +0100 -@@ -757,10 +757,18 @@ - #define read_c0_config1() __read_32bit_c0_register($16, 1) - #define read_c0_config2() __read_32bit_c0_register($16, 2) - #define read_c0_config3() __read_32bit_c0_register($16, 3) -+#define read_c0_config4() __read_32bit_c0_register($16, 4) -+#define read_c0_config5() __read_32bit_c0_register($16, 5) -+#define read_c0_config6() __read_32bit_c0_register($16, 6) -+#define read_c0_config7() __read_32bit_c0_register($16, 7) - #define write_c0_config(val) __write_32bit_c0_register($16, 0, val) - #define write_c0_config1(val) __write_32bit_c0_register($16, 1, val) - #define write_c0_config2(val) __write_32bit_c0_register($16, 2, val) - #define write_c0_config3(val) __write_32bit_c0_register($16, 3, val) -+#define write_c0_config4(val) __write_32bit_c0_register($16, 4, val) -+#define write_c0_config5(val) __write_32bit_c0_register($16, 5, val) -+#define write_c0_config6(val) __write_32bit_c0_register($16, 6, val) -+#define write_c0_config7(val) __write_32bit_c0_register($16, 7, val) - - /* - * The WatchLo register. There may be upto 8 of them. -@@ -856,42 +864,34 @@ - */ - static inline void tlb_probe(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbp\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_read(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbr\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_write_indexed(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbwi\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - static inline void tlb_write_random(void) - { -- rm9000_tlb_hazard(); - __asm__ __volatile__( - ".set noreorder\n\t" - "tlbwr\n\t" - ".set reorder"); -- rm9000_tlb_hazard(); - } - - /* -diff -Nur linux-2.4.32/include/asm-mips64/ptrace.h linux-2.4.32.patched/include/asm-mips64/ptrace.h ---- linux-2.4.32/include/asm-mips64/ptrace.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/ptrace.h 2006-03-13 18:55:56.000000000 +0100 -@@ -5,6 +5,7 @@ - * - * Copyright (C) 1994, 95, 96, 97, 98, 99, 2000 by Ralf Baechle - * Copyright (C) 1999, 2000 Silicon Graphics, Inc. -+ * Copyright (C) 2004 Maciej W. Rozycki - */ - #ifndef _ASM_PTRACE_H - #define _ASM_PTRACE_H -@@ -61,12 +62,10 @@ - "sd\t$22,"__str(PT_R22)"($29)\n\t" \ - "sd\t$23,"__str(PT_R23)"($29)\n\t" \ - "sd\t$30,"__str(PT_R30)"($29)\n\t" \ -+ "j\t_" #symbol "\n\t" \ - ".end\t" #symbol "\n\t" \ - ".size\t" #symbol",. - " #symbol) - --/* Used in declaration of save_static functions. */ --#define static_unused static __attribute__((unused)) -- - #define abi64_no_regargs \ - unsigned long __dummy0, \ - unsigned long __dummy1, \ -diff -Nur linux-2.4.32/include/asm-mips64/reg.h linux-2.4.32.patched/include/asm-mips64/reg.h ---- linux-2.4.32/include/asm-mips64/reg.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips64/reg.h 2006-03-13 18:55:54.000000000 +0100 -@@ -46,6 +46,9 @@ - /* - * k0/k1 unsaved - */ -+#define EF_REG26 26 -+#define EF_REG27 27 -+ - #define EF_REG28 28 - #define EF_REG29 29 - #define EF_REG30 30 -diff -Nur linux-2.4.32/include/asm-mips64/sgi/hpc3.h linux-2.4.32.patched/include/asm-mips64/sgi/hpc3.h ---- linux-2.4.32/include/asm-mips64/sgi/hpc3.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips64/sgi/hpc3.h 2006-03-13 18:55:54.000000000 +0100 -@@ -128,26 +128,26 @@ - volatile u32 rx_gfptr; /* current GIO fifo ptr */ - volatile u32 rx_dfptr; /* current device fifo ptr */ - u32 _unused1; /* padding */ -- volatile u32 rx_reset; /* reset register */ --#define HPC3_ERXRST_CRESET 0x1 /* Reset dma channel and external controller */ --#define HPC3_ERXRST_CLRIRQ 0x2 /* Clear channel interrupt */ --#define HPC3_ERXRST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */ -- -- volatile u32 rx_dconfig; /* DMA configuration register */ --#define HPC3_ERXDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */ --#define HPC3_ERXDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */ --#define HPC3_ERXDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */ --#define HPC3_ERXDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */ --#define HPC3_ERXDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */ --#define HPC3_ERXDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */ --#define HPC3_ERXDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */ --#define HPC3_ERXDCFG_PTO 0x30000 /* Programmed timeout value for above two */ -- -- volatile u32 rx_pconfig; /* PIO configuration register */ --#define HPC3_ERXPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */ --#define HPC3_ERXPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */ --#define HPC3_ERXPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */ --#define HPC3_ERXPCFG_TST 0x1000 /* Diagnistic ram test feature bit */ -+ volatile u32 reset; /* reset register */ -+#define HPC3_ERST_CRESET 0x1 /* Reset dma channel and external controller */ -+#define HPC3_ERST_CLRIRQ 0x2 /* Clear channel interrupt */ -+#define HPC3_ERST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */ -+ -+ volatile u32 dconfig; /* DMA configuration register */ -+#define HPC3_EDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */ -+#define HPC3_EDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */ -+#define HPC3_EDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */ -+#define HPC3_EDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */ -+#define HPC3_EDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */ -+#define HPC3_EDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */ -+#define HPC3_EDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */ -+#define HPC3_EDCFG_PTO 0x30000 /* Programmed timeout value for above two */ -+ -+ volatile u32 pconfig; /* PIO configuration register */ -+#define HPC3_EPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */ -+#define HPC3_EPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */ -+#define HPC3_EPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */ -+#define HPC3_EPCFG_TST 0x1000 /* Diagnistic ram test feature bit */ - - u32 _unused2[0x1000/4 - 8]; /* padding */ - -@@ -221,7 +221,7 @@ - #define HPC3_BESTAT_PIDMASK 0x3f700 /* DMA channel parity identifier */ - - u32 _unused1[0x14000/4 - 5]; /* padding */ -- -+ - /* Now direct PIO per-HPC3 peripheral access to external regs. */ - volatile u32 scsi0_ext[256]; /* SCSI channel 0 external regs */ - u32 _unused2[0x7c00/4]; -@@ -304,7 +304,7 @@ - volatile u32 bbram[8192-50-14]; /* Battery backed ram */ - }; - --/* -+/* - * It is possible to have two HPC3's within the address space on - * one machine, though only having one is more likely on an Indy. - */ -diff -Nur linux-2.4.32/include/asm-mips64/signal.h linux-2.4.32.patched/include/asm-mips64/signal.h ---- linux-2.4.32/include/asm-mips64/signal.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-mips64/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -119,6 +119,12 @@ - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x02000000 - -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 -+#endif -+ - #endif /* __KERNEL__ */ - - #define SIG_BLOCK 1 /* for blocking signals */ -diff -Nur linux-2.4.32/include/asm-mips64/sn/nmi.h linux-2.4.32.patched/include/asm-mips64/sn/nmi.h ---- linux-2.4.32/include/asm-mips64/sn/nmi.h 2002-11-29 00:53:15.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/sn/nmi.h 2006-03-13 18:55:54.000000000 +0100 -@@ -8,7 +8,7 @@ - #ifndef __ASM_SN_NMI_H - #define __ASM_SN_NMI_H - --#ident "$Revision: 1.2.4.2 $" -+#ident "$Revision: 1.2.4.1 $" - - #include <asm/sn/addrs.h> - -diff -Nur linux-2.4.32/include/asm-mips64/unistd.h linux-2.4.32.patched/include/asm-mips64/unistd.h ---- linux-2.4.32/include/asm-mips64/unistd.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-mips64/unistd.h 2006-03-13 18:55:54.000000000 +0100 -@@ -760,7 +760,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - /* -@@ -788,7 +788,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall2(type,name,atype,a,btype,b) \ -@@ -813,7 +813,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall3(type,name,atype,a,btype,b,ctype,c) \ -@@ -839,7 +839,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall4(type,name,atype,a,btype,b,ctype,c,dtype,d) \ -@@ -865,7 +865,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #if (_MIPS_SIM == _MIPS_SIM_ABI32) -@@ -902,7 +902,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ -@@ -935,7 +935,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */ -@@ -966,7 +966,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ -@@ -995,7 +995,7 @@ - if (__a3 == 0) \ - return (type) __v0; \ - errno = __v0; \ -- return -1; \ -+ return (type)-1; \ - } - - #endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ -diff -Nur linux-2.4.32/include/asm-parisc/signal.h linux-2.4.32.patched/include/asm-parisc/signal.h ---- linux-2.4.32/include/asm-parisc/signal.h 2000-12-05 21:29:39.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-parisc/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -100,6 +100,12 @@ - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 - -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 -+#endif -+ - #endif /* __KERNEL__ */ - - #define SIG_BLOCK 0 /* for blocking signals */ -diff -Nur linux-2.4.32/include/asm-ppc/byteorder.h linux-2.4.32.patched/include/asm-ppc/byteorder.h ---- linux-2.4.32/include/asm-ppc/byteorder.h 2003-06-13 16:51:38.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ppc/byteorder.h 2006-03-13 18:55:55.000000000 +0100 -@@ -2,6 +2,7 @@ - #define _PPC_BYTEORDER_H - - #include <asm/types.h> -+#include <linux/compiler.h> - - #ifdef __GNUC__ - #ifdef __KERNEL__ -@@ -50,7 +51,7 @@ - __asm__ __volatile__ ("stwbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (taddr+4)); - } - --static __inline__ __const__ __u16 ___arch__swab16(__u16 value) -+static __inline__ __attribute_const__ __u16 ___arch__swab16(__u16 value) - { - __u16 result; - -@@ -58,7 +59,7 @@ - return result; - } - --static __inline__ __const__ __u32 ___arch__swab32(__u32 value) -+static __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 value) - { - __u32 result; - -diff -Nur linux-2.4.32/include/asm-ppc/param.h linux-2.4.32.patched/include/asm-ppc/param.h ---- linux-2.4.32/include/asm-ppc/param.h 2003-06-13 16:51:38.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ppc/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -3,6 +3,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 4096 -diff -Nur linux-2.4.32/include/asm-ppc/signal.h linux-2.4.32.patched/include/asm-ppc/signal.h ---- linux-2.4.32/include/asm-ppc/signal.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ppc/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -111,6 +111,13 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 -+#endif -+ - #endif /* __KERNEL__ */ - - #define SIG_BLOCK 0 /* for blocking signals */ -diff -Nur linux-2.4.32/include/asm-ppc/spinlock.h linux-2.4.32.patched/include/asm-ppc/spinlock.h ---- linux-2.4.32/include/asm-ppc/spinlock.h 2003-06-13 16:51:38.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ppc/spinlock.h 2006-03-13 18:55:55.000000000 +0100 -@@ -40,7 +40,6 @@ - extern void _spin_lock(spinlock_t *lock); - extern void _spin_unlock(spinlock_t *lock); - extern int spin_trylock(spinlock_t *lock); --extern unsigned long __spin_trylock(volatile unsigned long *lock); - - #define spin_lock(lp) _spin_lock(lp) - #define spin_unlock(lp) _spin_unlock(lp) -diff -Nur linux-2.4.32/include/asm-ppc/time.h linux-2.4.32.patched/include/asm-ppc/time.h ---- linux-2.4.32/include/asm-ppc/time.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-ppc/time.h 2006-03-13 18:55:55.000000000 +0100 -@@ -12,6 +12,7 @@ - #include <linux/config.h> - #include <linux/mc146818rtc.h> - #include <linux/threads.h> -+#include <linux/compiler.h> - - #include <asm/processor.h> - -@@ -57,7 +58,7 @@ - /* Accessor functions for the timebase (RTC on 601) registers. */ - /* If one day CONFIG_POWER is added just define __USE_RTC as 1 */ - #ifdef CONFIG_6xx --extern __inline__ int const __USE_RTC(void) { -+extern __inline__ int __attribute_const__ __USE_RTC(void) { - return (mfspr(SPRN_PVR)>>16) == 1; - } - #else -diff -Nur linux-2.4.32/include/asm-s390/param.h linux-2.4.32.patched/include/asm-s390/param.h ---- linux-2.4.32/include/asm-s390/param.h 2001-02-13 23:13:44.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-s390/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -11,6 +11,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 4096 -diff -Nur linux-2.4.32/include/asm-s390/signal.h linux-2.4.32.patched/include/asm-s390/signal.h ---- linux-2.4.32/include/asm-s390/signal.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-s390/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -129,8 +129,15 @@ - #define SA_SHIRQ 0x04000000 - #define SA_DOPATHGROUP 0x00100000 - #define SA_FORCE 0x00200000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-s390x/signal.h linux-2.4.32.patched/include/asm-s390x/signal.h ---- linux-2.4.32/include/asm-s390x/signal.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-s390x/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -129,8 +129,15 @@ - #define SA_SHIRQ 0x04000000 - #define SA_DOPATHGROUP 0x00100000 - #define SA_FORCE 0x00200000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-sh/param.h linux-2.4.32.patched/include/asm-sh/param.h ---- linux-2.4.32/include/asm-sh/param.h 2001-01-04 22:19:13.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-sh/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -3,6 +3,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 4096 -diff -Nur linux-2.4.32/include/asm-sh/signal.h linux-2.4.32.patched/include/asm-sh/signal.h ---- linux-2.4.32/include/asm-sh/signal.h 1999-11-19 04:37:03.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-sh/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -107,8 +107,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_SHIRQ 0x04000000 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - #define SIG_BLOCK 0 /* for blocking signals */ - #define SIG_UNBLOCK 1 /* for unblocking signals */ - #define SIG_SETMASK 2 /* for setting the signal mask */ -diff -Nur linux-2.4.32/include/asm-sparc/param.h linux-2.4.32.patched/include/asm-sparc/param.h ---- linux-2.4.32/include/asm-sparc/param.h 2000-10-30 23:34:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-sparc/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -4,6 +4,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */ -diff -Nur linux-2.4.32/include/asm-sparc/signal.h linux-2.4.32.patched/include/asm-sparc/signal.h ---- linux-2.4.32/include/asm-sparc/signal.h 1999-09-08 20:14:32.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-sparc/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -176,8 +176,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_STATIC_ALLOC 0x80 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - /* Type of a signal handler. */ - #ifdef __KERNEL__ - typedef void (*__sighandler_t)(int, int, struct sigcontext *, char *); -diff -Nur linux-2.4.32/include/asm-sparc64/param.h linux-2.4.32.patched/include/asm-sparc64/param.h ---- linux-2.4.32/include/asm-sparc64/param.h 2000-10-30 23:34:12.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-sparc64/param.h 2006-03-13 18:55:54.000000000 +0100 -@@ -4,6 +4,9 @@ - - #ifndef HZ - #define HZ 100 -+#ifdef __KERNEL__ -+#define hz_to_std(a) (a) -+#endif - #endif - - #define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */ -diff -Nur linux-2.4.32/include/asm-sparc64/signal.h linux-2.4.32.patched/include/asm-sparc64/signal.h ---- linux-2.4.32/include/asm-sparc64/signal.h 1999-09-08 20:14:32.000000000 +0200 -+++ linux-2.4.32.patched/include/asm-sparc64/signal.h 2006-03-13 18:55:56.000000000 +0100 -@@ -192,8 +192,15 @@ - #define SA_PROBE SA_ONESHOT - #define SA_SAMPLE_RANDOM SA_RESTART - #define SA_STATIC_ALLOC 0x80 -+ -+#ifdef CONFIG_NET_RANDOM -+#define SA_NET_RANDOM SA_SAMPLE_RANDOM -+#else -+#define SA_NET_RANDOM 0 - #endif - -+#endif /* __KERNEL__ */ -+ - /* Type of a signal handler. */ - #ifdef __KERNEL__ - typedef void (*__sighandler_t)(int, struct sigcontext *); -diff -Nur linux-2.4.32/include/asm-x86_64/byteorder.h linux-2.4.32.patched/include/asm-x86_64/byteorder.h ---- linux-2.4.32/include/asm-x86_64/byteorder.h 2002-11-29 00:53:15.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-x86_64/byteorder.h 2006-03-13 18:55:55.000000000 +0100 -@@ -2,16 +2,17 @@ - #define _X86_64_BYTEORDER_H - - #include <asm/types.h> -+#include <linux/compiler.h> - - #ifdef __GNUC__ - --static __inline__ __const__ __u64 ___arch__swab64(__u64 x) -+static __inline__ __attribute_const__ __u64 ___arch__swab64(__u64 x) - { - __asm__("bswapq %0" : "=r" (x) : "0" (x)); - return x; - } - --static __inline__ __const__ __u32 ___arch__swab32(__u32 x) -+static __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 x) - { - __asm__("bswapl %0" : "=r" (x) : "0" (x)); - return x; -diff -Nur linux-2.4.32/include/asm-x86_64/processor.h linux-2.4.32.patched/include/asm-x86_64/processor.h ---- linux-2.4.32/include/asm-x86_64/processor.h 2005-11-16 20:12:54.000000000 +0100 -+++ linux-2.4.32.patched/include/asm-x86_64/processor.h 2006-03-13 18:55:55.000000000 +0100 -@@ -68,7 +68,6 @@ - #define X86_VENDOR_UNKNOWN 0xff - - extern struct cpuinfo_x86 boot_cpu_data; --extern struct tss_struct init_tss[NR_CPUS]; - - #ifdef CONFIG_SMP - extern struct cpuinfo_x86 cpu_data[]; -@@ -300,6 +299,8 @@ - u32 io_bitmap[IO_BITMAP_SIZE]; - } __attribute__((packed)) ____cacheline_aligned; - -+extern struct tss_struct init_tss[NR_CPUS]; -+ - struct thread_struct { - unsigned long rsp0; - unsigned long rip; -diff -Nur linux-2.4.32/include/config/60xx/wdt.h linux-2.4.32.patched/include/config/60xx/wdt.h ---- linux-2.4.32/include/config/60xx/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/60xx/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_60XX_WDT -diff -Nur linux-2.4.32/include/config/64bit/phys/addr.h linux-2.4.32.patched/include/config/64bit/phys/addr.h ---- linux-2.4.32/include/config/64bit/phys/addr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/64bit/phys/addr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_64BIT_PHYS_ADDR -diff -Nur linux-2.4.32/include/config/6pack.h linux-2.4.32.patched/include/config/6pack.h ---- linux-2.4.32/include/config/6pack.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/6pack.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_6PACK -diff -Nur linux-2.4.32/include/config/8139/old/rx/reset.h linux-2.4.32.patched/include/config/8139/old/rx/reset.h ---- linux-2.4.32/include/config/8139/old/rx/reset.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139/old/rx/reset.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139_OLD_RX_RESET -diff -Nur linux-2.4.32/include/config/8139cp.h linux-2.4.32.patched/include/config/8139cp.h ---- linux-2.4.32/include/config/8139cp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139cp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139CP -diff -Nur linux-2.4.32/include/config/8139too/8129.h linux-2.4.32.patched/include/config/8139too/8129.h ---- linux-2.4.32/include/config/8139too/8129.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139too/8129.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139TOO_8129 -diff -Nur linux-2.4.32/include/config/8139too/pio.h linux-2.4.32.patched/include/config/8139too/pio.h ---- linux-2.4.32/include/config/8139too/pio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139too/pio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139TOO_PIO -diff -Nur linux-2.4.32/include/config/8139too/tune/twister.h linux-2.4.32.patched/include/config/8139too/tune/twister.h ---- linux-2.4.32/include/config/8139too/tune/twister.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139too/tune/twister.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139TOO_TUNE_TWISTER -diff -Nur linux-2.4.32/include/config/8139too.h linux-2.4.32.patched/include/config/8139too.h ---- linux-2.4.32/include/config/8139too.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/8139too.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_8139TOO -diff -Nur linux-2.4.32/include/config/acenic.h linux-2.4.32.patched/include/config/acenic.h ---- linux-2.4.32/include/config/acenic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/acenic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ACENIC -diff -Nur linux-2.4.32/include/config/acer/pica/61.h linux-2.4.32.patched/include/config/acer/pica/61.h ---- linux-2.4.32/include/config/acer/pica/61.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/acer/pica/61.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ACER_PICA_61 -diff -Nur linux-2.4.32/include/config/acorn/partition.h linux-2.4.32.patched/include/config/acorn/partition.h ---- linux-2.4.32/include/config/acorn/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/acorn/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ACORN_PARTITION -diff -Nur linux-2.4.32/include/config/acquire/wdt.h linux-2.4.32.patched/include/config/acquire/wdt.h ---- linux-2.4.32/include/config/acquire/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/acquire/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ACQUIRE_WDT -diff -Nur linux-2.4.32/include/config/adaptec/starfire.h linux-2.4.32.patched/include/config/adaptec/starfire.h ---- linux-2.4.32/include/config/adaptec/starfire.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/adaptec/starfire.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ADAPTEC_STARFIRE -diff -Nur linux-2.4.32/include/config/adfs/fs/rw.h linux-2.4.32.patched/include/config/adfs/fs/rw.h ---- linux-2.4.32/include/config/adfs/fs/rw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/adfs/fs/rw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ADFS_FS_RW -diff -Nur linux-2.4.32/include/config/adfs/fs.h linux-2.4.32.patched/include/config/adfs/fs.h ---- linux-2.4.32/include/config/adfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/adfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ADFS_FS -diff -Nur linux-2.4.32/include/config/advantech/wdt.h linux-2.4.32.patched/include/config/advantech/wdt.h ---- linux-2.4.32/include/config/advantech/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/advantech/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ADVANTECH_WDT -diff -Nur linux-2.4.32/include/config/affs/fs.h linux-2.4.32.patched/include/config/affs/fs.h ---- linux-2.4.32/include/config/affs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/affs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AFFS_FS -diff -Nur linux-2.4.32/include/config/agp.h linux-2.4.32.patched/include/config/agp.h ---- linux-2.4.32/include/config/agp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/agp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AGP -diff -Nur linux-2.4.32/include/config/airo/cs.h linux-2.4.32.patched/include/config/airo/cs.h ---- linux-2.4.32/include/config/airo/cs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/airo/cs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AIRO_CS -diff -Nur linux-2.4.32/include/config/airo.h linux-2.4.32.patched/include/config/airo.h ---- linux-2.4.32/include/config/airo.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/airo.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AIRO -diff -Nur linux-2.4.32/include/config/aironet4500/noncs.h linux-2.4.32.patched/include/config/aironet4500/noncs.h ---- linux-2.4.32/include/config/aironet4500/noncs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/aironet4500/noncs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AIRONET4500_NONCS -diff -Nur linux-2.4.32/include/config/aironet4500/proc.h linux-2.4.32.patched/include/config/aironet4500/proc.h ---- linux-2.4.32/include/config/aironet4500/proc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/aironet4500/proc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AIRONET4500_PROC -diff -Nur linux-2.4.32/include/config/aironet4500.h linux-2.4.32.patched/include/config/aironet4500.h ---- linux-2.4.32/include/config/aironet4500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/aironet4500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AIRONET4500 -diff -Nur linux-2.4.32/include/config/alim1535/wdt.h linux-2.4.32.patched/include/config/alim1535/wdt.h ---- linux-2.4.32/include/config/alim1535/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/alim1535/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ALIM1535_WDT -diff -Nur linux-2.4.32/include/config/alim7101/wdt.h linux-2.4.32.patched/include/config/alim7101/wdt.h ---- linux-2.4.32/include/config/alim7101/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/alim7101/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ALIM7101_WDT -diff -Nur linux-2.4.32/include/config/amd/pm768.h linux-2.4.32.patched/include/config/amd/pm768.h ---- linux-2.4.32/include/config/amd/pm768.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/amd/pm768.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AMD_PM768 -diff -Nur linux-2.4.32/include/config/amd74xx/override.h linux-2.4.32.patched/include/config/amd74xx/override.h ---- linux-2.4.32/include/config/amd74xx/override.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/amd74xx/override.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AMD74XX_OVERRIDE -diff -Nur linux-2.4.32/include/config/amd8111/eth.h linux-2.4.32.patched/include/config/amd8111/eth.h ---- linux-2.4.32/include/config/amd8111/eth.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/amd8111/eth.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AMD8111_ETH -diff -Nur linux-2.4.32/include/config/amiga/partition.h linux-2.4.32.patched/include/config/amiga/partition.h ---- linux-2.4.32/include/config/amiga/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/amiga/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AMIGA_PARTITION -diff -Nur linux-2.4.32/include/config/applicom.h linux-2.4.32.patched/include/config/applicom.h ---- linux-2.4.32/include/config/applicom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/applicom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_APPLICOM -diff -Nur linux-2.4.32/include/config/apricot.h linux-2.4.32.patched/include/config/apricot.h ---- linux-2.4.32/include/config/apricot.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/apricot.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_APRICOT -diff -Nur linux-2.4.32/include/config/arcnet.h linux-2.4.32.patched/include/config/arcnet.h ---- linux-2.4.32/include/config/arcnet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/arcnet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ARCNET -diff -Nur linux-2.4.32/include/config/arlan.h linux-2.4.32.patched/include/config/arlan.h ---- linux-2.4.32/include/config/arlan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/arlan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ARLAN -diff -Nur linux-2.4.32/include/config/arpd.h linux-2.4.32.patched/include/config/arpd.h ---- linux-2.4.32/include/config/arpd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/arpd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ARPD -diff -Nur linux-2.4.32/include/config/atalk.h linux-2.4.32.patched/include/config/atalk.h ---- linux-2.4.32/include/config/atalk.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/atalk.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ATALK -diff -Nur linux-2.4.32/include/config/atari/partition.h linux-2.4.32.patched/include/config/atari/partition.h ---- linux-2.4.32/include/config/atari/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/atari/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ATARI_PARTITION -diff -Nur linux-2.4.32/include/config/atm.h linux-2.4.32.patched/include/config/atm.h ---- linux-2.4.32/include/config/atm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/atm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ATM -diff -Nur linux-2.4.32/include/config/autofs/fs.h linux-2.4.32.patched/include/config/autofs/fs.h ---- linux-2.4.32/include/config/autofs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/autofs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AUTOFS_FS -diff -Nur linux-2.4.32/include/config/autofs4/fs.h linux-2.4.32.patched/include/config/autofs4/fs.h ---- linux-2.4.32/include/config/autofs4/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/autofs4/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AUTOFS4_FS -diff -Nur linux-2.4.32/include/config/ax25/dama/slave.h linux-2.4.32.patched/include/config/ax25/dama/slave.h ---- linux-2.4.32/include/config/ax25/dama/slave.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ax25/dama/slave.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AX25_DAMA_SLAVE -diff -Nur linux-2.4.32/include/config/ax25/module.h linux-2.4.32.patched/include/config/ax25/module.h ---- linux-2.4.32/include/config/ax25/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ax25/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_AX25_MODULE 1 -diff -Nur linux-2.4.32/include/config/ax25.h linux-2.4.32.patched/include/config/ax25.h ---- linux-2.4.32/include/config/ax25.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ax25.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_AX25 -diff -Nur linux-2.4.32/include/config/b44.h linux-2.4.32.patched/include/config/b44.h ---- linux-2.4.32/include/config/b44.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/b44.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_B44 1 -diff -Nur linux-2.4.32/include/config/baget/mips.h linux-2.4.32.patched/include/config/baget/mips.h ---- linux-2.4.32/include/config/baget/mips.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/baget/mips.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BAGET_MIPS -diff -Nur linux-2.4.32/include/config/baycom/epp.h linux-2.4.32.patched/include/config/baycom/epp.h ---- linux-2.4.32/include/config/baycom/epp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/baycom/epp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BAYCOM_EPP -diff -Nur linux-2.4.32/include/config/baycom/par.h linux-2.4.32.patched/include/config/baycom/par.h ---- linux-2.4.32/include/config/baycom/par.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/baycom/par.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BAYCOM_PAR -diff -Nur linux-2.4.32/include/config/baycom/ser/fdx.h linux-2.4.32.patched/include/config/baycom/ser/fdx.h ---- linux-2.4.32/include/config/baycom/ser/fdx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/baycom/ser/fdx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BAYCOM_SER_FDX -diff -Nur linux-2.4.32/include/config/baycom/ser/hdx.h linux-2.4.32.patched/include/config/baycom/ser/hdx.h ---- linux-2.4.32/include/config/baycom/ser/hdx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/baycom/ser/hdx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BAYCOM_SER_HDX -diff -Nur linux-2.4.32/include/config/bcm4310.h linux-2.4.32.patched/include/config/bcm4310.h ---- linux-2.4.32/include/config/bcm4310.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bcm4310.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BCM4310 1 -diff -Nur linux-2.4.32/include/config/bcm4704.h linux-2.4.32.patched/include/config/bcm4704.h ---- linux-2.4.32/include/config/bcm4704.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bcm4704.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BCM4704 1 -diff -Nur linux-2.4.32/include/config/bcm4710.h linux-2.4.32.patched/include/config/bcm4710.h ---- linux-2.4.32/include/config/bcm4710.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bcm4710.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BCM4710 1 -diff -Nur linux-2.4.32/include/config/bcm5365.h linux-2.4.32.patched/include/config/bcm5365.h ---- linux-2.4.32/include/config/bcm5365.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bcm5365.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BCM5365 1 -diff -Nur linux-2.4.32/include/config/bcm947xx.h linux-2.4.32.patched/include/config/bcm947xx.h ---- linux-2.4.32/include/config/bcm947xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bcm947xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BCM947XX 1 -diff -Nur linux-2.4.32/include/config/befs/debug.h linux-2.4.32.patched/include/config/befs/debug.h ---- linux-2.4.32/include/config/befs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/befs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BEFS_DEBUG -diff -Nur linux-2.4.32/include/config/befs/fs.h linux-2.4.32.patched/include/config/befs/fs.h ---- linux-2.4.32/include/config/befs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/befs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BEFS_FS -diff -Nur linux-2.4.32/include/config/bfs/fs.h linux-2.4.32.patched/include/config/bfs/fs.h ---- linux-2.4.32/include/config/bfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BFS_FS -diff -Nur linux-2.4.32/include/config/binfmt/aout.h linux-2.4.32.patched/include/config/binfmt/aout.h ---- linux-2.4.32/include/config/binfmt/aout.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/binfmt/aout.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BINFMT_AOUT -diff -Nur linux-2.4.32/include/config/binfmt/elf/aout.h linux-2.4.32.patched/include/config/binfmt/elf/aout.h ---- linux-2.4.32/include/config/binfmt/elf/aout.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/binfmt/elf/aout.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BINFMT_ELF_AOUT -diff -Nur linux-2.4.32/include/config/binfmt/elf32.h linux-2.4.32.patched/include/config/binfmt/elf32.h ---- linux-2.4.32/include/config/binfmt/elf32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/binfmt/elf32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BINFMT_ELF32 -diff -Nur linux-2.4.32/include/config/binfmt/elf.h linux-2.4.32.patched/include/config/binfmt/elf.h ---- linux-2.4.32/include/config/binfmt/elf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/binfmt/elf.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BINFMT_ELF 1 -diff -Nur linux-2.4.32/include/config/binfmt/misc.h linux-2.4.32.patched/include/config/binfmt/misc.h ---- linux-2.4.32/include/config/binfmt/misc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/binfmt/misc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BINFMT_MISC -diff -Nur linux-2.4.32/include/config/blk/cpq/ciss/da.h linux-2.4.32.patched/include/config/blk/cpq/ciss/da.h ---- linux-2.4.32/include/config/blk/cpq/ciss/da.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/cpq/ciss/da.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_CPQ_CISS_DA -diff -Nur linux-2.4.32/include/config/blk/cpq/da.h linux-2.4.32.patched/include/config/blk/cpq/da.h ---- linux-2.4.32/include/config/blk/cpq/da.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/cpq/da.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_CPQ_DA -diff -Nur linux-2.4.32/include/config/blk/dev/3w/xxxx/raid.h linux-2.4.32.patched/include/config/blk/dev/3w/xxxx/raid.h ---- linux-2.4.32/include/config/blk/dev/3w/xxxx/raid.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/3w/xxxx/raid.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_3W_XXXX_RAID -diff -Nur linux-2.4.32/include/config/blk/dev/adma100.h linux-2.4.32.patched/include/config/blk/dev/adma100.h ---- linux-2.4.32/include/config/blk/dev/adma100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/adma100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ADMA100 -diff -Nur linux-2.4.32/include/config/blk/dev/aec62xx.h linux-2.4.32.patched/include/config/blk/dev/aec62xx.h ---- linux-2.4.32/include/config/blk/dev/aec62xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/aec62xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_AEC62XX -diff -Nur linux-2.4.32/include/config/blk/dev/ali15x3.h linux-2.4.32.patched/include/config/blk/dev/ali15x3.h ---- linux-2.4.32/include/config/blk/dev/ali15x3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ali15x3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ALI15X3 -diff -Nur linux-2.4.32/include/config/blk/dev/amd74xx.h linux-2.4.32.patched/include/config/blk/dev/amd74xx.h ---- linux-2.4.32/include/config/blk/dev/amd74xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/amd74xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_AMD74XX -diff -Nur linux-2.4.32/include/config/blk/dev/ataraid/hpt.h linux-2.4.32.patched/include/config/blk/dev/ataraid/hpt.h ---- linux-2.4.32/include/config/blk/dev/ataraid/hpt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ataraid/hpt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATARAID_HPT -diff -Nur linux-2.4.32/include/config/blk/dev/ataraid/medley.h linux-2.4.32.patched/include/config/blk/dev/ataraid/medley.h ---- linux-2.4.32/include/config/blk/dev/ataraid/medley.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ataraid/medley.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATARAID_MEDLEY -diff -Nur linux-2.4.32/include/config/blk/dev/ataraid/pdc.h linux-2.4.32.patched/include/config/blk/dev/ataraid/pdc.h ---- linux-2.4.32/include/config/blk/dev/ataraid/pdc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ataraid/pdc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATARAID_PDC -diff -Nur linux-2.4.32/include/config/blk/dev/ataraid/sii.h linux-2.4.32.patched/include/config/blk/dev/ataraid/sii.h ---- linux-2.4.32/include/config/blk/dev/ataraid/sii.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ataraid/sii.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATARAID_SII -diff -Nur linux-2.4.32/include/config/blk/dev/ataraid.h linux-2.4.32.patched/include/config/blk/dev/ataraid.h ---- linux-2.4.32/include/config/blk/dev/ataraid.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ataraid.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATARAID -diff -Nur linux-2.4.32/include/config/blk/dev/atiixp.h linux-2.4.32.patched/include/config/blk/dev/atiixp.h ---- linux-2.4.32/include/config/blk/dev/atiixp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/atiixp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ATIIXP -diff -Nur linux-2.4.32/include/config/blk/dev/cmd640/enhanced.h linux-2.4.32.patched/include/config/blk/dev/cmd640/enhanced.h ---- linux-2.4.32/include/config/blk/dev/cmd640/enhanced.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/cmd640/enhanced.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_CMD640_ENHANCED -diff -Nur linux-2.4.32/include/config/blk/dev/cmd640.h linux-2.4.32.patched/include/config/blk/dev/cmd640.h ---- linux-2.4.32/include/config/blk/dev/cmd640.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/cmd640.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_CMD640 -diff -Nur linux-2.4.32/include/config/blk/dev/cmd64x.h linux-2.4.32.patched/include/config/blk/dev/cmd64x.h ---- linux-2.4.32/include/config/blk/dev/cmd64x.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/cmd64x.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_CMD64X -diff -Nur linux-2.4.32/include/config/blk/dev/cs5530.h linux-2.4.32.patched/include/config/blk/dev/cs5530.h ---- linux-2.4.32/include/config/blk/dev/cs5530.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/cs5530.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_CS5530 -diff -Nur linux-2.4.32/include/config/blk/dev/cy82c693.h linux-2.4.32.patched/include/config/blk/dev/cy82c693.h ---- linux-2.4.32/include/config/blk/dev/cy82c693.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/cy82c693.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_CY82C693 -diff -Nur linux-2.4.32/include/config/blk/dev/dac960.h linux-2.4.32.patched/include/config/blk/dev/dac960.h ---- linux-2.4.32/include/config/blk/dev/dac960.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/dac960.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_DAC960 -diff -Nur linux-2.4.32/include/config/blk/dev/delkin.h linux-2.4.32.patched/include/config/blk/dev/delkin.h ---- linux-2.4.32/include/config/blk/dev/delkin.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/delkin.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_DELKIN -diff -Nur linux-2.4.32/include/config/blk/dev/fd.h linux-2.4.32.patched/include/config/blk/dev/fd.h ---- linux-2.4.32/include/config/blk/dev/fd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/fd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_FD -diff -Nur linux-2.4.32/include/config/blk/dev/generic.h linux-2.4.32.patched/include/config/blk/dev/generic.h ---- linux-2.4.32/include/config/blk/dev/generic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/generic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_GENERIC -diff -Nur linux-2.4.32/include/config/blk/dev/hd/ide.h linux-2.4.32.patched/include/config/blk/dev/hd/ide.h ---- linux-2.4.32/include/config/blk/dev/hd/ide.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/hd/ide.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_HD_IDE -diff -Nur linux-2.4.32/include/config/blk/dev/hd.h linux-2.4.32.patched/include/config/blk/dev/hd.h ---- linux-2.4.32/include/config/blk/dev/hd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/hd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_HD -diff -Nur linux-2.4.32/include/config/blk/dev/hpt34x.h linux-2.4.32.patched/include/config/blk/dev/hpt34x.h ---- linux-2.4.32/include/config/blk/dev/hpt34x.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/hpt34x.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_HPT34X -diff -Nur linux-2.4.32/include/config/blk/dev/hpt366.h linux-2.4.32.patched/include/config/blk/dev/hpt366.h ---- linux-2.4.32/include/config/blk/dev/hpt366.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/hpt366.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_HPT366 -diff -Nur linux-2.4.32/include/config/blk/dev/ide/module.h linux-2.4.32.patched/include/config/blk/dev/ide/module.h ---- linux-2.4.32/include/config/blk/dev/ide/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ide/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_IDE_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/ide/sata.h linux-2.4.32.patched/include/config/blk/dev/ide/sata.h ---- linux-2.4.32/include/config/blk/dev/ide/sata.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ide/sata.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDE_SATA -diff -Nur linux-2.4.32/include/config/blk/dev/idecd.h linux-2.4.32.patched/include/config/blk/dev/idecd.h ---- linux-2.4.32/include/config/blk/dev/idecd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idecd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDECD -diff -Nur linux-2.4.32/include/config/blk/dev/idecs.h linux-2.4.32.patched/include/config/blk/dev/idecs.h ---- linux-2.4.32/include/config/blk/dev/idecs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idecs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDECS -diff -Nur linux-2.4.32/include/config/blk/dev/idedisk/module.h linux-2.4.32.patched/include/config/blk/dev/idedisk/module.h ---- linux-2.4.32/include/config/blk/dev/idedisk/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idedisk/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_IDEDISK_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/idedisk.h linux-2.4.32.patched/include/config/blk/dev/idedisk.h ---- linux-2.4.32/include/config/blk/dev/idedisk.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idedisk.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDEDISK -diff -Nur linux-2.4.32/include/config/blk/dev/idedma/forced.h linux-2.4.32.patched/include/config/blk/dev/idedma/forced.h ---- linux-2.4.32/include/config/blk/dev/idedma/forced.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idedma/forced.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDEDMA_FORCED -diff -Nur linux-2.4.32/include/config/blk/dev/idedma/pci.h linux-2.4.32.patched/include/config/blk/dev/idedma/pci.h ---- linux-2.4.32/include/config/blk/dev/idedma/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idedma/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_IDEDMA_PCI 1 -diff -Nur linux-2.4.32/include/config/blk/dev/idedma.h linux-2.4.32.patched/include/config/blk/dev/idedma.h ---- linux-2.4.32/include/config/blk/dev/idedma.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idedma.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_IDEDMA 1 -diff -Nur linux-2.4.32/include/config/blk/dev/idefloppy.h linux-2.4.32.patched/include/config/blk/dev/idefloppy.h ---- linux-2.4.32/include/config/blk/dev/idefloppy.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idefloppy.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDEFLOPPY -diff -Nur linux-2.4.32/include/config/blk/dev/ide.h linux-2.4.32.patched/include/config/blk/dev/ide.h ---- linux-2.4.32/include/config/blk/dev/ide.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ide.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDE -diff -Nur linux-2.4.32/include/config/blk/dev/idepci.h linux-2.4.32.patched/include/config/blk/dev/idepci.h ---- linux-2.4.32/include/config/blk/dev/idepci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idepci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_IDEPCI 1 -diff -Nur linux-2.4.32/include/config/blk/dev/idescsi.h linux-2.4.32.patched/include/config/blk/dev/idescsi.h ---- linux-2.4.32/include/config/blk/dev/idescsi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idescsi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDESCSI -diff -Nur linux-2.4.32/include/config/blk/dev/idetape.h linux-2.4.32.patched/include/config/blk/dev/idetape.h ---- linux-2.4.32/include/config/blk/dev/idetape.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/idetape.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_IDETAPE -diff -Nur linux-2.4.32/include/config/blk/dev/initrd.h linux-2.4.32.patched/include/config/blk/dev/initrd.h ---- linux-2.4.32/include/config/blk/dev/initrd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/initrd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_INITRD -diff -Nur linux-2.4.32/include/config/blk/dev/isapnp.h linux-2.4.32.patched/include/config/blk/dev/isapnp.h ---- linux-2.4.32/include/config/blk/dev/isapnp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/isapnp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_ISAPNP -diff -Nur linux-2.4.32/include/config/blk/dev/loop/module.h linux-2.4.32.patched/include/config/blk/dev/loop/module.h ---- linux-2.4.32/include/config/blk/dev/loop/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/loop/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_LOOP_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/loop.h linux-2.4.32.patched/include/config/blk/dev/loop.h ---- linux-2.4.32/include/config/blk/dev/loop.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/loop.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_LOOP -diff -Nur linux-2.4.32/include/config/blk/dev/lvm.h linux-2.4.32.patched/include/config/blk/dev/lvm.h ---- linux-2.4.32/include/config/blk/dev/lvm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/lvm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_LVM -diff -Nur linux-2.4.32/include/config/blk/dev/md.h linux-2.4.32.patched/include/config/blk/dev/md.h ---- linux-2.4.32/include/config/blk/dev/md.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/md.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_MD -diff -Nur linux-2.4.32/include/config/blk/dev/nbd/module.h linux-2.4.32.patched/include/config/blk/dev/nbd/module.h ---- linux-2.4.32/include/config/blk/dev/nbd/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/nbd/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_NBD_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/nbd.h linux-2.4.32.patched/include/config/blk/dev/nbd.h ---- linux-2.4.32/include/config/blk/dev/nbd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/nbd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_NBD -diff -Nur linux-2.4.32/include/config/blk/dev/ns87415.h linux-2.4.32.patched/include/config/blk/dev/ns87415.h ---- linux-2.4.32/include/config/blk/dev/ns87415.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ns87415.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_NS87415 -diff -Nur linux-2.4.32/include/config/blk/dev/offboard.h linux-2.4.32.patched/include/config/blk/dev/offboard.h ---- linux-2.4.32/include/config/blk/dev/offboard.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/offboard.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_OFFBOARD 1 -diff -Nur linux-2.4.32/include/config/blk/dev/opti621.h linux-2.4.32.patched/include/config/blk/dev/opti621.h ---- linux-2.4.32/include/config/blk/dev/opti621.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/opti621.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_OPTI621 -diff -Nur linux-2.4.32/include/config/blk/dev/pdc202xx/new.h linux-2.4.32.patched/include/config/blk/dev/pdc202xx/new.h ---- linux-2.4.32/include/config/blk/dev/pdc202xx/new.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/pdc202xx/new.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_PDC202XX_NEW -diff -Nur linux-2.4.32/include/config/blk/dev/pdc202xx/old/module.h linux-2.4.32.patched/include/config/blk/dev/pdc202xx/old/module.h ---- linux-2.4.32/include/config/blk/dev/pdc202xx/old/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/pdc202xx/old/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_PDC202XX_OLD_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/pdc202xx/old.h linux-2.4.32.patched/include/config/blk/dev/pdc202xx/old.h ---- linux-2.4.32/include/config/blk/dev/pdc202xx/old.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/pdc202xx/old.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_PDC202XX_OLD -diff -Nur linux-2.4.32/include/config/blk/dev/pdc202xx.h linux-2.4.32.patched/include/config/blk/dev/pdc202xx.h ---- linux-2.4.32/include/config/blk/dev/pdc202xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/pdc202xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_PDC202XX 1 -diff -Nur linux-2.4.32/include/config/blk/dev/piix.h linux-2.4.32.patched/include/config/blk/dev/piix.h ---- linux-2.4.32/include/config/blk/dev/piix.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/piix.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_PIIX -diff -Nur linux-2.4.32/include/config/blk/dev/ram.h linux-2.4.32.patched/include/config/blk/dev/ram.h ---- linux-2.4.32/include/config/blk/dev/ram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/ram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_RAM -diff -Nur linux-2.4.32/include/config/blk/dev/rz1000.h linux-2.4.32.patched/include/config/blk/dev/rz1000.h ---- linux-2.4.32/include/config/blk/dev/rz1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/rz1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_RZ1000 -diff -Nur linux-2.4.32/include/config/blk/dev/sc1200.h linux-2.4.32.patched/include/config/blk/dev/sc1200.h ---- linux-2.4.32/include/config/blk/dev/sc1200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sc1200.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SC1200 -diff -Nur linux-2.4.32/include/config/blk/dev/sd/module.h linux-2.4.32.patched/include/config/blk/dev/sd/module.h ---- linux-2.4.32/include/config/blk/dev/sd/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sd/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLK_DEV_SD_MODULE 1 -diff -Nur linux-2.4.32/include/config/blk/dev/sd.h linux-2.4.32.patched/include/config/blk/dev/sd.h ---- linux-2.4.32/include/config/blk/dev/sd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SD -diff -Nur linux-2.4.32/include/config/blk/dev/siimage.h linux-2.4.32.patched/include/config/blk/dev/siimage.h ---- linux-2.4.32/include/config/blk/dev/siimage.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/siimage.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SIIMAGE -diff -Nur linux-2.4.32/include/config/blk/dev/sis5513.h linux-2.4.32.patched/include/config/blk/dev/sis5513.h ---- linux-2.4.32/include/config/blk/dev/sis5513.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sis5513.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SIS5513 -diff -Nur linux-2.4.32/include/config/blk/dev/slc90e66.h linux-2.4.32.patched/include/config/blk/dev/slc90e66.h ---- linux-2.4.32/include/config/blk/dev/slc90e66.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/slc90e66.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SLC90E66 -diff -Nur linux-2.4.32/include/config/blk/dev/sr.h linux-2.4.32.patched/include/config/blk/dev/sr.h ---- linux-2.4.32/include/config/blk/dev/sr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SR -diff -Nur linux-2.4.32/include/config/blk/dev/svwks.h linux-2.4.32.patched/include/config/blk/dev/svwks.h ---- linux-2.4.32/include/config/blk/dev/svwks.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/svwks.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SVWKS -diff -Nur linux-2.4.32/include/config/blk/dev/sx8.h linux-2.4.32.patched/include/config/blk/dev/sx8.h ---- linux-2.4.32/include/config/blk/dev/sx8.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/sx8.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_SX8 -diff -Nur linux-2.4.32/include/config/blk/dev/triflex.h linux-2.4.32.patched/include/config/blk/dev/triflex.h ---- linux-2.4.32/include/config/blk/dev/triflex.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/triflex.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_TRIFLEX -diff -Nur linux-2.4.32/include/config/blk/dev/trm290.h linux-2.4.32.patched/include/config/blk/dev/trm290.h ---- linux-2.4.32/include/config/blk/dev/trm290.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/trm290.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_TRM290 -diff -Nur linux-2.4.32/include/config/blk/dev/umem.h linux-2.4.32.patched/include/config/blk/dev/umem.h ---- linux-2.4.32/include/config/blk/dev/umem.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/umem.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_UMEM -diff -Nur linux-2.4.32/include/config/blk/dev/via82cxxx.h linux-2.4.32.patched/include/config/blk/dev/via82cxxx.h ---- linux-2.4.32/include/config/blk/dev/via82cxxx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/via82cxxx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_VIA82CXXX -diff -Nur linux-2.4.32/include/config/blk/dev/xd.h linux-2.4.32.patched/include/config/blk/dev/xd.h ---- linux-2.4.32/include/config/blk/dev/xd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/dev/xd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_DEV_XD -diff -Nur linux-2.4.32/include/config/blk/stats.h linux-2.4.32.patched/include/config/blk/stats.h ---- linux-2.4.32/include/config/blk/stats.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/blk/stats.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLK_STATS -diff -Nur linux-2.4.32/include/config/bluez/bnep/mc/filter.h linux-2.4.32.patched/include/config/bluez/bnep/mc/filter.h ---- linux-2.4.32/include/config/bluez/bnep/mc/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/bnep/mc/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_BNEP_MC_FILTER 1 -diff -Nur linux-2.4.32/include/config/bluez/bnep/module.h linux-2.4.32.patched/include/config/bluez/bnep/module.h ---- linux-2.4.32/include/config/bluez/bnep/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/bnep/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_BNEP_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/bnep/proto/filter.h linux-2.4.32.patched/include/config/bluez/bnep/proto/filter.h ---- linux-2.4.32/include/config/bluez/bnep/proto/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/bnep/proto/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_BNEP_PROTO_FILTER 1 -diff -Nur linux-2.4.32/include/config/bluez/bnep.h linux-2.4.32.patched/include/config/bluez/bnep.h ---- linux-2.4.32/include/config/bluez/bnep.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/bnep.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_BNEP -diff -Nur linux-2.4.32/include/config/bluez/hcibfusb.h linux-2.4.32.patched/include/config/bluez/hcibfusb.h ---- linux-2.4.32/include/config/bluez/hcibfusb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcibfusb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIBFUSB -diff -Nur linux-2.4.32/include/config/bluez/hcibluecard.h linux-2.4.32.patched/include/config/bluez/hcibluecard.h ---- linux-2.4.32/include/config/bluez/hcibluecard.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcibluecard.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIBLUECARD -diff -Nur linux-2.4.32/include/config/bluez/hcibt3c.h linux-2.4.32.patched/include/config/bluez/hcibt3c.h ---- linux-2.4.32/include/config/bluez/hcibt3c.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcibt3c.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIBT3C -diff -Nur linux-2.4.32/include/config/bluez/hcibtuart.h linux-2.4.32.patched/include/config/bluez/hcibtuart.h ---- linux-2.4.32/include/config/bluez/hcibtuart.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcibtuart.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIBTUART -diff -Nur linux-2.4.32/include/config/bluez/hcidtl1.h linux-2.4.32.patched/include/config/bluez/hcidtl1.h ---- linux-2.4.32/include/config/bluez/hcidtl1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcidtl1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIDTL1 -diff -Nur linux-2.4.32/include/config/bluez/hciuart/bcsp/txcrc.h linux-2.4.32.patched/include/config/bluez/hciuart/bcsp/txcrc.h ---- linux-2.4.32/include/config/bluez/hciuart/bcsp/txcrc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciuart/bcsp/txcrc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUART_BCSP_TXCRC 1 -diff -Nur linux-2.4.32/include/config/bluez/hciuart/bcsp.h linux-2.4.32.patched/include/config/bluez/hciuart/bcsp.h ---- linux-2.4.32/include/config/bluez/hciuart/bcsp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciuart/bcsp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUART_BCSP 1 -diff -Nur linux-2.4.32/include/config/bluez/hciuart/h4.h linux-2.4.32.patched/include/config/bluez/hciuart/h4.h ---- linux-2.4.32/include/config/bluez/hciuart/h4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciuart/h4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUART_H4 1 -diff -Nur linux-2.4.32/include/config/bluez/hciuart/module.h linux-2.4.32.patched/include/config/bluez/hciuart/module.h ---- linux-2.4.32/include/config/bluez/hciuart/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciuart/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUART_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/hciuart.h linux-2.4.32.patched/include/config/bluez/hciuart.h ---- linux-2.4.32/include/config/bluez/hciuart.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciuart.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIUART -diff -Nur linux-2.4.32/include/config/bluez/hciusb/module.h linux-2.4.32.patched/include/config/bluez/hciusb/module.h ---- linux-2.4.32/include/config/bluez/hciusb/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciusb/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUSB_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/hciusb/sco.h linux-2.4.32.patched/include/config/bluez/hciusb/sco.h ---- linux-2.4.32/include/config/bluez/hciusb/sco.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciusb/sco.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_HCIUSB_SCO 1 -diff -Nur linux-2.4.32/include/config/bluez/hciusb.h linux-2.4.32.patched/include/config/bluez/hciusb.h ---- linux-2.4.32/include/config/bluez/hciusb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hciusb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIUSB -diff -Nur linux-2.4.32/include/config/bluez/hcivhci.h linux-2.4.32.patched/include/config/bluez/hcivhci.h ---- linux-2.4.32/include/config/bluez/hcivhci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/hcivhci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_HCIVHCI -diff -Nur linux-2.4.32/include/config/bluez/l2cap/module.h linux-2.4.32.patched/include/config/bluez/l2cap/module.h ---- linux-2.4.32/include/config/bluez/l2cap/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/l2cap/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_L2CAP_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/l2cap.h linux-2.4.32.patched/include/config/bluez/l2cap.h ---- linux-2.4.32/include/config/bluez/l2cap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/l2cap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_L2CAP -diff -Nur linux-2.4.32/include/config/bluez/module.h linux-2.4.32.patched/include/config/bluez/module.h ---- linux-2.4.32/include/config/bluez/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/rfcomm/module.h linux-2.4.32.patched/include/config/bluez/rfcomm/module.h ---- linux-2.4.32/include/config/bluez/rfcomm/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/rfcomm/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_RFCOMM_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/rfcomm/tty.h linux-2.4.32.patched/include/config/bluez/rfcomm/tty.h ---- linux-2.4.32/include/config/bluez/rfcomm/tty.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/rfcomm/tty.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_RFCOMM_TTY 1 -diff -Nur linux-2.4.32/include/config/bluez/rfcomm.h linux-2.4.32.patched/include/config/bluez/rfcomm.h ---- linux-2.4.32/include/config/bluez/rfcomm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/rfcomm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_RFCOMM -diff -Nur linux-2.4.32/include/config/bluez/sco/module.h linux-2.4.32.patched/include/config/bluez/sco/module.h ---- linux-2.4.32/include/config/bluez/sco/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/sco/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BLUEZ_SCO_MODULE 1 -diff -Nur linux-2.4.32/include/config/bluez/sco.h linux-2.4.32.patched/include/config/bluez/sco.h ---- linux-2.4.32/include/config/bluez/sco.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez/sco.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ_SCO -diff -Nur linux-2.4.32/include/config/bluez.h linux-2.4.32.patched/include/config/bluez.h ---- linux-2.4.32/include/config/bluez.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bluez.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BLUEZ -diff -Nur linux-2.4.32/include/config/bonding.h linux-2.4.32.patched/include/config/bonding.h ---- linux-2.4.32/include/config/bonding.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bonding.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BONDING -diff -Nur linux-2.4.32/include/config/bpqether.h linux-2.4.32.patched/include/config/bpqether.h ---- linux-2.4.32/include/config/bpqether.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bpqether.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BPQETHER -diff -Nur linux-2.4.32/include/config/bridge.h linux-2.4.32.patched/include/config/bridge.h ---- linux-2.4.32/include/config/bridge.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bridge.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_BRIDGE 1 -diff -Nur linux-2.4.32/include/config/bsd/disklabel.h linux-2.4.32.patched/include/config/bsd/disklabel.h ---- linux-2.4.32/include/config/bsd/disklabel.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bsd/disklabel.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BSD_DISKLABEL -diff -Nur linux-2.4.32/include/config/bsd/process/acct.h linux-2.4.32.patched/include/config/bsd/process/acct.h ---- linux-2.4.32/include/config/bsd/process/acct.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/bsd/process/acct.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BSD_PROCESS_ACCT -diff -Nur linux-2.4.32/include/config/build/elf64.h linux-2.4.32.patched/include/config/build/elf64.h ---- linux-2.4.32/include/config/build/elf64.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/build/elf64.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BUILD_ELF64 -diff -Nur linux-2.4.32/include/config/busmouse.h linux-2.4.32.patched/include/config/busmouse.h ---- linux-2.4.32/include/config/busmouse.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/busmouse.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_BUSMOUSE -diff -Nur linux-2.4.32/include/config/cardbus.h linux-2.4.32.patched/include/config/cardbus.h ---- linux-2.4.32/include/config/cardbus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cardbus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CARDBUS 1 -diff -Nur linux-2.4.32/include/config/casio/e55.h linux-2.4.32.patched/include/config/casio/e55.h ---- linux-2.4.32/include/config/casio/e55.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/casio/e55.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CASIO_E55 -diff -Nur linux-2.4.32/include/config/chr/dev/osst.h linux-2.4.32.patched/include/config/chr/dev/osst.h ---- linux-2.4.32/include/config/chr/dev/osst.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/chr/dev/osst.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CHR_DEV_OSST -diff -Nur linux-2.4.32/include/config/chr/dev/sg/module.h linux-2.4.32.patched/include/config/chr/dev/sg/module.h ---- linux-2.4.32/include/config/chr/dev/sg/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/chr/dev/sg/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CHR_DEV_SG_MODULE 1 -diff -Nur linux-2.4.32/include/config/chr/dev/sg.h linux-2.4.32.patched/include/config/chr/dev/sg.h ---- linux-2.4.32/include/config/chr/dev/sg.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/chr/dev/sg.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CHR_DEV_SG -diff -Nur linux-2.4.32/include/config/chr/dev/st.h linux-2.4.32.patched/include/config/chr/dev/st.h ---- linux-2.4.32/include/config/chr/dev/st.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/chr/dev/st.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CHR_DEV_ST -diff -Nur linux-2.4.32/include/config/cifs/module.h linux-2.4.32.patched/include/config/cifs/module.h ---- linux-2.4.32/include/config/cifs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cifs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CIFS_MODULE 1 -diff -Nur linux-2.4.32/include/config/cifs/posix.h linux-2.4.32.patched/include/config/cifs/posix.h ---- linux-2.4.32/include/config/cifs/posix.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cifs/posix.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CIFS_POSIX 1 -diff -Nur linux-2.4.32/include/config/cifs/stats.h linux-2.4.32.patched/include/config/cifs/stats.h ---- linux-2.4.32/include/config/cifs/stats.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cifs/stats.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CIFS_STATS -diff -Nur linux-2.4.32/include/config/cifs.h linux-2.4.32.patched/include/config/cifs.h ---- linux-2.4.32/include/config/cifs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cifs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CIFS -diff -Nur linux-2.4.32/include/config/ciss/monitor/thread.h linux-2.4.32.patched/include/config/ciss/monitor/thread.h ---- linux-2.4.32/include/config/ciss/monitor/thread.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ciss/monitor/thread.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CISS_MONITOR_THREAD -diff -Nur linux-2.4.32/include/config/ciss/scsi/tape.h linux-2.4.32.patched/include/config/ciss/scsi/tape.h ---- linux-2.4.32/include/config/ciss/scsi/tape.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ciss/scsi/tape.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CISS_SCSI_TAPE -diff -Nur linux-2.4.32/include/config/cmdline/bool.h linux-2.4.32.patched/include/config/cmdline/bool.h ---- linux-2.4.32/include/config/cmdline/bool.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cmdline/bool.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CMDLINE_BOOL -diff -Nur linux-2.4.32/include/config/cmdline.h linux-2.4.32.patched/include/config/cmdline.h ---- linux-2.4.32/include/config/cmdline.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cmdline.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CMDLINE "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/preinit noinitrd console=ttyS0,115200" -diff -Nur linux-2.4.32/include/config/coda/fs.h linux-2.4.32.patched/include/config/coda/fs.h ---- linux-2.4.32/include/config/coda/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/coda/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CODA_FS -diff -Nur linux-2.4.32/include/config/cogent/csb250.h linux-2.4.32.patched/include/config/cogent/csb250.h ---- linux-2.4.32/include/config/cogent/csb250.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cogent/csb250.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_COGENT_CSB250 -diff -Nur linux-2.4.32/include/config/cpu/advanced.h linux-2.4.32.patched/include/config/cpu/advanced.h ---- linux-2.4.32/include/config/cpu/advanced.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/advanced.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_ADVANCED -diff -Nur linux-2.4.32/include/config/cpu/has/lldscd.h linux-2.4.32.patched/include/config/cpu/has/lldscd.h ---- linux-2.4.32/include/config/cpu/has/lldscd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/has/lldscd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_HAS_LLDSCD -diff -Nur linux-2.4.32/include/config/cpu/has/llsc.h linux-2.4.32.patched/include/config/cpu/has/llsc.h ---- linux-2.4.32/include/config/cpu/has/llsc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/has/llsc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CPU_HAS_LLSC 1 -diff -Nur linux-2.4.32/include/config/cpu/has/prefetch.h linux-2.4.32.patched/include/config/cpu/has/prefetch.h ---- linux-2.4.32/include/config/cpu/has/prefetch.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/has/prefetch.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CPU_HAS_PREFETCH 1 -diff -Nur linux-2.4.32/include/config/cpu/has/sync.h linux-2.4.32.patched/include/config/cpu/has/sync.h ---- linux-2.4.32/include/config/cpu/has/sync.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/has/sync.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CPU_HAS_SYNC 1 -diff -Nur linux-2.4.32/include/config/cpu/has/wb.h linux-2.4.32.patched/include/config/cpu/has/wb.h ---- linux-2.4.32/include/config/cpu/has/wb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/has/wb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_HAS_WB -diff -Nur linux-2.4.32/include/config/cpu/little/endian.h linux-2.4.32.patched/include/config/cpu/little/endian.h ---- linux-2.4.32/include/config/cpu/little/endian.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/little/endian.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CPU_LITTLE_ENDIAN 1 -diff -Nur linux-2.4.32/include/config/cpu/mips32.h linux-2.4.32.patched/include/config/cpu/mips32.h ---- linux-2.4.32/include/config/cpu/mips32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/mips32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CPU_MIPS32 1 -diff -Nur linux-2.4.32/include/config/cpu/mips64.h linux-2.4.32.patched/include/config/cpu/mips64.h ---- linux-2.4.32/include/config/cpu/mips64.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/mips64.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_MIPS64 -diff -Nur linux-2.4.32/include/config/cpu/nevada.h linux-2.4.32.patched/include/config/cpu/nevada.h ---- linux-2.4.32/include/config/cpu/nevada.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/nevada.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_NEVADA -diff -Nur linux-2.4.32/include/config/cpu/r10000.h linux-2.4.32.patched/include/config/cpu/r10000.h ---- linux-2.4.32/include/config/cpu/r10000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r10000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R10000 -diff -Nur linux-2.4.32/include/config/cpu/r3000.h linux-2.4.32.patched/include/config/cpu/r3000.h ---- linux-2.4.32/include/config/cpu/r3000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r3000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R3000 -diff -Nur linux-2.4.32/include/config/cpu/r4300.h linux-2.4.32.patched/include/config/cpu/r4300.h ---- linux-2.4.32/include/config/cpu/r4300.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r4300.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R4300 -diff -Nur linux-2.4.32/include/config/cpu/r4x00.h linux-2.4.32.patched/include/config/cpu/r4x00.h ---- linux-2.4.32/include/config/cpu/r4x00.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r4x00.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R4X00 -diff -Nur linux-2.4.32/include/config/cpu/r5000.h linux-2.4.32.patched/include/config/cpu/r5000.h ---- linux-2.4.32/include/config/cpu/r5000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r5000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R5000 -diff -Nur linux-2.4.32/include/config/cpu/r5432.h linux-2.4.32.patched/include/config/cpu/r5432.h ---- linux-2.4.32/include/config/cpu/r5432.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r5432.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R5432 -diff -Nur linux-2.4.32/include/config/cpu/r6000.h linux-2.4.32.patched/include/config/cpu/r6000.h ---- linux-2.4.32/include/config/cpu/r6000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r6000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R6000 -diff -Nur linux-2.4.32/include/config/cpu/r8000.h linux-2.4.32.patched/include/config/cpu/r8000.h ---- linux-2.4.32/include/config/cpu/r8000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/r8000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_R8000 -diff -Nur linux-2.4.32/include/config/cpu/rm7000.h linux-2.4.32.patched/include/config/cpu/rm7000.h ---- linux-2.4.32/include/config/cpu/rm7000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/rm7000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_RM7000 -diff -Nur linux-2.4.32/include/config/cpu/rm9000.h linux-2.4.32.patched/include/config/cpu/rm9000.h ---- linux-2.4.32/include/config/cpu/rm9000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/rm9000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_RM9000 -diff -Nur linux-2.4.32/include/config/cpu/sb1.h linux-2.4.32.patched/include/config/cpu/sb1.h ---- linux-2.4.32/include/config/cpu/sb1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/sb1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_SB1 -diff -Nur linux-2.4.32/include/config/cpu/tx39xx.h linux-2.4.32.patched/include/config/cpu/tx39xx.h ---- linux-2.4.32/include/config/cpu/tx39xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/tx39xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_TX39XX -diff -Nur linux-2.4.32/include/config/cpu/tx49xx.h linux-2.4.32.patched/include/config/cpu/tx49xx.h ---- linux-2.4.32/include/config/cpu/tx49xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/tx49xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_TX49XX -diff -Nur linux-2.4.32/include/config/cpu/vr41xx.h linux-2.4.32.patched/include/config/cpu/vr41xx.h ---- linux-2.4.32/include/config/cpu/vr41xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cpu/vr41xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CPU_VR41XX -diff -Nur linux-2.4.32/include/config/cramfs.h linux-2.4.32.patched/include/config/cramfs.h ---- linux-2.4.32/include/config/cramfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cramfs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRAMFS -diff -Nur linux-2.4.32/include/config/crc32.h linux-2.4.32.patched/include/config/crc32.h ---- linux-2.4.32/include/config/crc32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crc32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRC32 -diff -Nur linux-2.4.32/include/config/crosscompile.h linux-2.4.32.patched/include/config/crosscompile.h ---- linux-2.4.32/include/config/crosscompile.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crosscompile.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CROSSCOMPILE 1 -diff -Nur linux-2.4.32/include/config/crypto/aes/module.h linux-2.4.32.patched/include/config/crypto/aes/module.h ---- linux-2.4.32/include/config/crypto/aes/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/aes/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_AES_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/aes.h linux-2.4.32.patched/include/config/crypto/aes.h ---- linux-2.4.32/include/config/crypto/aes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/aes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_AES -diff -Nur linux-2.4.32/include/config/crypto/anubis.h linux-2.4.32.patched/include/config/crypto/anubis.h ---- linux-2.4.32/include/config/crypto/anubis.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/anubis.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_ANUBIS -diff -Nur linux-2.4.32/include/config/crypto/arc4/module.h linux-2.4.32.patched/include/config/crypto/arc4/module.h ---- linux-2.4.32/include/config/crypto/arc4/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/arc4/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_ARC4_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/arc4.h linux-2.4.32.patched/include/config/crypto/arc4.h ---- linux-2.4.32/include/config/crypto/arc4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/arc4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_ARC4 -diff -Nur linux-2.4.32/include/config/crypto/blowfish.h linux-2.4.32.patched/include/config/crypto/blowfish.h ---- linux-2.4.32/include/config/crypto/blowfish.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/blowfish.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_BLOWFISH -diff -Nur linux-2.4.32/include/config/crypto/cast5.h linux-2.4.32.patched/include/config/crypto/cast5.h ---- linux-2.4.32/include/config/crypto/cast5.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/cast5.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_CAST5 -diff -Nur linux-2.4.32/include/config/crypto/cast6.h linux-2.4.32.patched/include/config/crypto/cast6.h ---- linux-2.4.32/include/config/crypto/cast6.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/cast6.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_CAST6 -diff -Nur linux-2.4.32/include/config/crypto/deflate/module.h linux-2.4.32.patched/include/config/crypto/deflate/module.h ---- linux-2.4.32/include/config/crypto/deflate/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/deflate/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_DEFLATE_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/deflate.h linux-2.4.32.patched/include/config/crypto/deflate.h ---- linux-2.4.32/include/config/crypto/deflate.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/deflate.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_DEFLATE -diff -Nur linux-2.4.32/include/config/crypto/des/module.h linux-2.4.32.patched/include/config/crypto/des/module.h ---- linux-2.4.32/include/config/crypto/des/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/des/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_DES_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/des.h linux-2.4.32.patched/include/config/crypto/des.h ---- linux-2.4.32/include/config/crypto/des.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/des.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_DES -diff -Nur linux-2.4.32/include/config/crypto/hmac.h linux-2.4.32.patched/include/config/crypto/hmac.h ---- linux-2.4.32/include/config/crypto/hmac.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/hmac.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_HMAC 1 -diff -Nur linux-2.4.32/include/config/crypto/khazad.h linux-2.4.32.patched/include/config/crypto/khazad.h ---- linux-2.4.32/include/config/crypto/khazad.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/khazad.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_KHAZAD -diff -Nur linux-2.4.32/include/config/crypto/md4.h linux-2.4.32.patched/include/config/crypto/md4.h ---- linux-2.4.32/include/config/crypto/md4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/md4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_MD4 -diff -Nur linux-2.4.32/include/config/crypto/md5/module.h linux-2.4.32.patched/include/config/crypto/md5/module.h ---- linux-2.4.32/include/config/crypto/md5/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/md5/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_MD5_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/md5.h linux-2.4.32.patched/include/config/crypto/md5.h ---- linux-2.4.32/include/config/crypto/md5.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/md5.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_MD5 -diff -Nur linux-2.4.32/include/config/crypto/michael/mic/module.h linux-2.4.32.patched/include/config/crypto/michael/mic/module.h ---- linux-2.4.32/include/config/crypto/michael/mic/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/michael/mic/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_MICHAEL_MIC_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/michael/mic.h linux-2.4.32.patched/include/config/crypto/michael/mic.h ---- linux-2.4.32/include/config/crypto/michael/mic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/michael/mic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_MICHAEL_MIC -diff -Nur linux-2.4.32/include/config/crypto/null.h linux-2.4.32.patched/include/config/crypto/null.h ---- linux-2.4.32/include/config/crypto/null.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/null.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_NULL -diff -Nur linux-2.4.32/include/config/crypto/serpent.h linux-2.4.32.patched/include/config/crypto/serpent.h ---- linux-2.4.32/include/config/crypto/serpent.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/serpent.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_SERPENT -diff -Nur linux-2.4.32/include/config/crypto/sha1/module.h linux-2.4.32.patched/include/config/crypto/sha1/module.h ---- linux-2.4.32/include/config/crypto/sha1/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/sha1/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO_SHA1_MODULE 1 -diff -Nur linux-2.4.32/include/config/crypto/sha1.h linux-2.4.32.patched/include/config/crypto/sha1.h ---- linux-2.4.32/include/config/crypto/sha1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/sha1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_SHA1 -diff -Nur linux-2.4.32/include/config/crypto/sha256.h linux-2.4.32.patched/include/config/crypto/sha256.h ---- linux-2.4.32/include/config/crypto/sha256.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/sha256.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_SHA256 -diff -Nur linux-2.4.32/include/config/crypto/sha512.h linux-2.4.32.patched/include/config/crypto/sha512.h ---- linux-2.4.32/include/config/crypto/sha512.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/sha512.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_SHA512 -diff -Nur linux-2.4.32/include/config/crypto/tea.h linux-2.4.32.patched/include/config/crypto/tea.h ---- linux-2.4.32/include/config/crypto/tea.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/tea.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_TEA -diff -Nur linux-2.4.32/include/config/crypto/test.h linux-2.4.32.patched/include/config/crypto/test.h ---- linux-2.4.32/include/config/crypto/test.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/test.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_TEST -diff -Nur linux-2.4.32/include/config/crypto/twofish.h linux-2.4.32.patched/include/config/crypto/twofish.h ---- linux-2.4.32/include/config/crypto/twofish.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/twofish.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_TWOFISH -diff -Nur linux-2.4.32/include/config/crypto/wp512.h linux-2.4.32.patched/include/config/crypto/wp512.h ---- linux-2.4.32/include/config/crypto/wp512.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto/wp512.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CRYPTO_WP512 -diff -Nur linux-2.4.32/include/config/crypto.h linux-2.4.32.patched/include/config/crypto.h ---- linux-2.4.32/include/config/crypto.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/crypto.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_CRYPTO 1 -diff -Nur linux-2.4.32/include/config/cs89x0.h linux-2.4.32.patched/include/config/cs89x0.h ---- linux-2.4.32/include/config/cs89x0.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/cs89x0.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_CS89x0 -diff -Nur linux-2.4.32/include/config/ddb5074.h linux-2.4.32.patched/include/config/ddb5074.h ---- linux-2.4.32/include/config/ddb5074.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ddb5074.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DDB5074 -diff -Nur linux-2.4.32/include/config/ddb5476.h linux-2.4.32.patched/include/config/ddb5476.h ---- linux-2.4.32/include/config/ddb5476.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ddb5476.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DDB5476 -diff -Nur linux-2.4.32/include/config/ddb5477.h linux-2.4.32.patched/include/config/ddb5477.h ---- linux-2.4.32/include/config/ddb5477.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ddb5477.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DDB5477 -diff -Nur linux-2.4.32/include/config/de4x5.h linux-2.4.32.patched/include/config/de4x5.h ---- linux-2.4.32/include/config/de4x5.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/de4x5.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DE4X5 -diff -Nur linux-2.4.32/include/config/debug/info.h linux-2.4.32.patched/include/config/debug/info.h ---- linux-2.4.32/include/config/debug/info.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/debug/info.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DEBUG_INFO -diff -Nur linux-2.4.32/include/config/decnet.h linux-2.4.32.patched/include/config/decnet.h ---- linux-2.4.32/include/config/decnet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/decnet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DECNET -diff -Nur linux-2.4.32/include/config/decstation.h linux-2.4.32.patched/include/config/decstation.h ---- linux-2.4.32/include/config/decstation.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/decstation.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DECSTATION -diff -Nur linux-2.4.32/include/config/devfs/debug.h linux-2.4.32.patched/include/config/devfs/debug.h ---- linux-2.4.32/include/config/devfs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/devfs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DEVFS_DEBUG -diff -Nur linux-2.4.32/include/config/devfs/fs.h linux-2.4.32.patched/include/config/devfs/fs.h ---- linux-2.4.32/include/config/devfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/devfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_DEVFS_FS 1 -diff -Nur linux-2.4.32/include/config/devfs/mount.h linux-2.4.32.patched/include/config/devfs/mount.h ---- linux-2.4.32/include/config/devfs/mount.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/devfs/mount.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_DEVFS_MOUNT 1 -diff -Nur linux-2.4.32/include/config/devpts/fs.h linux-2.4.32.patched/include/config/devpts/fs.h ---- linux-2.4.32/include/config/devpts/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/devpts/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_DEVPTS_FS 1 -diff -Nur linux-2.4.32/include/config/dgrs.h linux-2.4.32.patched/include/config/dgrs.h ---- linux-2.4.32/include/config/dgrs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dgrs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DGRS -diff -Nur linux-2.4.32/include/config/dl2k.h linux-2.4.32.patched/include/config/dl2k.h ---- linux-2.4.32/include/config/dl2k.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dl2k.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DL2K -diff -Nur linux-2.4.32/include/config/dm9102.h linux-2.4.32.patched/include/config/dm9102.h ---- linux-2.4.32/include/config/dm9102.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dm9102.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DM9102 -diff -Nur linux-2.4.32/include/config/dma/nonpci.h linux-2.4.32.patched/include/config/dma/nonpci.h ---- linux-2.4.32/include/config/dma/nonpci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dma/nonpci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DMA_NONPCI -diff -Nur linux-2.4.32/include/config/drm.h linux-2.4.32.patched/include/config/drm.h ---- linux-2.4.32/include/config/drm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/drm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DRM -diff -Nur linux-2.4.32/include/config/dtlk.h linux-2.4.32.patched/include/config/dtlk.h ---- linux-2.4.32/include/config/dtlk.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dtlk.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DTLK -diff -Nur linux-2.4.32/include/config/dummy.h linux-2.4.32.patched/include/config/dummy.h ---- linux-2.4.32/include/config/dummy.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/dummy.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_DUMMY -diff -Nur linux-2.4.32/include/config/e1000.h linux-2.4.32.patched/include/config/e1000.h ---- linux-2.4.32/include/config/e1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/e1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_E1000 -diff -Nur linux-2.4.32/include/config/e100.h linux-2.4.32.patched/include/config/e100.h ---- linux-2.4.32/include/config/e100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/e100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_E100 -diff -Nur linux-2.4.32/include/config/econet.h linux-2.4.32.patched/include/config/econet.h ---- linux-2.4.32/include/config/econet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/econet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ECONET -diff -Nur linux-2.4.32/include/config/eepro100/pio.h linux-2.4.32.patched/include/config/eepro100/pio.h ---- linux-2.4.32/include/config/eepro100/pio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/eepro100/pio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EEPRO100_PIO -diff -Nur linux-2.4.32/include/config/eepro100.h linux-2.4.32.patched/include/config/eepro100.h ---- linux-2.4.32/include/config/eepro100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/eepro100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EEPRO100 -diff -Nur linux-2.4.32/include/config/efi/partition.h linux-2.4.32.patched/include/config/efi/partition.h ---- linux-2.4.32/include/config/efi/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/efi/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EFI_PARTITION -diff -Nur linux-2.4.32/include/config/efs/fs.h linux-2.4.32.patched/include/config/efs/fs.h ---- linux-2.4.32/include/config/efs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/efs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EFS_FS -diff -Nur linux-2.4.32/include/config/epic100.h linux-2.4.32.patched/include/config/epic100.h ---- linux-2.4.32/include/config/epic100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/epic100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EPIC100 -diff -Nur linux-2.4.32/include/config/equalizer.h linux-2.4.32.patched/include/config/equalizer.h ---- linux-2.4.32/include/config/equalizer.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/equalizer.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EQUALIZER -diff -Nur linux-2.4.32/include/config/es3210.h linux-2.4.32.patched/include/config/es3210.h ---- linux-2.4.32/include/config/es3210.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/es3210.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ES3210 -diff -Nur linux-2.4.32/include/config/ethertap.h linux-2.4.32.patched/include/config/ethertap.h ---- linux-2.4.32/include/config/ethertap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ethertap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ETHERTAP -diff -Nur linux-2.4.32/include/config/eurotech/wdt.h linux-2.4.32.patched/include/config/eurotech/wdt.h ---- linux-2.4.32/include/config/eurotech/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/eurotech/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EUROTECH_WDT -diff -Nur linux-2.4.32/include/config/experimental.h linux-2.4.32.patched/include/config/experimental.h ---- linux-2.4.32/include/config/experimental.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/experimental.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_EXPERIMENTAL 1 -diff -Nur linux-2.4.32/include/config/ext2/fs/module.h linux-2.4.32.patched/include/config/ext2/fs/module.h ---- linux-2.4.32/include/config/ext2/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ext2/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_EXT2_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ext2/fs.h linux-2.4.32.patched/include/config/ext2/fs.h ---- linux-2.4.32/include/config/ext2/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ext2/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EXT2_FS -diff -Nur linux-2.4.32/include/config/ext3/fs/module.h linux-2.4.32.patched/include/config/ext3/fs/module.h ---- linux-2.4.32/include/config/ext3/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ext3/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_EXT3_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ext3/fs.h linux-2.4.32.patched/include/config/ext3/fs.h ---- linux-2.4.32/include/config/ext3/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ext3/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_EXT3_FS -diff -Nur linux-2.4.32/include/config/fat/fs/module.h linux-2.4.32.patched/include/config/fat/fs/module.h ---- linux-2.4.32/include/config/fat/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fat/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_FAT_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/fat/fs.h linux-2.4.32.patched/include/config/fat/fs.h ---- linux-2.4.32/include/config/fat/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fat/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FAT_FS -diff -Nur linux-2.4.32/include/config/fddi.h linux-2.4.32.patched/include/config/fddi.h ---- linux-2.4.32/include/config/fddi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fddi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FDDI -diff -Nur linux-2.4.32/include/config/fealnx.h linux-2.4.32.patched/include/config/fealnx.h ---- linux-2.4.32/include/config/fealnx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fealnx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FEALNX -diff -Nur linux-2.4.32/include/config/filter.h linux-2.4.32.patched/include/config/filter.h ---- linux-2.4.32/include/config/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_FILTER 1 -diff -Nur linux-2.4.32/include/config/forcedeth.h linux-2.4.32.patched/include/config/forcedeth.h ---- linux-2.4.32/include/config/forcedeth.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/forcedeth.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FORCEDETH -diff -Nur linux-2.4.32/include/config/ftape.h linux-2.4.32.patched/include/config/ftape.h ---- linux-2.4.32/include/config/ftape.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ftape.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FTAPE -diff -Nur linux-2.4.32/include/config/ftl.h linux-2.4.32.patched/include/config/ftl.h ---- linux-2.4.32/include/config/ftl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ftl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FTL -diff -Nur linux-2.4.32/include/config/fusion/boot.h linux-2.4.32.patched/include/config/fusion/boot.h ---- linux-2.4.32/include/config/fusion/boot.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fusion/boot.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FUSION_BOOT -diff -Nur linux-2.4.32/include/config/fusion/ctl.h linux-2.4.32.patched/include/config/fusion/ctl.h ---- linux-2.4.32/include/config/fusion/ctl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fusion/ctl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FUSION_CTL -diff -Nur linux-2.4.32/include/config/fusion/isense.h linux-2.4.32.patched/include/config/fusion/isense.h ---- linux-2.4.32/include/config/fusion/isense.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fusion/isense.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FUSION_ISENSE -diff -Nur linux-2.4.32/include/config/fusion/lan.h linux-2.4.32.patched/include/config/fusion/lan.h ---- linux-2.4.32/include/config/fusion/lan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fusion/lan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FUSION_LAN -diff -Nur linux-2.4.32/include/config/fusion.h linux-2.4.32.patched/include/config/fusion.h ---- linux-2.4.32/include/config/fusion.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fusion.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FUSION -diff -Nur linux-2.4.32/include/config/fw/loader.h linux-2.4.32.patched/include/config/fw/loader.h ---- linux-2.4.32/include/config/fw/loader.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/fw/loader.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_FW_LOADER -diff -Nur linux-2.4.32/include/config/gdb/console.h linux-2.4.32.patched/include/config/gdb/console.h ---- linux-2.4.32/include/config/gdb/console.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/gdb/console.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_GDB_CONSOLE -diff -Nur linux-2.4.32/include/config/hamachi.h linux-2.4.32.patched/include/config/hamachi.h ---- linux-2.4.32/include/config/hamachi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hamachi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HAMACHI -diff -Nur linux-2.4.32/include/config/hamradio.h linux-2.4.32.patched/include/config/hamradio.h ---- linux-2.4.32/include/config/hamradio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hamradio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_HAMRADIO 1 -diff -Nur linux-2.4.32/include/config/happymeal.h linux-2.4.32.patched/include/config/happymeal.h ---- linux-2.4.32/include/config/happymeal.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/happymeal.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HAPPYMEAL -diff -Nur linux-2.4.32/include/config/hermes.h linux-2.4.32.patched/include/config/hermes.h ---- linux-2.4.32/include/config/hermes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hermes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HERMES -diff -Nur linux-2.4.32/include/config/hfs/fs.h linux-2.4.32.patched/include/config/hfs/fs.h ---- linux-2.4.32/include/config/hfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HFS_FS -diff -Nur linux-2.4.32/include/config/hfsplus/fs/module.h linux-2.4.32.patched/include/config/hfsplus/fs/module.h ---- linux-2.4.32/include/config/hfsplus/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hfsplus/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_HFSPLUS_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/hfsplus/fs.h linux-2.4.32.patched/include/config/hfsplus/fs.h ---- linux-2.4.32/include/config/hfsplus/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hfsplus/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HFSPLUS_FS -diff -Nur linux-2.4.32/include/config/highmem.h linux-2.4.32.patched/include/config/highmem.h ---- linux-2.4.32/include/config/highmem.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/highmem.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HIGHMEM -diff -Nur linux-2.4.32/include/config/hippi.h linux-2.4.32.patched/include/config/hippi.h ---- linux-2.4.32/include/config/hippi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hippi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HIPPI -diff -Nur linux-2.4.32/include/config/hnd.h linux-2.4.32.patched/include/config/hnd.h ---- linux-2.4.32/include/config/hnd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hnd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_HND 1 -diff -Nur linux-2.4.32/include/config/hotplug/pci/compaq/nvram.h linux-2.4.32.patched/include/config/hotplug/pci/compaq/nvram.h ---- linux-2.4.32/include/config/hotplug/pci/compaq/nvram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/compaq/nvram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM -diff -Nur linux-2.4.32/include/config/hotplug/pci/compaq.h linux-2.4.32.patched/include/config/hotplug/pci/compaq.h ---- linux-2.4.32/include/config/hotplug/pci/compaq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/compaq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_COMPAQ -diff -Nur linux-2.4.32/include/config/hotplug/pci/pcie/poll/event/mode.h linux-2.4.32.patched/include/config/hotplug/pci/pcie/poll/event/mode.h ---- linux-2.4.32/include/config/hotplug/pci/pcie/poll/event/mode.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/pcie/poll/event/mode.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE -diff -Nur linux-2.4.32/include/config/hotplug/pci/pcie.h linux-2.4.32.patched/include/config/hotplug/pci/pcie.h ---- linux-2.4.32/include/config/hotplug/pci/pcie.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/pcie.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_PCIE -diff -Nur linux-2.4.32/include/config/hotplug/pci/shpc/poll/event/mode.h linux-2.4.32.patched/include/config/hotplug/pci/shpc/poll/event/mode.h ---- linux-2.4.32/include/config/hotplug/pci/shpc/poll/event/mode.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/shpc/poll/event/mode.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE -diff -Nur linux-2.4.32/include/config/hotplug/pci/shpc.h linux-2.4.32.patched/include/config/hotplug/pci/shpc.h ---- linux-2.4.32/include/config/hotplug/pci/shpc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci/shpc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI_SHPC -diff -Nur linux-2.4.32/include/config/hotplug/pci.h linux-2.4.32.patched/include/config/hotplug/pci.h ---- linux-2.4.32/include/config/hotplug/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HOTPLUG_PCI -diff -Nur linux-2.4.32/include/config/hotplug.h linux-2.4.32.patched/include/config/hotplug.h ---- linux-2.4.32/include/config/hotplug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hotplug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_HOTPLUG 1 -diff -Nur linux-2.4.32/include/config/hp/laserjet.h linux-2.4.32.patched/include/config/hp/laserjet.h ---- linux-2.4.32/include/config/hp/laserjet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hp/laserjet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HP_LASERJET -diff -Nur linux-2.4.32/include/config/hp100.h linux-2.4.32.patched/include/config/hp100.h ---- linux-2.4.32/include/config/hp100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hp100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HP100 -diff -Nur linux-2.4.32/include/config/hpfs/fs.h linux-2.4.32.patched/include/config/hpfs/fs.h ---- linux-2.4.32/include/config/hpfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hpfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HPFS_FS -diff -Nur linux-2.4.32/include/config/hpt34x/autodma.h linux-2.4.32.patched/include/config/hpt34x/autodma.h ---- linux-2.4.32/include/config/hpt34x/autodma.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/hpt34x/autodma.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_HPT34X_AUTODMA -diff -Nur linux-2.4.32/include/config/i2c/parport.h linux-2.4.32.patched/include/config/i2c/parport.h ---- linux-2.4.32/include/config/i2c/parport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2c/parport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2C_PARPORT -diff -Nur linux-2.4.32/include/config/i2c.h linux-2.4.32.patched/include/config/i2c.h ---- linux-2.4.32/include/config/i2c.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2c.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2C -diff -Nur linux-2.4.32/include/config/i2o/block.h linux-2.4.32.patched/include/config/i2o/block.h ---- linux-2.4.32/include/config/i2o/block.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o/block.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O_BLOCK -diff -Nur linux-2.4.32/include/config/i2o/lan.h linux-2.4.32.patched/include/config/i2o/lan.h ---- linux-2.4.32/include/config/i2o/lan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o/lan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O_LAN -diff -Nur linux-2.4.32/include/config/i2o/pci.h linux-2.4.32.patched/include/config/i2o/pci.h ---- linux-2.4.32/include/config/i2o/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O_PCI -diff -Nur linux-2.4.32/include/config/i2o/proc.h linux-2.4.32.patched/include/config/i2o/proc.h ---- linux-2.4.32/include/config/i2o/proc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o/proc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O_PROC -diff -Nur linux-2.4.32/include/config/i2o/scsi.h linux-2.4.32.patched/include/config/i2o/scsi.h ---- linux-2.4.32/include/config/i2o/scsi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o/scsi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O_SCSI -diff -Nur linux-2.4.32/include/config/i2o.h linux-2.4.32.patched/include/config/i2o.h ---- linux-2.4.32/include/config/i2o.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i2o.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I2O -diff -Nur linux-2.4.32/include/config/i810/tco.h linux-2.4.32.patched/include/config/i810/tco.h ---- linux-2.4.32/include/config/i810/tco.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i810/tco.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I810_TCO -diff -Nur linux-2.4.32/include/config/i82092.h linux-2.4.32.patched/include/config/i82092.h ---- linux-2.4.32/include/config/i82092.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i82092.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I82092 -diff -Nur linux-2.4.32/include/config/i82365.h linux-2.4.32.patched/include/config/i82365.h ---- linux-2.4.32/include/config/i82365.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/i82365.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_I82365 -diff -Nur linux-2.4.32/include/config/ib700/wdt.h linux-2.4.32.patched/include/config/ib700/wdt.h ---- linux-2.4.32/include/config/ib700/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ib700/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IB700_WDT -diff -Nur linux-2.4.32/include/config/ibm/workpad.h linux-2.4.32.patched/include/config/ibm/workpad.h ---- linux-2.4.32/include/config/ibm/workpad.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ibm/workpad.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IBM_WORKPAD -diff -Nur linux-2.4.32/include/config/ide/chipsets.h linux-2.4.32.patched/include/config/ide/chipsets.h ---- linux-2.4.32/include/config/ide/chipsets.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ide/chipsets.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDE_CHIPSETS -diff -Nur linux-2.4.32/include/config/ide/module.h linux-2.4.32.patched/include/config/ide/module.h ---- linux-2.4.32/include/config/ide/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ide/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IDE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ide/task/ioctl.h linux-2.4.32.patched/include/config/ide/task/ioctl.h ---- linux-2.4.32/include/config/ide/task/ioctl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ide/task/ioctl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDE_TASK_IOCTL -diff -Nur linux-2.4.32/include/config/idedisk/multi/mode.h linux-2.4.32.patched/include/config/idedisk/multi/mode.h ---- linux-2.4.32/include/config/idedisk/multi/mode.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedisk/multi/mode.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDEDISK_MULTI_MODE -diff -Nur linux-2.4.32/include/config/idedisk/stroke.h linux-2.4.32.patched/include/config/idedisk/stroke.h ---- linux-2.4.32/include/config/idedisk/stroke.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedisk/stroke.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IDEDISK_STROKE 1 -diff -Nur linux-2.4.32/include/config/idedma/auto.h linux-2.4.32.patched/include/config/idedma/auto.h ---- linux-2.4.32/include/config/idedma/auto.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedma/auto.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IDEDMA_AUTO 1 -diff -Nur linux-2.4.32/include/config/idedma/ivb.h linux-2.4.32.patched/include/config/idedma/ivb.h ---- linux-2.4.32/include/config/idedma/ivb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedma/ivb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IDEDMA_IVB 1 -diff -Nur linux-2.4.32/include/config/idedma/onlydisk.h linux-2.4.32.patched/include/config/idedma/onlydisk.h ---- linux-2.4.32/include/config/idedma/onlydisk.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedma/onlydisk.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDEDMA_ONLYDISK -diff -Nur linux-2.4.32/include/config/idedma/pci/auto.h linux-2.4.32.patched/include/config/idedma/pci/auto.h ---- linux-2.4.32/include/config/idedma/pci/auto.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedma/pci/auto.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IDEDMA_PCI_AUTO 1 -diff -Nur linux-2.4.32/include/config/idedma/pci/wip.h linux-2.4.32.patched/include/config/idedma/pci/wip.h ---- linux-2.4.32/include/config/idedma/pci/wip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idedma/pci/wip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDEDMA_PCI_WIP -diff -Nur linux-2.4.32/include/config/ide.h linux-2.4.32.patched/include/config/ide.h ---- linux-2.4.32/include/config/ide.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ide.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDE -diff -Nur linux-2.4.32/include/config/idepci/share/irq.h linux-2.4.32.patched/include/config/idepci/share/irq.h ---- linux-2.4.32/include/config/idepci/share/irq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/idepci/share/irq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IDEPCI_SHARE_IRQ -diff -Nur linux-2.4.32/include/config/ieee1394.h linux-2.4.32.patched/include/config/ieee1394.h ---- linux-2.4.32/include/config/ieee1394.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ieee1394.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IEEE1394 -diff -Nur linux-2.4.32/include/config/imq/module.h linux-2.4.32.patched/include/config/imq/module.h ---- linux-2.4.32/include/config/imq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/imq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IMQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/imq.h linux-2.4.32.patched/include/config/imq.h ---- linux-2.4.32/include/config/imq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/imq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IMQ -diff -Nur linux-2.4.32/include/config/inet/ecn.h linux-2.4.32.patched/include/config/inet/ecn.h ---- linux-2.4.32/include/config/inet/ecn.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/inet/ecn.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INET_ECN -diff -Nur linux-2.4.32/include/config/inet.h linux-2.4.32.patched/include/config/inet.h ---- linux-2.4.32/include/config/inet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/inet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_INET 1 -diff -Nur linux-2.4.32/include/config/input/evdev.h linux-2.4.32.patched/include/config/input/evdev.h ---- linux-2.4.32/include/config/input/evdev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/evdev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_EVDEV -diff -Nur linux-2.4.32/include/config/input/gameport.h linux-2.4.32.patched/include/config/input/gameport.h ---- linux-2.4.32/include/config/input/gameport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/gameport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_GAMEPORT -diff -Nur linux-2.4.32/include/config/input/joydev.h linux-2.4.32.patched/include/config/input/joydev.h ---- linux-2.4.32/include/config/input/joydev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/joydev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_JOYDEV -diff -Nur linux-2.4.32/include/config/input/keybdev.h linux-2.4.32.patched/include/config/input/keybdev.h ---- linux-2.4.32/include/config/input/keybdev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/keybdev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_KEYBDEV -diff -Nur linux-2.4.32/include/config/input/mousedev.h linux-2.4.32.patched/include/config/input/mousedev.h ---- linux-2.4.32/include/config/input/mousedev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/mousedev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_MOUSEDEV -diff -Nur linux-2.4.32/include/config/input/uinput.h linux-2.4.32.patched/include/config/input/uinput.h ---- linux-2.4.32/include/config/input/uinput.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input/uinput.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT_UINPUT -diff -Nur linux-2.4.32/include/config/input.h linux-2.4.32.patched/include/config/input.h ---- linux-2.4.32/include/config/input.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/input.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INPUT -diff -Nur linux-2.4.32/include/config/intermezzo/fs.h linux-2.4.32.patched/include/config/intermezzo/fs.h ---- linux-2.4.32/include/config/intermezzo/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/intermezzo/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_INTERMEZZO_FS -diff -Nur linux-2.4.32/include/config/ip/advanced/router.h linux-2.4.32.patched/include/config/ip/advanced/router.h ---- linux-2.4.32/include/config/ip/advanced/router.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/advanced/router.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_ADVANCED_ROUTER 1 -diff -Nur linux-2.4.32/include/config/ip/mroute.h linux-2.4.32.patched/include/config/ip/mroute.h ---- linux-2.4.32/include/config/ip/mroute.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/mroute.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_MROUTE -diff -Nur linux-2.4.32/include/config/ip/multicast.h linux-2.4.32.patched/include/config/ip/multicast.h ---- linux-2.4.32/include/config/ip/multicast.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/multicast.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_MULTICAST 1 -diff -Nur linux-2.4.32/include/config/ip/multiple/tables.h linux-2.4.32.patched/include/config/ip/multiple/tables.h ---- linux-2.4.32/include/config/ip/multiple/tables.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/multiple/tables.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_MULTIPLE_TABLES 1 -diff -Nur linux-2.4.32/include/config/ip/nf/amanda/module.h linux-2.4.32.patched/include/config/ip/nf/amanda/module.h ---- linux-2.4.32/include/config/ip/nf/amanda/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/amanda/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_AMANDA_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/amanda.h linux-2.4.32.patched/include/config/ip/nf/amanda.h ---- linux-2.4.32/include/config/ip/nf/amanda.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/amanda.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_AMANDA -diff -Nur linux-2.4.32/include/config/ip/nf/arp/mangle/module.h linux-2.4.32.patched/include/config/ip/nf/arp/mangle/module.h ---- linux-2.4.32/include/config/ip/nf/arp/mangle/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arp/mangle/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_ARP_MANGLE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/arp/mangle.h linux-2.4.32.patched/include/config/ip/nf/arp/mangle.h ---- linux-2.4.32/include/config/ip/nf/arp/mangle.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arp/mangle.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_ARP_MANGLE -diff -Nur linux-2.4.32/include/config/ip/nf/arpfilter/module.h linux-2.4.32.patched/include/config/ip/nf/arpfilter/module.h ---- linux-2.4.32/include/config/ip/nf/arpfilter/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arpfilter/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_ARPFILTER_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/arpfilter.h linux-2.4.32.patched/include/config/ip/nf/arpfilter.h ---- linux-2.4.32/include/config/ip/nf/arpfilter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arpfilter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_ARPFILTER -diff -Nur linux-2.4.32/include/config/ip/nf/arptables/module.h linux-2.4.32.patched/include/config/ip/nf/arptables/module.h ---- linux-2.4.32/include/config/ip/nf/arptables/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arptables/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_ARPTABLES_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/arptables.h linux-2.4.32.patched/include/config/ip/nf/arptables.h ---- linux-2.4.32/include/config/ip/nf/arptables.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/arptables.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_ARPTABLES -diff -Nur linux-2.4.32/include/config/ip/nf/conntrack/mark.h linux-2.4.32.patched/include/config/ip/nf/conntrack/mark.h ---- linux-2.4.32/include/config/ip/nf/conntrack/mark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/conntrack/mark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_CONNTRACK_MARK 1 -diff -Nur linux-2.4.32/include/config/ip/nf/conntrack.h linux-2.4.32.patched/include/config/ip/nf/conntrack.h ---- linux-2.4.32/include/config/ip/nf/conntrack.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/conntrack.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_CONNTRACK 1 -diff -Nur linux-2.4.32/include/config/ip/nf/ct/acct/module.h linux-2.4.32.patched/include/config/ip/nf/ct/acct/module.h ---- linux-2.4.32/include/config/ip/nf/ct/acct/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/ct/acct/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_CT_ACCT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/ct/acct.h linux-2.4.32.patched/include/config/ip/nf/ct/acct.h ---- linux-2.4.32/include/config/ip/nf/ct/acct.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/ct/acct.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_CT_ACCT -diff -Nur linux-2.4.32/include/config/ip/nf/ct/proto/gre/module.h linux-2.4.32.patched/include/config/ip/nf/ct/proto/gre/module.h ---- linux-2.4.32/include/config/ip/nf/ct/proto/gre/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/ct/proto/gre/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_CT_PROTO_GRE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/ct/proto/gre.h linux-2.4.32.patched/include/config/ip/nf/ct/proto/gre.h ---- linux-2.4.32/include/config/ip/nf/ct/proto/gre.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/ct/proto/gre.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_CT_PROTO_GRE -diff -Nur linux-2.4.32/include/config/ip/nf/filter.h linux-2.4.32.patched/include/config/ip/nf/filter.h ---- linux-2.4.32/include/config/ip/nf/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_FILTER 1 -diff -Nur linux-2.4.32/include/config/ip/nf/ftp.h linux-2.4.32.patched/include/config/ip/nf/ftp.h ---- linux-2.4.32/include/config/ip/nf/ftp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/ftp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_FTP 1 -diff -Nur linux-2.4.32/include/config/ip/nf/h323/module.h linux-2.4.32.patched/include/config/ip/nf/h323/module.h ---- linux-2.4.32/include/config/ip/nf/h323/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/h323/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_H323_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/h323.h linux-2.4.32.patched/include/config/ip/nf/h323.h ---- linux-2.4.32/include/config/ip/nf/h323.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/h323.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_H323 -diff -Nur linux-2.4.32/include/config/ip/nf/iptables.h linux-2.4.32.patched/include/config/ip/nf/iptables.h ---- linux-2.4.32/include/config/ip/nf/iptables.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/iptables.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_IPTABLES 1 -diff -Nur linux-2.4.32/include/config/ip/nf/irc.h linux-2.4.32.patched/include/config/ip/nf/irc.h ---- linux-2.4.32/include/config/ip/nf/irc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/irc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_IRC 1 -diff -Nur linux-2.4.32/include/config/ip/nf/mangle.h linux-2.4.32.patched/include/config/ip/nf/mangle.h ---- linux-2.4.32/include/config/ip/nf/mangle.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/mangle.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MANGLE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/ah/esp/module.h linux-2.4.32.patched/include/config/ip/nf/match/ah/esp/module.h ---- linux-2.4.32/include/config/ip/nf/match/ah/esp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ah/esp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_AH_ESP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/ah/esp.h linux-2.4.32.patched/include/config/ip/nf/match/ah/esp.h ---- linux-2.4.32/include/config/ip/nf/match/ah/esp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ah/esp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_AH_ESP -diff -Nur linux-2.4.32/include/config/ip/nf/match/condition/module.h linux-2.4.32.patched/include/config/ip/nf/match/condition/module.h ---- linux-2.4.32/include/config/ip/nf/match/condition/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/condition/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_CONDITION_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/condition.h linux-2.4.32.patched/include/config/ip/nf/match/condition.h ---- linux-2.4.32/include/config/ip/nf/match/condition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/condition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_CONDITION -diff -Nur linux-2.4.32/include/config/ip/nf/match/connbytes/module.h linux-2.4.32.patched/include/config/ip/nf/match/connbytes/module.h ---- linux-2.4.32/include/config/ip/nf/match/connbytes/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/connbytes/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_CONNBYTES_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/connbytes.h linux-2.4.32.patched/include/config/ip/nf/match/connbytes.h ---- linux-2.4.32/include/config/ip/nf/match/connbytes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/connbytes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_CONNBYTES -diff -Nur linux-2.4.32/include/config/ip/nf/match/connmark/module.h linux-2.4.32.patched/include/config/ip/nf/match/connmark/module.h ---- linux-2.4.32/include/config/ip/nf/match/connmark/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/connmark/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_CONNMARK_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/connmark.h linux-2.4.32.patched/include/config/ip/nf/match/connmark.h ---- linux-2.4.32/include/config/ip/nf/match/connmark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/connmark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_CONNMARK -diff -Nur linux-2.4.32/include/config/ip/nf/match/conntrack/module.h linux-2.4.32.patched/include/config/ip/nf/match/conntrack/module.h ---- linux-2.4.32/include/config/ip/nf/match/conntrack/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/conntrack/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_CONNTRACK_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/conntrack.h linux-2.4.32.patched/include/config/ip/nf/match/conntrack.h ---- linux-2.4.32/include/config/ip/nf/match/conntrack.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/conntrack.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_CONNTRACK -diff -Nur linux-2.4.32/include/config/ip/nf/match/dscp/module.h linux-2.4.32.patched/include/config/ip/nf/match/dscp/module.h ---- linux-2.4.32/include/config/ip/nf/match/dscp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/dscp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_DSCP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/dscp.h linux-2.4.32.patched/include/config/ip/nf/match/dscp.h ---- linux-2.4.32/include/config/ip/nf/match/dscp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/dscp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_DSCP -diff -Nur linux-2.4.32/include/config/ip/nf/match/ecn/module.h linux-2.4.32.patched/include/config/ip/nf/match/ecn/module.h ---- linux-2.4.32/include/config/ip/nf/match/ecn/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ecn/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_ECN_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/ecn.h linux-2.4.32.patched/include/config/ip/nf/match/ecn.h ---- linux-2.4.32/include/config/ip/nf/match/ecn.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ecn.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_ECN -diff -Nur linux-2.4.32/include/config/ip/nf/match/helper/module.h linux-2.4.32.patched/include/config/ip/nf/match/helper/module.h ---- linux-2.4.32/include/config/ip/nf/match/helper/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/helper/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_HELPER_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/helper.h linux-2.4.32.patched/include/config/ip/nf/match/helper.h ---- linux-2.4.32/include/config/ip/nf/match/helper.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/helper.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_HELPER -diff -Nur linux-2.4.32/include/config/ip/nf/match/ipp2p/module.h linux-2.4.32.patched/include/config/ip/nf/match/ipp2p/module.h ---- linux-2.4.32/include/config/ip/nf/match/ipp2p/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ipp2p/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_IPP2P_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/ipp2p.h linux-2.4.32.patched/include/config/ip/nf/match/ipp2p.h ---- linux-2.4.32/include/config/ip/nf/match/ipp2p.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ipp2p.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_IPP2P -diff -Nur linux-2.4.32/include/config/ip/nf/match/layer7/debug.h linux-2.4.32.patched/include/config/ip/nf/match/layer7/debug.h ---- linux-2.4.32/include/config/ip/nf/match/layer7/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/layer7/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_LAYER7_DEBUG -diff -Nur linux-2.4.32/include/config/ip/nf/match/layer7/module.h linux-2.4.32.patched/include/config/ip/nf/match/layer7/module.h ---- linux-2.4.32/include/config/ip/nf/match/layer7/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/layer7/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_LAYER7_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/layer7.h linux-2.4.32.patched/include/config/ip/nf/match/layer7.h ---- linux-2.4.32/include/config/ip/nf/match/layer7.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/layer7.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_LAYER7 -diff -Nur linux-2.4.32/include/config/ip/nf/match/length/module.h linux-2.4.32.patched/include/config/ip/nf/match/length/module.h ---- linux-2.4.32/include/config/ip/nf/match/length/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/length/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_LENGTH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/length.h linux-2.4.32.patched/include/config/ip/nf/match/length.h ---- linux-2.4.32/include/config/ip/nf/match/length.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/length.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_LENGTH -diff -Nur linux-2.4.32/include/config/ip/nf/match/limit/module.h linux-2.4.32.patched/include/config/ip/nf/match/limit/module.h ---- linux-2.4.32/include/config/ip/nf/match/limit/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/limit/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_LIMIT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/limit.h linux-2.4.32.patched/include/config/ip/nf/match/limit.h ---- linux-2.4.32/include/config/ip/nf/match/limit.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/limit.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_LIMIT -diff -Nur linux-2.4.32/include/config/ip/nf/match/mac/module.h linux-2.4.32.patched/include/config/ip/nf/match/mac/module.h ---- linux-2.4.32/include/config/ip/nf/match/mac/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/mac/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_MAC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/mac.h linux-2.4.32.patched/include/config/ip/nf/match/mac.h ---- linux-2.4.32/include/config/ip/nf/match/mac.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/mac.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_MAC -diff -Nur linux-2.4.32/include/config/ip/nf/match/mark.h linux-2.4.32.patched/include/config/ip/nf/match/mark.h ---- linux-2.4.32/include/config/ip/nf/match/mark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/mark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_MARK 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/multiport.h linux-2.4.32.patched/include/config/ip/nf/match/multiport.h ---- linux-2.4.32/include/config/ip/nf/match/multiport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/multiport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_MULTIPORT 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/owner/module.h linux-2.4.32.patched/include/config/ip/nf/match/owner/module.h ---- linux-2.4.32/include/config/ip/nf/match/owner/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/owner/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_OWNER_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/owner.h linux-2.4.32.patched/include/config/ip/nf/match/owner.h ---- linux-2.4.32/include/config/ip/nf/match/owner.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/owner.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_OWNER -diff -Nur linux-2.4.32/include/config/ip/nf/match/pkttype/module.h linux-2.4.32.patched/include/config/ip/nf/match/pkttype/module.h ---- linux-2.4.32/include/config/ip/nf/match/pkttype/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/pkttype/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_PKTTYPE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/pkttype.h linux-2.4.32.patched/include/config/ip/nf/match/pkttype.h ---- linux-2.4.32/include/config/ip/nf/match/pkttype.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/pkttype.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_PKTTYPE -diff -Nur linux-2.4.32/include/config/ip/nf/match/quota/module.h linux-2.4.32.patched/include/config/ip/nf/match/quota/module.h ---- linux-2.4.32/include/config/ip/nf/match/quota/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/quota/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_QUOTA_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/quota.h linux-2.4.32.patched/include/config/ip/nf/match/quota.h ---- linux-2.4.32/include/config/ip/nf/match/quota.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/quota.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_QUOTA -diff -Nur linux-2.4.32/include/config/ip/nf/match/recent/module.h linux-2.4.32.patched/include/config/ip/nf/match/recent/module.h ---- linux-2.4.32/include/config/ip/nf/match/recent/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/recent/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_RECENT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/recent.h linux-2.4.32.patched/include/config/ip/nf/match/recent.h ---- linux-2.4.32/include/config/ip/nf/match/recent.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/recent.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_RECENT -diff -Nur linux-2.4.32/include/config/ip/nf/match/set/module.h linux-2.4.32.patched/include/config/ip/nf/match/set/module.h ---- linux-2.4.32/include/config/ip/nf/match/set/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/set/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_SET_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/set.h linux-2.4.32.patched/include/config/ip/nf/match/set.h ---- linux-2.4.32/include/config/ip/nf/match/set.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/set.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_SET -diff -Nur linux-2.4.32/include/config/ip/nf/match/state.h linux-2.4.32.patched/include/config/ip/nf/match/state.h ---- linux-2.4.32/include/config/ip/nf/match/state.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/state.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_STATE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/string/module.h linux-2.4.32.patched/include/config/ip/nf/match/string/module.h ---- linux-2.4.32/include/config/ip/nf/match/string/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/string/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_STRING_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/string.h linux-2.4.32.patched/include/config/ip/nf/match/string.h ---- linux-2.4.32/include/config/ip/nf/match/string.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/string.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_STRING -diff -Nur linux-2.4.32/include/config/ip/nf/match/tcpmss/module.h linux-2.4.32.patched/include/config/ip/nf/match/tcpmss/module.h ---- linux-2.4.32/include/config/ip/nf/match/tcpmss/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/tcpmss/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_TCPMSS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/tcpmss.h linux-2.4.32.patched/include/config/ip/nf/match/tcpmss.h ---- linux-2.4.32/include/config/ip/nf/match/tcpmss.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/tcpmss.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_TCPMSS -diff -Nur linux-2.4.32/include/config/ip/nf/match/time/module.h linux-2.4.32.patched/include/config/ip/nf/match/time/module.h ---- linux-2.4.32/include/config/ip/nf/match/time/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/time/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_TIME_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/time.h linux-2.4.32.patched/include/config/ip/nf/match/time.h ---- linux-2.4.32/include/config/ip/nf/match/time.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/time.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_TIME -diff -Nur linux-2.4.32/include/config/ip/nf/match/tos/module.h linux-2.4.32.patched/include/config/ip/nf/match/tos/module.h ---- linux-2.4.32/include/config/ip/nf/match/tos/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/tos/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_TOS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/tos.h linux-2.4.32.patched/include/config/ip/nf/match/tos.h ---- linux-2.4.32/include/config/ip/nf/match/tos.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/tos.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_TOS -diff -Nur linux-2.4.32/include/config/ip/nf/match/ttl/module.h linux-2.4.32.patched/include/config/ip/nf/match/ttl/module.h ---- linux-2.4.32/include/config/ip/nf/match/ttl/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ttl/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_TTL_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/ttl.h linux-2.4.32.patched/include/config/ip/nf/match/ttl.h ---- linux-2.4.32/include/config/ip/nf/match/ttl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/ttl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_TTL -diff -Nur linux-2.4.32/include/config/ip/nf/match/unclean/module.h linux-2.4.32.patched/include/config/ip/nf/match/unclean/module.h ---- linux-2.4.32/include/config/ip/nf/match/unclean/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/unclean/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MATCH_UNCLEAN_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/match/unclean.h linux-2.4.32.patched/include/config/ip/nf/match/unclean.h ---- linux-2.4.32/include/config/ip/nf/match/unclean.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/match/unclean.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MATCH_UNCLEAN -diff -Nur linux-2.4.32/include/config/ip/nf/mms/module.h linux-2.4.32.patched/include/config/ip/nf/mms/module.h ---- linux-2.4.32/include/config/ip/nf/mms/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/mms/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_MMS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/mms.h linux-2.4.32.patched/include/config/ip/nf/mms.h ---- linux-2.4.32/include/config/ip/nf/mms.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/mms.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_MMS -diff -Nur linux-2.4.32/include/config/ip/nf/nat/amanda/module.h linux-2.4.32.patched/include/config/ip/nf/nat/amanda/module.h ---- linux-2.4.32/include/config/ip/nf/nat/amanda/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/amanda/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_AMANDA_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/amanda.h linux-2.4.32.patched/include/config/ip/nf/nat/amanda.h ---- linux-2.4.32/include/config/ip/nf/nat/amanda.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/amanda.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_AMANDA -diff -Nur linux-2.4.32/include/config/ip/nf/nat/ftp.h linux-2.4.32.patched/include/config/ip/nf/nat/ftp.h ---- linux-2.4.32/include/config/ip/nf/nat/ftp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/ftp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_FTP 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/h323/module.h linux-2.4.32.patched/include/config/ip/nf/nat/h323/module.h ---- linux-2.4.32/include/config/ip/nf/nat/h323/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/h323/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_H323_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/h323.h linux-2.4.32.patched/include/config/ip/nf/nat/h323.h ---- linux-2.4.32/include/config/ip/nf/nat/h323.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/h323.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_H323 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/irc.h linux-2.4.32.patched/include/config/ip/nf/nat/irc.h ---- linux-2.4.32/include/config/ip/nf/nat/irc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/irc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_IRC 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/mms/module.h linux-2.4.32.patched/include/config/ip/nf/nat/mms/module.h ---- linux-2.4.32/include/config/ip/nf/nat/mms/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/mms/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_MMS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/mms.h linux-2.4.32.patched/include/config/ip/nf/nat/mms.h ---- linux-2.4.32/include/config/ip/nf/nat/mms.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/mms.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_MMS -diff -Nur linux-2.4.32/include/config/ip/nf/nat/needed.h linux-2.4.32.patched/include/config/ip/nf/nat/needed.h ---- linux-2.4.32/include/config/ip/nf/nat/needed.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/needed.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_NEEDED 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/pptp/module.h linux-2.4.32.patched/include/config/ip/nf/nat/pptp/module.h ---- linux-2.4.32/include/config/ip/nf/nat/pptp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/pptp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_PPTP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/pptp.h linux-2.4.32.patched/include/config/ip/nf/nat/pptp.h ---- linux-2.4.32/include/config/ip/nf/nat/pptp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/pptp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_PPTP -diff -Nur linux-2.4.32/include/config/ip/nf/nat/proto/gre/module.h linux-2.4.32.patched/include/config/ip/nf/nat/proto/gre/module.h ---- linux-2.4.32/include/config/ip/nf/nat/proto/gre/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/proto/gre/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_PROTO_GRE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/proto/gre.h linux-2.4.32.patched/include/config/ip/nf/nat/proto/gre.h ---- linux-2.4.32/include/config/ip/nf/nat/proto/gre.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/proto/gre.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_PROTO_GRE -diff -Nur linux-2.4.32/include/config/ip/nf/nat/rtsp/module.h linux-2.4.32.patched/include/config/ip/nf/nat/rtsp/module.h ---- linux-2.4.32/include/config/ip/nf/nat/rtsp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/rtsp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_RTSP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/rtsp.h linux-2.4.32.patched/include/config/ip/nf/nat/rtsp.h ---- linux-2.4.32/include/config/ip/nf/nat/rtsp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/rtsp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_RTSP -diff -Nur linux-2.4.32/include/config/ip/nf/nat/snmp/basic/module.h linux-2.4.32.patched/include/config/ip/nf/nat/snmp/basic/module.h ---- linux-2.4.32/include/config/ip/nf/nat/snmp/basic/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/snmp/basic/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_SNMP_BASIC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/snmp/basic.h linux-2.4.32.patched/include/config/ip/nf/nat/snmp/basic.h ---- linux-2.4.32/include/config/ip/nf/nat/snmp/basic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/snmp/basic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_SNMP_BASIC -diff -Nur linux-2.4.32/include/config/ip/nf/nat/tftp/module.h linux-2.4.32.patched/include/config/ip/nf/nat/tftp/module.h ---- linux-2.4.32/include/config/ip/nf/nat/tftp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/tftp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT_TFTP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/nat/tftp.h linux-2.4.32.patched/include/config/ip/nf/nat/tftp.h ---- linux-2.4.32/include/config/ip/nf/nat/tftp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat/tftp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_NAT_TFTP -diff -Nur linux-2.4.32/include/config/ip/nf/nat.h linux-2.4.32.patched/include/config/ip/nf/nat.h ---- linux-2.4.32/include/config/ip/nf/nat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/nat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_NAT 1 -diff -Nur linux-2.4.32/include/config/ip/nf/pptp/module.h linux-2.4.32.patched/include/config/ip/nf/pptp/module.h ---- linux-2.4.32/include/config/ip/nf/pptp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/pptp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_PPTP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/pptp.h linux-2.4.32.patched/include/config/ip/nf/pptp.h ---- linux-2.4.32/include/config/ip/nf/pptp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/pptp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_PPTP -diff -Nur linux-2.4.32/include/config/ip/nf/queue/module.h linux-2.4.32.patched/include/config/ip/nf/queue/module.h ---- linux-2.4.32/include/config/ip/nf/queue/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/queue/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_QUEUE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/queue.h linux-2.4.32.patched/include/config/ip/nf/queue.h ---- linux-2.4.32/include/config/ip/nf/queue.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/queue.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_QUEUE -diff -Nur linux-2.4.32/include/config/ip/nf/rtsp/module.h linux-2.4.32.patched/include/config/ip/nf/rtsp/module.h ---- linux-2.4.32/include/config/ip/nf/rtsp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/rtsp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_RTSP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/rtsp.h linux-2.4.32.patched/include/config/ip/nf/rtsp.h ---- linux-2.4.32/include/config/ip/nf/rtsp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/rtsp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_RTSP -diff -Nur linux-2.4.32/include/config/ip/nf/set/hashsize.h linux-2.4.32.patched/include/config/ip/nf/set/hashsize.h ---- linux-2.4.32/include/config/ip/nf/set/hashsize.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/hashsize.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_HASHSIZE (1024) -diff -Nur linux-2.4.32/include/config/ip/nf/set/iphash/module.h linux-2.4.32.patched/include/config/ip/nf/set/iphash/module.h ---- linux-2.4.32/include/config/ip/nf/set/iphash/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/iphash/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_IPHASH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/iphash.h linux-2.4.32.patched/include/config/ip/nf/set/iphash.h ---- linux-2.4.32/include/config/ip/nf/set/iphash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/iphash.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_IPHASH -diff -Nur linux-2.4.32/include/config/ip/nf/set/ipmap/module.h linux-2.4.32.patched/include/config/ip/nf/set/ipmap/module.h ---- linux-2.4.32/include/config/ip/nf/set/ipmap/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/ipmap/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_IPMAP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/ipmap.h linux-2.4.32.patched/include/config/ip/nf/set/ipmap.h ---- linux-2.4.32/include/config/ip/nf/set/ipmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/ipmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_IPMAP -diff -Nur linux-2.4.32/include/config/ip/nf/set/iptree/module.h linux-2.4.32.patched/include/config/ip/nf/set/iptree/module.h ---- linux-2.4.32/include/config/ip/nf/set/iptree/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/iptree/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_IPTREE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/iptree.h linux-2.4.32.patched/include/config/ip/nf/set/iptree.h ---- linux-2.4.32/include/config/ip/nf/set/iptree.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/iptree.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_IPTREE -diff -Nur linux-2.4.32/include/config/ip/nf/set/macipmap/module.h linux-2.4.32.patched/include/config/ip/nf/set/macipmap/module.h ---- linux-2.4.32/include/config/ip/nf/set/macipmap/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/macipmap/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_MACIPMAP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/macipmap.h linux-2.4.32.patched/include/config/ip/nf/set/macipmap.h ---- linux-2.4.32/include/config/ip/nf/set/macipmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/macipmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_MACIPMAP -diff -Nur linux-2.4.32/include/config/ip/nf/set/max.h linux-2.4.32.patched/include/config/ip/nf/set/max.h ---- linux-2.4.32/include/config/ip/nf/set/max.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/max.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_MAX (256) -diff -Nur linux-2.4.32/include/config/ip/nf/set/module.h linux-2.4.32.patched/include/config/ip/nf/set/module.h ---- linux-2.4.32/include/config/ip/nf/set/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/nethash/module.h linux-2.4.32.patched/include/config/ip/nf/set/nethash/module.h ---- linux-2.4.32/include/config/ip/nf/set/nethash/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/nethash/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_NETHASH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/nethash.h linux-2.4.32.patched/include/config/ip/nf/set/nethash.h ---- linux-2.4.32/include/config/ip/nf/set/nethash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/nethash.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_NETHASH -diff -Nur linux-2.4.32/include/config/ip/nf/set/portmap/module.h linux-2.4.32.patched/include/config/ip/nf/set/portmap/module.h ---- linux-2.4.32/include/config/ip/nf/set/portmap/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/portmap/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_SET_PORTMAP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/set/portmap.h linux-2.4.32.patched/include/config/ip/nf/set/portmap.h ---- linux-2.4.32/include/config/ip/nf/set/portmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set/portmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET_PORTMAP -diff -Nur linux-2.4.32/include/config/ip/nf/set.h linux-2.4.32.patched/include/config/ip/nf/set.h ---- linux-2.4.32/include/config/ip/nf/set.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/set.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_SET -diff -Nur linux-2.4.32/include/config/ip/nf/target/connmark/module.h linux-2.4.32.patched/include/config/ip/nf/target/connmark/module.h ---- linux-2.4.32/include/config/ip/nf/target/connmark/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/connmark/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_CONNMARK_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/connmark.h linux-2.4.32.patched/include/config/ip/nf/target/connmark.h ---- linux-2.4.32/include/config/ip/nf/target/connmark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/connmark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_CONNMARK -diff -Nur linux-2.4.32/include/config/ip/nf/target/dscp/module.h linux-2.4.32.patched/include/config/ip/nf/target/dscp/module.h ---- linux-2.4.32/include/config/ip/nf/target/dscp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/dscp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_DSCP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/dscp.h linux-2.4.32.patched/include/config/ip/nf/target/dscp.h ---- linux-2.4.32/include/config/ip/nf/target/dscp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/dscp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_DSCP -diff -Nur linux-2.4.32/include/config/ip/nf/target/ecn/module.h linux-2.4.32.patched/include/config/ip/nf/target/ecn/module.h ---- linux-2.4.32/include/config/ip/nf/target/ecn/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ecn/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_ECN_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/ecn.h linux-2.4.32.patched/include/config/ip/nf/target/ecn.h ---- linux-2.4.32/include/config/ip/nf/target/ecn.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ecn.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_ECN -diff -Nur linux-2.4.32/include/config/ip/nf/target/imq/module.h linux-2.4.32.patched/include/config/ip/nf/target/imq/module.h ---- linux-2.4.32/include/config/ip/nf/target/imq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/imq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_IMQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/imq.h linux-2.4.32.patched/include/config/ip/nf/target/imq.h ---- linux-2.4.32/include/config/ip/nf/target/imq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/imq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_IMQ -diff -Nur linux-2.4.32/include/config/ip/nf/target/log/module.h linux-2.4.32.patched/include/config/ip/nf/target/log/module.h ---- linux-2.4.32/include/config/ip/nf/target/log/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/log/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_LOG_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/log.h linux-2.4.32.patched/include/config/ip/nf/target/log.h ---- linux-2.4.32/include/config/ip/nf/target/log.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/log.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_LOG -diff -Nur linux-2.4.32/include/config/ip/nf/target/mark.h linux-2.4.32.patched/include/config/ip/nf/target/mark.h ---- linux-2.4.32/include/config/ip/nf/target/mark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/mark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_MARK 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/masquerade.h linux-2.4.32.patched/include/config/ip/nf/target/masquerade.h ---- linux-2.4.32/include/config/ip/nf/target/masquerade.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/masquerade.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_MASQUERADE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/mirror/module.h linux-2.4.32.patched/include/config/ip/nf/target/mirror/module.h ---- linux-2.4.32/include/config/ip/nf/target/mirror/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/mirror/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_MIRROR_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/mirror.h linux-2.4.32.patched/include/config/ip/nf/target/mirror.h ---- linux-2.4.32/include/config/ip/nf/target/mirror.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/mirror.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_MIRROR -diff -Nur linux-2.4.32/include/config/ip/nf/target/netmap/module.h linux-2.4.32.patched/include/config/ip/nf/target/netmap/module.h ---- linux-2.4.32/include/config/ip/nf/target/netmap/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/netmap/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_NETMAP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/netmap.h linux-2.4.32.patched/include/config/ip/nf/target/netmap.h ---- linux-2.4.32/include/config/ip/nf/target/netmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/netmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_NETMAP -diff -Nur linux-2.4.32/include/config/ip/nf/target/redirect/module.h linux-2.4.32.patched/include/config/ip/nf/target/redirect/module.h ---- linux-2.4.32/include/config/ip/nf/target/redirect/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/redirect/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_REDIRECT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/redirect.h linux-2.4.32.patched/include/config/ip/nf/target/redirect.h ---- linux-2.4.32/include/config/ip/nf/target/redirect.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/redirect.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_REDIRECT -diff -Nur linux-2.4.32/include/config/ip/nf/target/reject.h linux-2.4.32.patched/include/config/ip/nf/target/reject.h ---- linux-2.4.32/include/config/ip/nf/target/reject.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/reject.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_REJECT 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/set/module.h linux-2.4.32.patched/include/config/ip/nf/target/set/module.h ---- linux-2.4.32/include/config/ip/nf/target/set/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/set/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_SET_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/set.h linux-2.4.32.patched/include/config/ip/nf/target/set.h ---- linux-2.4.32/include/config/ip/nf/target/set.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/set.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_SET -diff -Nur linux-2.4.32/include/config/ip/nf/target/tcpmss.h linux-2.4.32.patched/include/config/ip/nf/target/tcpmss.h ---- linux-2.4.32/include/config/ip/nf/target/tcpmss.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/tcpmss.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_TCPMSS 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/tos/module.h linux-2.4.32.patched/include/config/ip/nf/target/tos/module.h ---- linux-2.4.32/include/config/ip/nf/target/tos/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/tos/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_TOS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/tos.h linux-2.4.32.patched/include/config/ip/nf/target/tos.h ---- linux-2.4.32/include/config/ip/nf/target/tos.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/tos.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_TOS -diff -Nur linux-2.4.32/include/config/ip/nf/target/ttl/module.h linux-2.4.32.patched/include/config/ip/nf/target/ttl/module.h ---- linux-2.4.32/include/config/ip/nf/target/ttl/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ttl/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_TTL_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/ttl.h linux-2.4.32.patched/include/config/ip/nf/target/ttl.h ---- linux-2.4.32/include/config/ip/nf/target/ttl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ttl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_TTL -diff -Nur linux-2.4.32/include/config/ip/nf/target/ulog/module.h linux-2.4.32.patched/include/config/ip/nf/target/ulog/module.h ---- linux-2.4.32/include/config/ip/nf/target/ulog/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ulog/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TARGET_ULOG_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/target/ulog.h linux-2.4.32.patched/include/config/ip/nf/target/ulog.h ---- linux-2.4.32/include/config/ip/nf/target/ulog.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/target/ulog.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TARGET_ULOG -diff -Nur linux-2.4.32/include/config/ip/nf/tftp/module.h linux-2.4.32.patched/include/config/ip/nf/tftp/module.h ---- linux-2.4.32/include/config/ip/nf/tftp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/tftp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_NF_TFTP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/nf/tftp.h linux-2.4.32.patched/include/config/ip/nf/tftp.h ---- linux-2.4.32/include/config/ip/nf/tftp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/nf/tftp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_NF_TFTP -diff -Nur linux-2.4.32/include/config/ip/pnp.h linux-2.4.32.patched/include/config/ip/pnp.h ---- linux-2.4.32/include/config/ip/pnp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/pnp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_PNP -diff -Nur linux-2.4.32/include/config/ip/route/fwmark.h linux-2.4.32.patched/include/config/ip/route/fwmark.h ---- linux-2.4.32/include/config/ip/route/fwmark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/route/fwmark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_ROUTE_FWMARK 1 -diff -Nur linux-2.4.32/include/config/ip/route/multipath.h linux-2.4.32.patched/include/config/ip/route/multipath.h ---- linux-2.4.32/include/config/ip/route/multipath.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/route/multipath.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_ROUTE_MULTIPATH 1 -diff -Nur linux-2.4.32/include/config/ip/route/nat.h linux-2.4.32.patched/include/config/ip/route/nat.h ---- linux-2.4.32/include/config/ip/route/nat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/route/nat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_ROUTE_NAT 1 -diff -Nur linux-2.4.32/include/config/ip/route/tos.h linux-2.4.32.patched/include/config/ip/route/tos.h ---- linux-2.4.32/include/config/ip/route/tos.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/route/tos.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_ROUTE_TOS 1 -diff -Nur linux-2.4.32/include/config/ip/route/verbose.h linux-2.4.32.patched/include/config/ip/route/verbose.h ---- linux-2.4.32/include/config/ip/route/verbose.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/route/verbose.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_ROUTE_VERBOSE -diff -Nur linux-2.4.32/include/config/ip/sctp.h linux-2.4.32.patched/include/config/ip/sctp.h ---- linux-2.4.32/include/config/ip/sctp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/sctp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_SCTP -diff -Nur linux-2.4.32/include/config/ip/vs/debug.h linux-2.4.32.patched/include/config/ip/vs/debug.h ---- linux-2.4.32/include/config/ip/vs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_DEBUG -diff -Nur linux-2.4.32/include/config/ip/vs/dh/module.h linux-2.4.32.patched/include/config/ip/vs/dh/module.h ---- linux-2.4.32/include/config/ip/vs/dh/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/dh/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_DH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/dh.h linux-2.4.32.patched/include/config/ip/vs/dh.h ---- linux-2.4.32/include/config/ip/vs/dh.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/dh.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_DH -diff -Nur linux-2.4.32/include/config/ip/vs/ftp/module.h linux-2.4.32.patched/include/config/ip/vs/ftp/module.h ---- linux-2.4.32/include/config/ip/vs/ftp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/ftp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_FTP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/ftp.h linux-2.4.32.patched/include/config/ip/vs/ftp.h ---- linux-2.4.32/include/config/ip/vs/ftp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/ftp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_FTP -diff -Nur linux-2.4.32/include/config/ip/vs/lblc/module.h linux-2.4.32.patched/include/config/ip/vs/lblc/module.h ---- linux-2.4.32/include/config/ip/vs/lblc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lblc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_LBLC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/lblc.h linux-2.4.32.patched/include/config/ip/vs/lblc.h ---- linux-2.4.32/include/config/ip/vs/lblc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lblc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_LBLC -diff -Nur linux-2.4.32/include/config/ip/vs/lblcr/module.h linux-2.4.32.patched/include/config/ip/vs/lblcr/module.h ---- linux-2.4.32/include/config/ip/vs/lblcr/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lblcr/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_LBLCR_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/lblcr.h linux-2.4.32.patched/include/config/ip/vs/lblcr.h ---- linux-2.4.32/include/config/ip/vs/lblcr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lblcr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_LBLCR -diff -Nur linux-2.4.32/include/config/ip/vs/lc/module.h linux-2.4.32.patched/include/config/ip/vs/lc/module.h ---- linux-2.4.32/include/config/ip/vs/lc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_LC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/lc.h linux-2.4.32.patched/include/config/ip/vs/lc.h ---- linux-2.4.32/include/config/ip/vs/lc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/lc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_LC -diff -Nur linux-2.4.32/include/config/ip/vs/module.h linux-2.4.32.patched/include/config/ip/vs/module.h ---- linux-2.4.32/include/config/ip/vs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/nq/module.h linux-2.4.32.patched/include/config/ip/vs/nq/module.h ---- linux-2.4.32/include/config/ip/vs/nq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/nq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_NQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/nq.h linux-2.4.32.patched/include/config/ip/vs/nq.h ---- linux-2.4.32/include/config/ip/vs/nq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/nq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_NQ -diff -Nur linux-2.4.32/include/config/ip/vs/rr/module.h linux-2.4.32.patched/include/config/ip/vs/rr/module.h ---- linux-2.4.32/include/config/ip/vs/rr/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/rr/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_RR_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/rr.h linux-2.4.32.patched/include/config/ip/vs/rr.h ---- linux-2.4.32/include/config/ip/vs/rr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/rr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_RR -diff -Nur linux-2.4.32/include/config/ip/vs/sed/module.h linux-2.4.32.patched/include/config/ip/vs/sed/module.h ---- linux-2.4.32/include/config/ip/vs/sed/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/sed/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_SED_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/sed.h linux-2.4.32.patched/include/config/ip/vs/sed.h ---- linux-2.4.32/include/config/ip/vs/sed.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/sed.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_SED -diff -Nur linux-2.4.32/include/config/ip/vs/sh/module.h linux-2.4.32.patched/include/config/ip/vs/sh/module.h ---- linux-2.4.32/include/config/ip/vs/sh/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/sh/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_SH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/sh.h linux-2.4.32.patched/include/config/ip/vs/sh.h ---- linux-2.4.32/include/config/ip/vs/sh.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/sh.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_SH -diff -Nur linux-2.4.32/include/config/ip/vs/tab/bits.h linux-2.4.32.patched/include/config/ip/vs/tab/bits.h ---- linux-2.4.32/include/config/ip/vs/tab/bits.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/tab/bits.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_TAB_BITS (12) -diff -Nur linux-2.4.32/include/config/ip/vs/wlc/module.h linux-2.4.32.patched/include/config/ip/vs/wlc/module.h ---- linux-2.4.32/include/config/ip/vs/wlc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/wlc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_WLC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/wlc.h linux-2.4.32.patched/include/config/ip/vs/wlc.h ---- linux-2.4.32/include/config/ip/vs/wlc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/wlc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_WLC -diff -Nur linux-2.4.32/include/config/ip/vs/wrr/module.h linux-2.4.32.patched/include/config/ip/vs/wrr/module.h ---- linux-2.4.32/include/config/ip/vs/wrr/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/wrr/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP_VS_WRR_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip/vs/wrr.h linux-2.4.32.patched/include/config/ip/vs/wrr.h ---- linux-2.4.32/include/config/ip/vs/wrr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs/wrr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS_WRR -diff -Nur linux-2.4.32/include/config/ip/vs.h linux-2.4.32.patched/include/config/ip/vs.h ---- linux-2.4.32/include/config/ip/vs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip/vs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP_VS -diff -Nur linux-2.4.32/include/config/ip6/nf/filter/module.h linux-2.4.32.patched/include/config/ip6/nf/filter/module.h ---- linux-2.4.32/include/config/ip6/nf/filter/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/filter/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_FILTER_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/filter.h linux-2.4.32.patched/include/config/ip6/nf/filter.h ---- linux-2.4.32/include/config/ip6/nf/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_FILTER -diff -Nur linux-2.4.32/include/config/ip6/nf/iptables/module.h linux-2.4.32.patched/include/config/ip6/nf/iptables/module.h ---- linux-2.4.32/include/config/ip6/nf/iptables/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/iptables/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_IPTABLES_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/iptables.h linux-2.4.32.patched/include/config/ip6/nf/iptables.h ---- linux-2.4.32/include/config/ip6/nf/iptables.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/iptables.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_IPTABLES -diff -Nur linux-2.4.32/include/config/ip6/nf/mangle/module.h linux-2.4.32.patched/include/config/ip6/nf/mangle/module.h ---- linux-2.4.32/include/config/ip6/nf/mangle/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/mangle/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MANGLE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/mangle.h linux-2.4.32.patched/include/config/ip6/nf/mangle.h ---- linux-2.4.32/include/config/ip6/nf/mangle.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/mangle.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MANGLE -diff -Nur linux-2.4.32/include/config/ip6/nf/match/ahesp.h linux-2.4.32.patched/include/config/ip6/nf/match/ahesp.h ---- linux-2.4.32/include/config/ip6/nf/match/ahesp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/ahesp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_AHESP -diff -Nur linux-2.4.32/include/config/ip6/nf/match/condition/module.h linux-2.4.32.patched/include/config/ip6/nf/match/condition/module.h ---- linux-2.4.32/include/config/ip6/nf/match/condition/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/condition/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_CONDITION_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/condition.h linux-2.4.32.patched/include/config/ip6/nf/match/condition.h ---- linux-2.4.32/include/config/ip6/nf/match/condition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/condition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_CONDITION -diff -Nur linux-2.4.32/include/config/ip6/nf/match/eui64/module.h linux-2.4.32.patched/include/config/ip6/nf/match/eui64/module.h ---- linux-2.4.32/include/config/ip6/nf/match/eui64/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/eui64/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_EUI64_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/eui64.h linux-2.4.32.patched/include/config/ip6/nf/match/eui64.h ---- linux-2.4.32/include/config/ip6/nf/match/eui64.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/eui64.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_EUI64 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/frag.h linux-2.4.32.patched/include/config/ip6/nf/match/frag.h ---- linux-2.4.32/include/config/ip6/nf/match/frag.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/frag.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_FRAG -diff -Nur linux-2.4.32/include/config/ip6/nf/match/hl.h linux-2.4.32.patched/include/config/ip6/nf/match/hl.h ---- linux-2.4.32/include/config/ip6/nf/match/hl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/hl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_HL -diff -Nur linux-2.4.32/include/config/ip6/nf/match/ipv6header.h linux-2.4.32.patched/include/config/ip6/nf/match/ipv6header.h ---- linux-2.4.32/include/config/ip6/nf/match/ipv6header.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/ipv6header.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_IPV6HEADER -diff -Nur linux-2.4.32/include/config/ip6/nf/match/length/module.h linux-2.4.32.patched/include/config/ip6/nf/match/length/module.h ---- linux-2.4.32/include/config/ip6/nf/match/length/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/length/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_LENGTH_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/length.h linux-2.4.32.patched/include/config/ip6/nf/match/length.h ---- linux-2.4.32/include/config/ip6/nf/match/length.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/length.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_LENGTH -diff -Nur linux-2.4.32/include/config/ip6/nf/match/limit/module.h linux-2.4.32.patched/include/config/ip6/nf/match/limit/module.h ---- linux-2.4.32/include/config/ip6/nf/match/limit/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/limit/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_LIMIT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/limit.h linux-2.4.32.patched/include/config/ip6/nf/match/limit.h ---- linux-2.4.32/include/config/ip6/nf/match/limit.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/limit.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_LIMIT -diff -Nur linux-2.4.32/include/config/ip6/nf/match/mac/module.h linux-2.4.32.patched/include/config/ip6/nf/match/mac/module.h ---- linux-2.4.32/include/config/ip6/nf/match/mac/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/mac/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_MAC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/mac.h linux-2.4.32.patched/include/config/ip6/nf/match/mac.h ---- linux-2.4.32/include/config/ip6/nf/match/mac.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/mac.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_MAC -diff -Nur linux-2.4.32/include/config/ip6/nf/match/mark/module.h linux-2.4.32.patched/include/config/ip6/nf/match/mark/module.h ---- linux-2.4.32/include/config/ip6/nf/match/mark/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/mark/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_MARK_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/mark.h linux-2.4.32.patched/include/config/ip6/nf/match/mark.h ---- linux-2.4.32/include/config/ip6/nf/match/mark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/mark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_MARK -diff -Nur linux-2.4.32/include/config/ip6/nf/match/multiport/module.h linux-2.4.32.patched/include/config/ip6/nf/match/multiport/module.h ---- linux-2.4.32/include/config/ip6/nf/match/multiport/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/multiport/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_MULTIPORT_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/multiport.h linux-2.4.32.patched/include/config/ip6/nf/match/multiport.h ---- linux-2.4.32/include/config/ip6/nf/match/multiport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/multiport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_MULTIPORT -diff -Nur linux-2.4.32/include/config/ip6/nf/match/opts.h linux-2.4.32.patched/include/config/ip6/nf/match/opts.h ---- linux-2.4.32/include/config/ip6/nf/match/opts.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/opts.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_OPTS -diff -Nur linux-2.4.32/include/config/ip6/nf/match/owner/module.h linux-2.4.32.patched/include/config/ip6/nf/match/owner/module.h ---- linux-2.4.32/include/config/ip6/nf/match/owner/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/owner/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_MATCH_OWNER_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/match/owner.h linux-2.4.32.patched/include/config/ip6/nf/match/owner.h ---- linux-2.4.32/include/config/ip6/nf/match/owner.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/owner.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_OWNER -diff -Nur linux-2.4.32/include/config/ip6/nf/match/rt.h linux-2.4.32.patched/include/config/ip6/nf/match/rt.h ---- linux-2.4.32/include/config/ip6/nf/match/rt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/match/rt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_MATCH_RT -diff -Nur linux-2.4.32/include/config/ip6/nf/queue/module.h linux-2.4.32.patched/include/config/ip6/nf/queue/module.h ---- linux-2.4.32/include/config/ip6/nf/queue/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/queue/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_QUEUE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/queue.h linux-2.4.32.patched/include/config/ip6/nf/queue.h ---- linux-2.4.32/include/config/ip6/nf/queue.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/queue.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_QUEUE -diff -Nur linux-2.4.32/include/config/ip6/nf/target/imq/module.h linux-2.4.32.patched/include/config/ip6/nf/target/imq/module.h ---- linux-2.4.32/include/config/ip6/nf/target/imq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/imq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_TARGET_IMQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/target/imq.h linux-2.4.32.patched/include/config/ip6/nf/target/imq.h ---- linux-2.4.32/include/config/ip6/nf/target/imq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/imq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_TARGET_IMQ -diff -Nur linux-2.4.32/include/config/ip6/nf/target/log/module.h linux-2.4.32.patched/include/config/ip6/nf/target/log/module.h ---- linux-2.4.32/include/config/ip6/nf/target/log/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/log/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_TARGET_LOG_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/target/log.h linux-2.4.32.patched/include/config/ip6/nf/target/log.h ---- linux-2.4.32/include/config/ip6/nf/target/log.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/log.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_TARGET_LOG -diff -Nur linux-2.4.32/include/config/ip6/nf/target/mark/module.h linux-2.4.32.patched/include/config/ip6/nf/target/mark/module.h ---- linux-2.4.32/include/config/ip6/nf/target/mark/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/mark/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IP6_NF_TARGET_MARK_MODULE 1 -diff -Nur linux-2.4.32/include/config/ip6/nf/target/mark.h linux-2.4.32.patched/include/config/ip6/nf/target/mark.h ---- linux-2.4.32/include/config/ip6/nf/target/mark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ip6/nf/target/mark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IP6_NF_TARGET_MARK -diff -Nur linux-2.4.32/include/config/ipmi/device/interface.h linux-2.4.32.patched/include/config/ipmi/device/interface.h ---- linux-2.4.32/include/config/ipmi/device/interface.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipmi/device/interface.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPMI_DEVICE_INTERFACE -diff -Nur linux-2.4.32/include/config/ipmi/handler.h linux-2.4.32.patched/include/config/ipmi/handler.h ---- linux-2.4.32/include/config/ipmi/handler.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipmi/handler.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPMI_HANDLER -diff -Nur linux-2.4.32/include/config/ipmi/kcs.h linux-2.4.32.patched/include/config/ipmi/kcs.h ---- linux-2.4.32/include/config/ipmi/kcs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipmi/kcs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPMI_KCS -diff -Nur linux-2.4.32/include/config/ipmi/panic/event.h linux-2.4.32.patched/include/config/ipmi/panic/event.h ---- linux-2.4.32/include/config/ipmi/panic/event.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipmi/panic/event.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPMI_PANIC_EVENT -diff -Nur linux-2.4.32/include/config/ipmi/watchdog.h linux-2.4.32.patched/include/config/ipmi/watchdog.h ---- linux-2.4.32/include/config/ipmi/watchdog.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipmi/watchdog.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPMI_WATCHDOG -diff -Nur linux-2.4.32/include/config/ipsec/nat/traversal.h linux-2.4.32.patched/include/config/ipsec/nat/traversal.h ---- linux-2.4.32/include/config/ipsec/nat/traversal.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipsec/nat/traversal.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IPSEC_NAT_TRAVERSAL 1 -diff -Nur linux-2.4.32/include/config/ipv6/module.h linux-2.4.32.patched/include/config/ipv6/module.h ---- linux-2.4.32/include/config/ipv6/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipv6/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_IPV6_MODULE 1 -diff -Nur linux-2.4.32/include/config/ipv6.h linux-2.4.32.patched/include/config/ipv6.h ---- linux-2.4.32/include/config/ipv6.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipv6.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPV6 -diff -Nur linux-2.4.32/include/config/ipx.h linux-2.4.32.patched/include/config/ipx.h ---- linux-2.4.32/include/config/ipx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ipx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IPX -diff -Nur linux-2.4.32/include/config/irda.h linux-2.4.32.patched/include/config/irda.h ---- linux-2.4.32/include/config/irda.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/irda.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_IRDA -diff -Nur linux-2.4.32/include/config/isa.h linux-2.4.32.patched/include/config/isa.h ---- linux-2.4.32/include/config/isa.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/isa.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ISA -diff -Nur linux-2.4.32/include/config/isapnp.h linux-2.4.32.patched/include/config/isapnp.h ---- linux-2.4.32/include/config/isapnp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/isapnp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ISAPNP -diff -Nur linux-2.4.32/include/config/isdn.h linux-2.4.32.patched/include/config/isdn.h ---- linux-2.4.32/include/config/isdn.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/isdn.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ISDN -diff -Nur linux-2.4.32/include/config/iso9660/fs/module.h linux-2.4.32.patched/include/config/iso9660/fs/module.h ---- linux-2.4.32/include/config/iso9660/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/iso9660/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_ISO9660_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/iso9660/fs.h linux-2.4.32.patched/include/config/iso9660/fs.h ---- linux-2.4.32/include/config/iso9660/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/iso9660/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ISO9660_FS -diff -Nur linux-2.4.32/include/config/jbd/debug.h linux-2.4.32.patched/include/config/jbd/debug.h ---- linux-2.4.32/include/config/jbd/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jbd/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JBD_DEBUG -diff -Nur linux-2.4.32/include/config/jbd/module.h linux-2.4.32.patched/include/config/jbd/module.h ---- linux-2.4.32/include/config/jbd/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jbd/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_JBD_MODULE 1 -diff -Nur linux-2.4.32/include/config/jbd.h linux-2.4.32.patched/include/config/jbd.h ---- linux-2.4.32/include/config/jbd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jbd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JBD -diff -Nur linux-2.4.32/include/config/jffs/fs.h linux-2.4.32.patched/include/config/jffs/fs.h ---- linux-2.4.32/include/config/jffs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFFS_FS -diff -Nur linux-2.4.32/include/config/jffs2/bbc/armlib.h linux-2.4.32.patched/include/config/jffs2/bbc/armlib.h ---- linux-2.4.32/include/config/jffs2/bbc/armlib.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/bbc/armlib.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFFS2_BBC_ARMLIB -diff -Nur linux-2.4.32/include/config/jffs2/bbc/lzari.h linux-2.4.32.patched/include/config/jffs2/bbc/lzari.h ---- linux-2.4.32/include/config/jffs2/bbc/lzari.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/bbc/lzari.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_JFFS2_BBC_LZARI 1 -diff -Nur linux-2.4.32/include/config/jffs2/bbc/lzhd.h linux-2.4.32.patched/include/config/jffs2/bbc/lzhd.h ---- linux-2.4.32/include/config/jffs2/bbc/lzhd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/bbc/lzhd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFFS2_BBC_LZHD -diff -Nur linux-2.4.32/include/config/jffs2/bbc/lzo.h linux-2.4.32.patched/include/config/jffs2/bbc/lzo.h ---- linux-2.4.32/include/config/jffs2/bbc/lzo.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/bbc/lzo.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFFS2_BBC_LZO -diff -Nur linux-2.4.32/include/config/jffs2/bbc/lzss.h linux-2.4.32.patched/include/config/jffs2/bbc/lzss.h ---- linux-2.4.32/include/config/jffs2/bbc/lzss.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/bbc/lzss.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFFS2_BBC_LZSS -diff -Nur linux-2.4.32/include/config/jffs2/fs/debug.h linux-2.4.32.patched/include/config/jffs2/fs/debug.h ---- linux-2.4.32/include/config/jffs2/fs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/fs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_JFFS2_FS_DEBUG (0) -diff -Nur linux-2.4.32/include/config/jffs2/fs.h linux-2.4.32.patched/include/config/jffs2/fs.h ---- linux-2.4.32/include/config/jffs2/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jffs2/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_JFFS2_FS 1 -diff -Nur linux-2.4.32/include/config/jfs/debug.h linux-2.4.32.patched/include/config/jfs/debug.h ---- linux-2.4.32/include/config/jfs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jfs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFS_DEBUG -diff -Nur linux-2.4.32/include/config/jfs/fs.h linux-2.4.32.patched/include/config/jfs/fs.h ---- linux-2.4.32/include/config/jfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFS_FS -diff -Nur linux-2.4.32/include/config/jfs/statistics.h linux-2.4.32.patched/include/config/jfs/statistics.h ---- linux-2.4.32/include/config/jfs/statistics.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/jfs/statistics.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_JFS_STATISTICS -diff -Nur linux-2.4.32/include/config/joliet.h linux-2.4.32.patched/include/config/joliet.h ---- linux-2.4.32/include/config/joliet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/joliet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_JOLIET 1 -diff -Nur linux-2.4.32/include/config/kcore/aout.h linux-2.4.32.patched/include/config/kcore/aout.h ---- linux-2.4.32/include/config/kcore/aout.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/kcore/aout.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_KCORE_AOUT -diff -Nur linux-2.4.32/include/config/kcore/elf.h linux-2.4.32.patched/include/config/kcore/elf.h ---- linux-2.4.32/include/config/kcore/elf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/kcore/elf.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_KCORE_ELF 1 -diff -Nur linux-2.4.32/include/config/khttpd.h linux-2.4.32.patched/include/config/khttpd.h ---- linux-2.4.32/include/config/khttpd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/khttpd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_KHTTPD -diff -Nur linux-2.4.32/include/config/kmod.h linux-2.4.32.patched/include/config/kmod.h ---- linux-2.4.32/include/config/kmod.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/kmod.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_KMOD -diff -Nur linux-2.4.32/include/config/lan/saa9730.h linux-2.4.32.patched/include/config/lan/saa9730.h ---- linux-2.4.32/include/config/lan/saa9730.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lan/saa9730.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LAN_SAA9730 -diff -Nur linux-2.4.32/include/config/lance.h linux-2.4.32.patched/include/config/lance.h ---- linux-2.4.32/include/config/lance.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lance.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LANCE -diff -Nur linux-2.4.32/include/config/lapb.h linux-2.4.32.patched/include/config/lapb.h ---- linux-2.4.32/include/config/lapb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lapb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LAPB -diff -Nur linux-2.4.32/include/config/lasat.h linux-2.4.32.patched/include/config/lasat.h ---- linux-2.4.32/include/config/lasat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lasat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LASAT -diff -Nur linux-2.4.32/include/config/ldm/partition.h linux-2.4.32.patched/include/config/ldm/partition.h ---- linux-2.4.32/include/config/ldm/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ldm/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LDM_PARTITION -diff -Nur linux-2.4.32/include/config/llc.h linux-2.4.32.patched/include/config/llc.h ---- linux-2.4.32/include/config/llc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/llc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LLC -diff -Nur linux-2.4.32/include/config/lne390.h linux-2.4.32.patched/include/config/lne390.h ---- linux-2.4.32/include/config/lne390.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lne390.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LNE390 -diff -Nur linux-2.4.32/include/config/lockd/module.h linux-2.4.32.patched/include/config/lockd/module.h ---- linux-2.4.32/include/config/lockd/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lockd/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_LOCKD_MODULE 1 -diff -Nur linux-2.4.32/include/config/lockd/v4.h linux-2.4.32.patched/include/config/lockd/v4.h ---- linux-2.4.32/include/config/lockd/v4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lockd/v4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_LOCKD_V4 1 -diff -Nur linux-2.4.32/include/config/lockd.h linux-2.4.32.patched/include/config/lockd.h ---- linux-2.4.32/include/config/lockd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lockd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LOCKD -diff -Nur linux-2.4.32/include/config/log/buf/shift.h linux-2.4.32.patched/include/config/log/buf/shift.h ---- linux-2.4.32/include/config/log/buf/shift.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/log/buf/shift.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_LOG_BUF_SHIFT (0) -diff -Nur linux-2.4.32/include/config/lp/console.h linux-2.4.32.patched/include/config/lp/console.h ---- linux-2.4.32/include/config/lp/console.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/lp/console.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_LP_CONSOLE -diff -Nur linux-2.4.32/include/config/mac/partition.h linux-2.4.32.patched/include/config/mac/partition.h ---- linux-2.4.32/include/config/mac/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mac/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MAC_PARTITION 1 -diff -Nur linux-2.4.32/include/config/machz/wdt.h linux-2.4.32.patched/include/config/machz/wdt.h ---- linux-2.4.32/include/config/machz/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/machz/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MACHZ_WDT -diff -Nur linux-2.4.32/include/config/magic/sysrq.h linux-2.4.32.patched/include/config/magic/sysrq.h ---- linux-2.4.32/include/config/magic/sysrq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/magic/sysrq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MAGIC_SYSRQ 1 -diff -Nur linux-2.4.32/include/config/mca.h linux-2.4.32.patched/include/config/mca.h ---- linux-2.4.32/include/config/mca.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mca.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MCA -diff -Nur linux-2.4.32/include/config/md/linear.h linux-2.4.32.patched/include/config/md/linear.h ---- linux-2.4.32/include/config/md/linear.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md/linear.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD_LINEAR -diff -Nur linux-2.4.32/include/config/md/multipath.h linux-2.4.32.patched/include/config/md/multipath.h ---- linux-2.4.32/include/config/md/multipath.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md/multipath.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD_MULTIPATH -diff -Nur linux-2.4.32/include/config/md/raid0.h linux-2.4.32.patched/include/config/md/raid0.h ---- linux-2.4.32/include/config/md/raid0.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md/raid0.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD_RAID0 -diff -Nur linux-2.4.32/include/config/md/raid1.h linux-2.4.32.patched/include/config/md/raid1.h ---- linux-2.4.32/include/config/md/raid1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md/raid1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD_RAID1 -diff -Nur linux-2.4.32/include/config/md/raid5.h linux-2.4.32.patched/include/config/md/raid5.h ---- linux-2.4.32/include/config/md/raid5.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md/raid5.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD_RAID5 -diff -Nur linux-2.4.32/include/config/md.h linux-2.4.32.patched/include/config/md.h ---- linux-2.4.32/include/config/md.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/md.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MD -diff -Nur linux-2.4.32/include/config/midi/emu10k1.h linux-2.4.32.patched/include/config/midi/emu10k1.h ---- linux-2.4.32/include/config/midi/emu10k1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/midi/emu10k1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIDI_EMU10K1 -diff -Nur linux-2.4.32/include/config/midi/via82cxxx.h linux-2.4.32.patched/include/config/midi/via82cxxx.h ---- linux-2.4.32/include/config/midi/via82cxxx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/midi/via82cxxx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIDI_VIA82CXXX -diff -Nur linux-2.4.32/include/config/minix/fs/module.h linux-2.4.32.patched/include/config/minix/fs/module.h ---- linux-2.4.32/include/config/minix/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/minix/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MINIX_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/minix/fs.h linux-2.4.32.patched/include/config/minix/fs.h ---- linux-2.4.32/include/config/minix/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/minix/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MINIX_FS -diff -Nur linux-2.4.32/include/config/minix/subpartition.h linux-2.4.32.patched/include/config/minix/subpartition.h ---- linux-2.4.32/include/config/minix/subpartition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/minix/subpartition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MINIX_SUBPARTITION -diff -Nur linux-2.4.32/include/config/mips/atlas.h linux-2.4.32.patched/include/config/mips/atlas.h ---- linux-2.4.32/include/config/mips/atlas.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/atlas.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_ATLAS -diff -Nur linux-2.4.32/include/config/mips/au1000.h linux-2.4.32.patched/include/config/mips/au1000.h ---- linux-2.4.32/include/config/mips/au1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/au1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_AU1000 -diff -Nur linux-2.4.32/include/config/mips/bosporus.h linux-2.4.32.patched/include/config/mips/bosporus.h ---- linux-2.4.32/include/config/mips/bosporus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/bosporus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_BOSPORUS -diff -Nur linux-2.4.32/include/config/mips/brcm.h linux-2.4.32.patched/include/config/mips/brcm.h ---- linux-2.4.32/include/config/mips/brcm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/brcm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MIPS_BRCM 1 -diff -Nur linux-2.4.32/include/config/mips/cobalt.h linux-2.4.32.patched/include/config/mips/cobalt.h ---- linux-2.4.32/include/config/mips/cobalt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/cobalt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_COBALT -diff -Nur linux-2.4.32/include/config/mips/db1000.h linux-2.4.32.patched/include/config/mips/db1000.h ---- linux-2.4.32/include/config/mips/db1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/db1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_DB1000 -diff -Nur linux-2.4.32/include/config/mips/db1100.h linux-2.4.32.patched/include/config/mips/db1100.h ---- linux-2.4.32/include/config/mips/db1100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/db1100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_DB1100 -diff -Nur linux-2.4.32/include/config/mips/db1200.h linux-2.4.32.patched/include/config/mips/db1200.h ---- linux-2.4.32/include/config/mips/db1200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/db1200.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_DB1200 -diff -Nur linux-2.4.32/include/config/mips/db1500.h linux-2.4.32.patched/include/config/mips/db1500.h ---- linux-2.4.32/include/config/mips/db1500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/db1500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_DB1500 -diff -Nur linux-2.4.32/include/config/mips/db1550.h linux-2.4.32.patched/include/config/mips/db1550.h ---- linux-2.4.32/include/config/mips/db1550.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/db1550.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_DB1550 -diff -Nur linux-2.4.32/include/config/mips/ev64120.h linux-2.4.32.patched/include/config/mips/ev64120.h ---- linux-2.4.32/include/config/mips/ev64120.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/ev64120.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_EV64120 -diff -Nur linux-2.4.32/include/config/mips/ev96100.h linux-2.4.32.patched/include/config/mips/ev96100.h ---- linux-2.4.32/include/config/mips/ev96100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/ev96100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_EV96100 -diff -Nur linux-2.4.32/include/config/mips/ficmmp.h linux-2.4.32.patched/include/config/mips/ficmmp.h ---- linux-2.4.32/include/config/mips/ficmmp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/ficmmp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_FICMMP -diff -Nur linux-2.4.32/include/config/mips/hydrogen3.h linux-2.4.32.patched/include/config/mips/hydrogen3.h ---- linux-2.4.32/include/config/mips/hydrogen3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/hydrogen3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_HYDROGEN3 -diff -Nur linux-2.4.32/include/config/mips/ite8172.h linux-2.4.32.patched/include/config/mips/ite8172.h ---- linux-2.4.32/include/config/mips/ite8172.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/ite8172.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_ITE8172 -diff -Nur linux-2.4.32/include/config/mips/ivr.h linux-2.4.32.patched/include/config/mips/ivr.h ---- linux-2.4.32/include/config/mips/ivr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/ivr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_IVR -diff -Nur linux-2.4.32/include/config/mips/magnum/4000.h linux-2.4.32.patched/include/config/mips/magnum/4000.h ---- linux-2.4.32/include/config/mips/magnum/4000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/magnum/4000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_MAGNUM_4000 -diff -Nur linux-2.4.32/include/config/mips/malta.h linux-2.4.32.patched/include/config/mips/malta.h ---- linux-2.4.32/include/config/mips/malta.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/malta.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_MALTA -diff -Nur linux-2.4.32/include/config/mips/mirage.h linux-2.4.32.patched/include/config/mips/mirage.h ---- linux-2.4.32/include/config/mips/mirage.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/mirage.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_MIRAGE -diff -Nur linux-2.4.32/include/config/mips/mtx1.h linux-2.4.32.patched/include/config/mips/mtx1.h ---- linux-2.4.32/include/config/mips/mtx1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/mtx1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_MTX1 -diff -Nur linux-2.4.32/include/config/mips/pb1000.h linux-2.4.32.patched/include/config/mips/pb1000.h ---- linux-2.4.32/include/config/mips/pb1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/pb1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_PB1000 -diff -Nur linux-2.4.32/include/config/mips/pb1100.h linux-2.4.32.patched/include/config/mips/pb1100.h ---- linux-2.4.32/include/config/mips/pb1100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/pb1100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_PB1100 -diff -Nur linux-2.4.32/include/config/mips/pb1200.h linux-2.4.32.patched/include/config/mips/pb1200.h ---- linux-2.4.32/include/config/mips/pb1200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/pb1200.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_PB1200 -diff -Nur linux-2.4.32/include/config/mips/pb1500.h linux-2.4.32.patched/include/config/mips/pb1500.h ---- linux-2.4.32/include/config/mips/pb1500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/pb1500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_PB1500 -diff -Nur linux-2.4.32/include/config/mips/pb1550.h linux-2.4.32.patched/include/config/mips/pb1550.h ---- linux-2.4.32/include/config/mips/pb1550.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/pb1550.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_PB1550 -diff -Nur linux-2.4.32/include/config/mips/sead.h linux-2.4.32.patched/include/config/mips/sead.h ---- linux-2.4.32/include/config/mips/sead.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/sead.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_SEAD -diff -Nur linux-2.4.32/include/config/mips/uncached.h linux-2.4.32.patched/include/config/mips/uncached.h ---- linux-2.4.32/include/config/mips/uncached.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/uncached.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_UNCACHED -diff -Nur linux-2.4.32/include/config/mips/xxs1500.h linux-2.4.32.patched/include/config/mips/xxs1500.h ---- linux-2.4.32/include/config/mips/xxs1500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips/xxs1500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS_XXS1500 -diff -Nur linux-2.4.32/include/config/mips32/compat.h linux-2.4.32.patched/include/config/mips32/compat.h ---- linux-2.4.32/include/config/mips32/compat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips32/compat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS32_COMPAT -diff -Nur linux-2.4.32/include/config/mips32/n32.h linux-2.4.32.patched/include/config/mips32/n32.h ---- linux-2.4.32/include/config/mips32/n32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips32/n32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS32_N32 -diff -Nur linux-2.4.32/include/config/mips32/o32.h linux-2.4.32.patched/include/config/mips32/o32.h ---- linux-2.4.32/include/config/mips32/o32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips32/o32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS32_O32 -diff -Nur linux-2.4.32/include/config/mips32.h linux-2.4.32.patched/include/config/mips32.h ---- linux-2.4.32/include/config/mips32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MIPS32 1 -diff -Nur linux-2.4.32/include/config/mips64.h linux-2.4.32.patched/include/config/mips64.h ---- linux-2.4.32/include/config/mips64.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips64.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIPS64 -diff -Nur linux-2.4.32/include/config/mips.h linux-2.4.32.patched/include/config/mips.h ---- linux-2.4.32/include/config/mips.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mips.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MIPS 1 -diff -Nur linux-2.4.32/include/config/mixcomwd.h linux-2.4.32.patched/include/config/mixcomwd.h ---- linux-2.4.32/include/config/mixcomwd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mixcomwd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MIXCOMWD -diff -Nur linux-2.4.32/include/config/mkiss/module.h linux-2.4.32.patched/include/config/mkiss/module.h ---- linux-2.4.32/include/config/mkiss/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mkiss/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MKISS_MODULE 1 -diff -Nur linux-2.4.32/include/config/mkiss.h linux-2.4.32.patched/include/config/mkiss.h ---- linux-2.4.32/include/config/mkiss.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mkiss.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MKISS -diff -Nur linux-2.4.32/include/config/modules.h linux-2.4.32.patched/include/config/modules.h ---- linux-2.4.32/include/config/modules.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/modules.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MODULES 1 -diff -Nur linux-2.4.32/include/config/modversions.h linux-2.4.32.patched/include/config/modversions.h ---- linux-2.4.32/include/config/modversions.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/modversions.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MODVERSIONS -diff -Nur linux-2.4.32/include/config/momenco/jaguar/atx.h linux-2.4.32.patched/include/config/momenco/jaguar/atx.h ---- linux-2.4.32/include/config/momenco/jaguar/atx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/momenco/jaguar/atx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MOMENCO_JAGUAR_ATX -diff -Nur linux-2.4.32/include/config/momenco/ocelot/c.h linux-2.4.32.patched/include/config/momenco/ocelot/c.h ---- linux-2.4.32/include/config/momenco/ocelot/c.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/momenco/ocelot/c.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MOMENCO_OCELOT_C -diff -Nur linux-2.4.32/include/config/momenco/ocelot/g.h linux-2.4.32.patched/include/config/momenco/ocelot/g.h ---- linux-2.4.32/include/config/momenco/ocelot/g.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/momenco/ocelot/g.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MOMENCO_OCELOT_G -diff -Nur linux-2.4.32/include/config/momenco/ocelot.h linux-2.4.32.patched/include/config/momenco/ocelot.h ---- linux-2.4.32/include/config/momenco/ocelot.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/momenco/ocelot.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MOMENCO_OCELOT -diff -Nur linux-2.4.32/include/config/mouse.h linux-2.4.32.patched/include/config/mouse.h ---- linux-2.4.32/include/config/mouse.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mouse.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MOUSE -diff -Nur linux-2.4.32/include/config/msdos/fs.h linux-2.4.32.patched/include/config/msdos/fs.h ---- linux-2.4.32/include/config/msdos/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/msdos/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MSDOS_FS -diff -Nur linux-2.4.32/include/config/msdos/partition.h linux-2.4.32.patched/include/config/msdos/partition.h ---- linux-2.4.32/include/config/msdos/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/msdos/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MSDOS_PARTITION 1 -diff -Nur linux-2.4.32/include/config/mtd/absent.h linux-2.4.32.patched/include/config/mtd/absent.h ---- linux-2.4.32/include/config/mtd/absent.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/absent.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_ABSENT -diff -Nur linux-2.4.32/include/config/mtd/amdstd.h linux-2.4.32.patched/include/config/mtd/amdstd.h ---- linux-2.4.32/include/config/mtd/amdstd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/amdstd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_AMDSTD -diff -Nur linux-2.4.32/include/config/mtd/bcm947xx.h linux-2.4.32.patched/include/config/mtd/bcm947xx.h ---- linux-2.4.32/include/config/mtd/bcm947xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/bcm947xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_BCM947XX 1 -diff -Nur linux-2.4.32/include/config/mtd/blkmtd.h linux-2.4.32.patched/include/config/mtd/blkmtd.h ---- linux-2.4.32/include/config/mtd/blkmtd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/blkmtd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_BLKMTD -diff -Nur linux-2.4.32/include/config/mtd/block.h linux-2.4.32.patched/include/config/mtd/block.h ---- linux-2.4.32/include/config/mtd/block.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/block.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_BLOCK 1 -diff -Nur linux-2.4.32/include/config/mtd/bosporus.h linux-2.4.32.patched/include/config/mtd/bosporus.h ---- linux-2.4.32/include/config/mtd/bosporus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/bosporus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_BOSPORUS -diff -Nur linux-2.4.32/include/config/mtd/cfi/adv/options.h linux-2.4.32.patched/include/config/mtd/cfi/adv/options.h ---- linux-2.4.32/include/config/mtd/cfi/adv/options.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/adv/options.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_ADV_OPTIONS 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/amdstd.h linux-2.4.32.patched/include/config/mtd/cfi/amdstd.h ---- linux-2.4.32/include/config/mtd/cfi/amdstd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/amdstd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_AMDSTD 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/b1.h linux-2.4.32.patched/include/config/mtd/cfi/b1.h ---- linux-2.4.32/include/config/mtd/cfi/b1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/b1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_B1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/b2.h linux-2.4.32.patched/include/config/mtd/cfi/b2.h ---- linux-2.4.32/include/config/mtd/cfi/b2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/b2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_B2 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/b4.h linux-2.4.32.patched/include/config/mtd/cfi/b4.h ---- linux-2.4.32/include/config/mtd/cfi/b4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/b4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_B4 -diff -Nur linux-2.4.32/include/config/mtd/cfi/b8.h linux-2.4.32.patched/include/config/mtd/cfi/b8.h ---- linux-2.4.32/include/config/mtd/cfi/b8.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/b8.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_B8 -diff -Nur linux-2.4.32/include/config/mtd/cfi/be/byte/swap.h linux-2.4.32.patched/include/config/mtd/cfi/be/byte/swap.h ---- linux-2.4.32/include/config/mtd/cfi/be/byte/swap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/be/byte/swap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_BE_BYTE_SWAP -diff -Nur linux-2.4.32/include/config/mtd/cfi/geometry.h linux-2.4.32.patched/include/config/mtd/cfi/geometry.h ---- linux-2.4.32/include/config/mtd/cfi/geometry.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/geometry.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_GEOMETRY 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/i1.h linux-2.4.32.patched/include/config/mtd/cfi/i1.h ---- linux-2.4.32/include/config/mtd/cfi/i1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/i1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_I1 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/i2.h linux-2.4.32.patched/include/config/mtd/cfi/i2.h ---- linux-2.4.32/include/config/mtd/cfi/i2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/i2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_I2 -diff -Nur linux-2.4.32/include/config/mtd/cfi/i4.h linux-2.4.32.patched/include/config/mtd/cfi/i4.h ---- linux-2.4.32/include/config/mtd/cfi/i4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/i4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_I4 -diff -Nur linux-2.4.32/include/config/mtd/cfi/i8.h linux-2.4.32.patched/include/config/mtd/cfi/i8.h ---- linux-2.4.32/include/config/mtd/cfi/i8.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/i8.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_I8 -diff -Nur linux-2.4.32/include/config/mtd/cfi/intelext.h linux-2.4.32.patched/include/config/mtd/cfi/intelext.h ---- linux-2.4.32/include/config/mtd/cfi/intelext.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/intelext.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_INTELEXT 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/le/byte/swap.h linux-2.4.32.patched/include/config/mtd/cfi/le/byte/swap.h ---- linux-2.4.32/include/config/mtd/cfi/le/byte/swap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/le/byte/swap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_LE_BYTE_SWAP -diff -Nur linux-2.4.32/include/config/mtd/cfi/noswap.h linux-2.4.32.patched/include/config/mtd/cfi/noswap.h ---- linux-2.4.32/include/config/mtd/cfi/noswap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/noswap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_NOSWAP 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/sststd.h linux-2.4.32.patched/include/config/mtd/cfi/sststd.h ---- linux-2.4.32/include/config/mtd/cfi/sststd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/sststd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI_SSTSTD 1 -diff -Nur linux-2.4.32/include/config/mtd/cfi/staa.h linux-2.4.32.patched/include/config/mtd/cfi/staa.h ---- linux-2.4.32/include/config/mtd/cfi/staa.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi/staa.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CFI_STAA -diff -Nur linux-2.4.32/include/config/mtd/cfi.h linux-2.4.32.patched/include/config/mtd/cfi.h ---- linux-2.4.32/include/config/mtd/cfi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cfi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CFI 1 -diff -Nur linux-2.4.32/include/config/mtd/char.h linux-2.4.32.patched/include/config/mtd/char.h ---- linux-2.4.32/include/config/mtd/char.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/char.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_CHAR 1 -diff -Nur linux-2.4.32/include/config/mtd/cmdline/parts.h linux-2.4.32.patched/include/config/mtd/cmdline/parts.h ---- linux-2.4.32/include/config/mtd/cmdline/parts.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cmdline/parts.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CMDLINE_PARTS -diff -Nur linux-2.4.32/include/config/mtd/concat.h linux-2.4.32.patched/include/config/mtd/concat.h ---- linux-2.4.32/include/config/mtd/concat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/concat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CONCAT -diff -Nur linux-2.4.32/include/config/mtd/cstm/mips/ixx.h linux-2.4.32.patched/include/config/mtd/cstm/mips/ixx.h ---- linux-2.4.32/include/config/mtd/cstm/mips/ixx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/cstm/mips/ixx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_CSTM_MIPS_IXX -diff -Nur linux-2.4.32/include/config/mtd/db1x00.h linux-2.4.32.patched/include/config/mtd/db1x00.h ---- linux-2.4.32/include/config/mtd/db1x00.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/db1x00.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DB1X00 -diff -Nur linux-2.4.32/include/config/mtd/debug.h linux-2.4.32.patched/include/config/mtd/debug.h ---- linux-2.4.32/include/config/mtd/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DEBUG -diff -Nur linux-2.4.32/include/config/mtd/doc1000.h linux-2.4.32.patched/include/config/mtd/doc1000.h ---- linux-2.4.32/include/config/mtd/doc1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/doc1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DOC1000 -diff -Nur linux-2.4.32/include/config/mtd/doc2000.h linux-2.4.32.patched/include/config/mtd/doc2000.h ---- linux-2.4.32/include/config/mtd/doc2000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/doc2000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DOC2000 -diff -Nur linux-2.4.32/include/config/mtd/doc2001.h linux-2.4.32.patched/include/config/mtd/doc2001.h ---- linux-2.4.32/include/config/mtd/doc2001.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/doc2001.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DOC2001 -diff -Nur linux-2.4.32/include/config/mtd/docprobe.h linux-2.4.32.patched/include/config/mtd/docprobe.h ---- linux-2.4.32/include/config/mtd/docprobe.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/docprobe.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_DOCPROBE -diff -Nur linux-2.4.32/include/config/mtd/gen/probe.h linux-2.4.32.patched/include/config/mtd/gen/probe.h ---- linux-2.4.32/include/config/mtd/gen/probe.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/gen/probe.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_GEN_PROBE 1 -diff -Nur linux-2.4.32/include/config/mtd/hydrogen3.h linux-2.4.32.patched/include/config/mtd/hydrogen3.h ---- linux-2.4.32/include/config/mtd/hydrogen3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/hydrogen3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_HYDROGEN3 -diff -Nur linux-2.4.32/include/config/mtd/jedec.h linux-2.4.32.patched/include/config/mtd/jedec.h ---- linux-2.4.32/include/config/mtd/jedec.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/jedec.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_JEDEC -diff -Nur linux-2.4.32/include/config/mtd/jedecprobe.h linux-2.4.32.patched/include/config/mtd/jedecprobe.h ---- linux-2.4.32/include/config/mtd/jedecprobe.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/jedecprobe.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_JEDECPROBE -diff -Nur linux-2.4.32/include/config/mtd/lasat.h linux-2.4.32.patched/include/config/mtd/lasat.h ---- linux-2.4.32/include/config/mtd/lasat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/lasat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_LASAT -diff -Nur linux-2.4.32/include/config/mtd/mirage.h linux-2.4.32.patched/include/config/mtd/mirage.h ---- linux-2.4.32/include/config/mtd/mirage.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/mirage.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_MIRAGE -diff -Nur linux-2.4.32/include/config/mtd/mtdram.h linux-2.4.32.patched/include/config/mtd/mtdram.h ---- linux-2.4.32/include/config/mtd/mtdram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/mtdram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_MTDRAM -diff -Nur linux-2.4.32/include/config/mtd/mtx1.h linux-2.4.32.patched/include/config/mtd/mtx1.h ---- linux-2.4.32/include/config/mtd/mtx1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/mtx1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_MTX1 -diff -Nur linux-2.4.32/include/config/mtd/nand.h linux-2.4.32.patched/include/config/mtd/nand.h ---- linux-2.4.32/include/config/mtd/nand.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/nand.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_NAND -diff -Nur linux-2.4.32/include/config/mtd/obsolete/chips.h linux-2.4.32.patched/include/config/mtd/obsolete/chips.h ---- linux-2.4.32/include/config/mtd/obsolete/chips.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/obsolete/chips.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_OBSOLETE_CHIPS -diff -Nur linux-2.4.32/include/config/mtd/ocelot.h linux-2.4.32.patched/include/config/mtd/ocelot.h ---- linux-2.4.32/include/config/mtd/ocelot.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/ocelot.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_OCELOT -diff -Nur linux-2.4.32/include/config/mtd/partitions.h linux-2.4.32.patched/include/config/mtd/partitions.h ---- linux-2.4.32/include/config/mtd/partitions.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/partitions.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD_PARTITIONS 1 -diff -Nur linux-2.4.32/include/config/mtd/pb1000.h linux-2.4.32.patched/include/config/mtd/pb1000.h ---- linux-2.4.32/include/config/mtd/pb1000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pb1000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PB1000 -diff -Nur linux-2.4.32/include/config/mtd/pb1100.h linux-2.4.32.patched/include/config/mtd/pb1100.h ---- linux-2.4.32/include/config/mtd/pb1100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pb1100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PB1100 -diff -Nur linux-2.4.32/include/config/mtd/pb1500.h linux-2.4.32.patched/include/config/mtd/pb1500.h ---- linux-2.4.32/include/config/mtd/pb1500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pb1500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PB1500 -diff -Nur linux-2.4.32/include/config/mtd/pb1550.h linux-2.4.32.patched/include/config/mtd/pb1550.h ---- linux-2.4.32/include/config/mtd/pb1550.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pb1550.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PB1550 -diff -Nur linux-2.4.32/include/config/mtd/pci.h linux-2.4.32.patched/include/config/mtd/pci.h ---- linux-2.4.32/include/config/mtd/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PCI -diff -Nur linux-2.4.32/include/config/mtd/pcmcia.h linux-2.4.32.patched/include/config/mtd/pcmcia.h ---- linux-2.4.32/include/config/mtd/pcmcia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pcmcia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PCMCIA -diff -Nur linux-2.4.32/include/config/mtd/physmap.h linux-2.4.32.patched/include/config/mtd/physmap.h ---- linux-2.4.32/include/config/mtd/physmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/physmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PHYSMAP -diff -Nur linux-2.4.32/include/config/mtd/pmc551.h linux-2.4.32.patched/include/config/mtd/pmc551.h ---- linux-2.4.32/include/config/mtd/pmc551.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/pmc551.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_PMC551 -diff -Nur linux-2.4.32/include/config/mtd/ram.h linux-2.4.32.patched/include/config/mtd/ram.h ---- linux-2.4.32/include/config/mtd/ram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/ram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_RAM -diff -Nur linux-2.4.32/include/config/mtd/redboot/parts.h linux-2.4.32.patched/include/config/mtd/redboot/parts.h ---- linux-2.4.32/include/config/mtd/redboot/parts.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/redboot/parts.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_REDBOOT_PARTS -diff -Nur linux-2.4.32/include/config/mtd/rom.h linux-2.4.32.patched/include/config/mtd/rom.h ---- linux-2.4.32/include/config/mtd/rom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/rom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_ROM -diff -Nur linux-2.4.32/include/config/mtd/sharp.h linux-2.4.32.patched/include/config/mtd/sharp.h ---- linux-2.4.32/include/config/mtd/sharp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/sharp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_SHARP -diff -Nur linux-2.4.32/include/config/mtd/slram.h linux-2.4.32.patched/include/config/mtd/slram.h ---- linux-2.4.32/include/config/mtd/slram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/slram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_SLRAM -diff -Nur linux-2.4.32/include/config/mtd/xxs1500.h linux-2.4.32.patched/include/config/mtd/xxs1500.h ---- linux-2.4.32/include/config/mtd/xxs1500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd/xxs1500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MTD_XXS1500 -diff -Nur linux-2.4.32/include/config/mtd.h linux-2.4.32.patched/include/config/mtd.h ---- linux-2.4.32/include/config/mtd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/mtd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_MTD 1 -diff -Nur linux-2.4.32/include/config/myri/sbus.h linux-2.4.32.patched/include/config/myri/sbus.h ---- linux-2.4.32/include/config/myri/sbus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/myri/sbus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_MYRI_SBUS -diff -Nur linux-2.4.32/include/config/natsemi.h linux-2.4.32.patched/include/config/natsemi.h ---- linux-2.4.32/include/config/natsemi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/natsemi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NATSEMI -diff -Nur linux-2.4.32/include/config/ncp/fs.h linux-2.4.32.patched/include/config/ncp/fs.h ---- linux-2.4.32/include/config/ncp/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncp/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCP_FS -diff -Nur linux-2.4.32/include/config/ncpfs/extras.h linux-2.4.32.patched/include/config/ncpfs/extras.h ---- linux-2.4.32/include/config/ncpfs/extras.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/extras.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_EXTRAS -diff -Nur linux-2.4.32/include/config/ncpfs/ioctl/locking.h linux-2.4.32.patched/include/config/ncpfs/ioctl/locking.h ---- linux-2.4.32/include/config/ncpfs/ioctl/locking.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/ioctl/locking.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_IOCTL_LOCKING -diff -Nur linux-2.4.32/include/config/ncpfs/nfs/ns.h linux-2.4.32.patched/include/config/ncpfs/nfs/ns.h ---- linux-2.4.32/include/config/ncpfs/nfs/ns.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/nfs/ns.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_NFS_NS -diff -Nur linux-2.4.32/include/config/ncpfs/nls.h linux-2.4.32.patched/include/config/ncpfs/nls.h ---- linux-2.4.32/include/config/ncpfs/nls.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/nls.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_NLS -diff -Nur linux-2.4.32/include/config/ncpfs/os2/ns.h linux-2.4.32.patched/include/config/ncpfs/os2/ns.h ---- linux-2.4.32/include/config/ncpfs/os2/ns.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/os2/ns.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_OS2_NS -diff -Nur linux-2.4.32/include/config/ncpfs/packet/signing.h linux-2.4.32.patched/include/config/ncpfs/packet/signing.h ---- linux-2.4.32/include/config/ncpfs/packet/signing.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/packet/signing.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_PACKET_SIGNING -diff -Nur linux-2.4.32/include/config/ncpfs/smalldos.h linux-2.4.32.patched/include/config/ncpfs/smalldos.h ---- linux-2.4.32/include/config/ncpfs/smalldos.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/smalldos.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_SMALLDOS -diff -Nur linux-2.4.32/include/config/ncpfs/strong.h linux-2.4.32.patched/include/config/ncpfs/strong.h ---- linux-2.4.32/include/config/ncpfs/strong.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ncpfs/strong.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NCPFS_STRONG -diff -Nur linux-2.4.32/include/config/ne2k/pci.h linux-2.4.32.patched/include/config/ne2k/pci.h ---- linux-2.4.32/include/config/ne2k/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ne2k/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NE2K_PCI -diff -Nur linux-2.4.32/include/config/ne3210.h linux-2.4.32.patched/include/config/ne3210.h ---- linux-2.4.32/include/config/ne3210.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ne3210.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NE3210 -diff -Nur linux-2.4.32/include/config/nec/eagle.h linux-2.4.32.patched/include/config/nec/eagle.h ---- linux-2.4.32/include/config/nec/eagle.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nec/eagle.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NEC_EAGLE -diff -Nur linux-2.4.32/include/config/nec/osprey.h linux-2.4.32.patched/include/config/nec/osprey.h ---- linux-2.4.32/include/config/nec/osprey.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nec/osprey.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NEC_OSPREY -diff -Nur linux-2.4.32/include/config/net/cls/fw/module.h linux-2.4.32.patched/include/config/net/cls/fw/module.h ---- linux-2.4.32/include/config/net/cls/fw/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/fw/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_FW_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/fw.h linux-2.4.32.patched/include/config/net/cls/fw.h ---- linux-2.4.32/include/config/net/cls/fw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/fw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_FW -diff -Nur linux-2.4.32/include/config/net/cls/police.h linux-2.4.32.patched/include/config/net/cls/police.h ---- linux-2.4.32/include/config/net/cls/police.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/police.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_POLICE 1 -diff -Nur linux-2.4.32/include/config/net/cls/route4/module.h linux-2.4.32.patched/include/config/net/cls/route4/module.h ---- linux-2.4.32/include/config/net/cls/route4/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/route4/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_ROUTE4_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/route4.h linux-2.4.32.patched/include/config/net/cls/route4.h ---- linux-2.4.32/include/config/net/cls/route4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/route4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_ROUTE4 -diff -Nur linux-2.4.32/include/config/net/cls/route.h linux-2.4.32.patched/include/config/net/cls/route.h ---- linux-2.4.32/include/config/net/cls/route.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/route.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_ROUTE 1 -diff -Nur linux-2.4.32/include/config/net/cls/rsvp/module.h linux-2.4.32.patched/include/config/net/cls/rsvp/module.h ---- linux-2.4.32/include/config/net/cls/rsvp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/rsvp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_RSVP_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/rsvp6/module.h linux-2.4.32.patched/include/config/net/cls/rsvp6/module.h ---- linux-2.4.32/include/config/net/cls/rsvp6/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/rsvp6/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_RSVP6_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/rsvp6.h linux-2.4.32.patched/include/config/net/cls/rsvp6.h ---- linux-2.4.32/include/config/net/cls/rsvp6.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/rsvp6.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_RSVP6 -diff -Nur linux-2.4.32/include/config/net/cls/rsvp.h linux-2.4.32.patched/include/config/net/cls/rsvp.h ---- linux-2.4.32/include/config/net/cls/rsvp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/rsvp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_RSVP -diff -Nur linux-2.4.32/include/config/net/cls/tcindex/module.h linux-2.4.32.patched/include/config/net/cls/tcindex/module.h ---- linux-2.4.32/include/config/net/cls/tcindex/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/tcindex/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_TCINDEX_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/tcindex.h linux-2.4.32.patched/include/config/net/cls/tcindex.h ---- linux-2.4.32/include/config/net/cls/tcindex.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/tcindex.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_TCINDEX -diff -Nur linux-2.4.32/include/config/net/cls/u32/module.h linux-2.4.32.patched/include/config/net/cls/u32/module.h ---- linux-2.4.32/include/config/net/cls/u32/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/u32/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS_U32_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/cls/u32.h linux-2.4.32.patched/include/config/net/cls/u32.h ---- linux-2.4.32/include/config/net/cls/u32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls/u32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_CLS_U32 -diff -Nur linux-2.4.32/include/config/net/cls.h linux-2.4.32.patched/include/config/net/cls.h ---- linux-2.4.32/include/config/net/cls.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/cls.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_CLS 1 -diff -Nur linux-2.4.32/include/config/net/divert.h linux-2.4.32.patched/include/config/net/divert.h ---- linux-2.4.32/include/config/net/divert.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/divert.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_DIVERT -diff -Nur linux-2.4.32/include/config/net/estimator.h linux-2.4.32.patched/include/config/net/estimator.h ---- linux-2.4.32/include/config/net/estimator.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/estimator.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_ESTIMATOR 1 -diff -Nur linux-2.4.32/include/config/net/ethernet.h linux-2.4.32.patched/include/config/net/ethernet.h ---- linux-2.4.32/include/config/net/ethernet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ethernet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_ETHERNET 1 -diff -Nur linux-2.4.32/include/config/net/fastroute.h linux-2.4.32.patched/include/config/net/fastroute.h ---- linux-2.4.32/include/config/net/fastroute.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/fastroute.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_FASTROUTE -diff -Nur linux-2.4.32/include/config/net/fc.h linux-2.4.32.patched/include/config/net/fc.h ---- linux-2.4.32/include/config/net/fc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/fc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_FC -diff -Nur linux-2.4.32/include/config/net/hw/flowcontrol.h linux-2.4.32.patched/include/config/net/hw/flowcontrol.h ---- linux-2.4.32/include/config/net/hw/flowcontrol.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/hw/flowcontrol.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_HW_FLOWCONTROL -diff -Nur linux-2.4.32/include/config/net/ipgre/broadcast.h linux-2.4.32.patched/include/config/net/ipgre/broadcast.h ---- linux-2.4.32/include/config/net/ipgre/broadcast.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ipgre/broadcast.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_IPGRE_BROADCAST -diff -Nur linux-2.4.32/include/config/net/ipgre/module.h linux-2.4.32.patched/include/config/net/ipgre/module.h ---- linux-2.4.32/include/config/net/ipgre/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ipgre/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_IPGRE_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/ipgre.h linux-2.4.32.patched/include/config/net/ipgre.h ---- linux-2.4.32/include/config/net/ipgre.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ipgre.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_IPGRE -diff -Nur linux-2.4.32/include/config/net/ipip/module.h linux-2.4.32.patched/include/config/net/ipip/module.h ---- linux-2.4.32/include/config/net/ipip/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ipip/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_IPIP_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/ipip.h linux-2.4.32.patched/include/config/net/ipip.h ---- linux-2.4.32/include/config/net/ipip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/ipip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_IPIP -diff -Nur linux-2.4.32/include/config/net/isa.h linux-2.4.32.patched/include/config/net/isa.h ---- linux-2.4.32/include/config/net/isa.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/isa.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_ISA -diff -Nur linux-2.4.32/include/config/net/pci.h linux-2.4.32.patched/include/config/net/pci.h ---- linux-2.4.32/include/config/net/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_PCI 1 -diff -Nur linux-2.4.32/include/config/net/pcmcia.h linux-2.4.32.patched/include/config/net/pcmcia.h ---- linux-2.4.32/include/config/net/pcmcia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/pcmcia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_PCMCIA -diff -Nur linux-2.4.32/include/config/net/pktgen.h linux-2.4.32.patched/include/config/net/pktgen.h ---- linux-2.4.32/include/config/net/pktgen.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/pktgen.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_PKTGEN -diff -Nur linux-2.4.32/include/config/net/pocket.h linux-2.4.32.patched/include/config/net/pocket.h ---- linux-2.4.32/include/config/net/pocket.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/pocket.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_POCKET -diff -Nur linux-2.4.32/include/config/net/qos.h linux-2.4.32.patched/include/config/net/qos.h ---- linux-2.4.32/include/config/net/qos.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/qos.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_QOS 1 -diff -Nur linux-2.4.32/include/config/net/radio.h linux-2.4.32.patched/include/config/net/radio.h ---- linux-2.4.32/include/config/net/radio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/radio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_RADIO 1 -diff -Nur linux-2.4.32/include/config/net/random.h linux-2.4.32.patched/include/config/net/random.h ---- linux-2.4.32/include/config/net/random.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/random.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_RANDOM 1 -diff -Nur linux-2.4.32/include/config/net/sch/cbq/module.h linux-2.4.32.patched/include/config/net/sch/cbq/module.h ---- linux-2.4.32/include/config/net/sch/cbq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/cbq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_CBQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/cbq.h linux-2.4.32.patched/include/config/net/sch/cbq.h ---- linux-2.4.32/include/config/net/sch/cbq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/cbq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_CBQ -diff -Nur linux-2.4.32/include/config/net/sch/csz/module.h linux-2.4.32.patched/include/config/net/sch/csz/module.h ---- linux-2.4.32/include/config/net/sch/csz/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/csz/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_CSZ_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/csz.h linux-2.4.32.patched/include/config/net/sch/csz.h ---- linux-2.4.32/include/config/net/sch/csz.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/csz.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_CSZ -diff -Nur linux-2.4.32/include/config/net/sch/dsmark/module.h linux-2.4.32.patched/include/config/net/sch/dsmark/module.h ---- linux-2.4.32/include/config/net/sch/dsmark/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/dsmark/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_DSMARK_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/dsmark.h linux-2.4.32.patched/include/config/net/sch/dsmark.h ---- linux-2.4.32/include/config/net/sch/dsmark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/dsmark.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_DSMARK -diff -Nur linux-2.4.32/include/config/net/sch/gred/module.h linux-2.4.32.patched/include/config/net/sch/gred/module.h ---- linux-2.4.32/include/config/net/sch/gred/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/gred/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_GRED_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/gred.h linux-2.4.32.patched/include/config/net/sch/gred.h ---- linux-2.4.32/include/config/net/sch/gred.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/gred.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_GRED -diff -Nur linux-2.4.32/include/config/net/sch/hfsc/module.h linux-2.4.32.patched/include/config/net/sch/hfsc/module.h ---- linux-2.4.32/include/config/net/sch/hfsc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/hfsc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_HFSC_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/hfsc.h linux-2.4.32.patched/include/config/net/sch/hfsc.h ---- linux-2.4.32/include/config/net/sch/hfsc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/hfsc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_HFSC -diff -Nur linux-2.4.32/include/config/net/sch/htb/module.h linux-2.4.32.patched/include/config/net/sch/htb/module.h ---- linux-2.4.32/include/config/net/sch/htb/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/htb/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_HTB_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/htb.h linux-2.4.32.patched/include/config/net/sch/htb.h ---- linux-2.4.32/include/config/net/sch/htb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/htb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_HTB -diff -Nur linux-2.4.32/include/config/net/sch/ingress/module.h linux-2.4.32.patched/include/config/net/sch/ingress/module.h ---- linux-2.4.32/include/config/net/sch/ingress/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/ingress/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_INGRESS_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/ingress.h linux-2.4.32.patched/include/config/net/sch/ingress.h ---- linux-2.4.32/include/config/net/sch/ingress.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/ingress.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_INGRESS -diff -Nur linux-2.4.32/include/config/net/sch/netem.h linux-2.4.32.patched/include/config/net/sch/netem.h ---- linux-2.4.32/include/config/net/sch/netem.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/netem.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_NETEM -diff -Nur linux-2.4.32/include/config/net/sch/prio/module.h linux-2.4.32.patched/include/config/net/sch/prio/module.h ---- linux-2.4.32/include/config/net/sch/prio/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/prio/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_PRIO_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/prio.h linux-2.4.32.patched/include/config/net/sch/prio.h ---- linux-2.4.32/include/config/net/sch/prio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/prio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_PRIO -diff -Nur linux-2.4.32/include/config/net/sch/red/module.h linux-2.4.32.patched/include/config/net/sch/red/module.h ---- linux-2.4.32/include/config/net/sch/red/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/red/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_RED_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/red.h linux-2.4.32.patched/include/config/net/sch/red.h ---- linux-2.4.32/include/config/net/sch/red.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/red.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_RED -diff -Nur linux-2.4.32/include/config/net/sch/sfq/module.h linux-2.4.32.patched/include/config/net/sch/sfq/module.h ---- linux-2.4.32/include/config/net/sch/sfq/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/sfq/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_SFQ_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/sfq.h linux-2.4.32.patched/include/config/net/sch/sfq.h ---- linux-2.4.32/include/config/net/sch/sfq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/sfq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_SFQ -diff -Nur linux-2.4.32/include/config/net/sch/tbf/module.h linux-2.4.32.patched/include/config/net/sch/tbf/module.h ---- linux-2.4.32/include/config/net/sch/tbf/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/tbf/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_TBF_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/tbf.h linux-2.4.32.patched/include/config/net/sch/tbf.h ---- linux-2.4.32/include/config/net/sch/tbf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/tbf.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_TBF -diff -Nur linux-2.4.32/include/config/net/sch/teql/module.h linux-2.4.32.patched/include/config/net/sch/teql/module.h ---- linux-2.4.32/include/config/net/sch/teql/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/teql/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCH_TEQL_MODULE 1 -diff -Nur linux-2.4.32/include/config/net/sch/teql.h linux-2.4.32.patched/include/config/net/sch/teql.h ---- linux-2.4.32/include/config/net/sch/teql.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sch/teql.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_SCH_TEQL -diff -Nur linux-2.4.32/include/config/net/sched.h linux-2.4.32.patched/include/config/net/sched.h ---- linux-2.4.32/include/config/net/sched.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/sched.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_SCHED 1 -diff -Nur linux-2.4.32/include/config/net/vendor/3com.h linux-2.4.32.patched/include/config/net/vendor/3com.h ---- linux-2.4.32/include/config/net/vendor/3com.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/vendor/3com.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_VENDOR_3COM -diff -Nur linux-2.4.32/include/config/net/vendor/racal.h linux-2.4.32.patched/include/config/net/vendor/racal.h ---- linux-2.4.32/include/config/net/vendor/racal.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/vendor/racal.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_VENDOR_RACAL -diff -Nur linux-2.4.32/include/config/net/vendor/smc.h linux-2.4.32.patched/include/config/net/vendor/smc.h ---- linux-2.4.32/include/config/net/vendor/smc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/vendor/smc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NET_VENDOR_SMC -diff -Nur linux-2.4.32/include/config/net/wireless.h linux-2.4.32.patched/include/config/net/wireless.h ---- linux-2.4.32/include/config/net/wireless.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net/wireless.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET_WIRELESS 1 -diff -Nur linux-2.4.32/include/config/netdevices.h linux-2.4.32.patched/include/config/netdevices.h ---- linux-2.4.32/include/config/netdevices.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netdevices.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NETDEVICES 1 -diff -Nur linux-2.4.32/include/config/netfilter/debug.h linux-2.4.32.patched/include/config/netfilter/debug.h ---- linux-2.4.32/include/config/netfilter/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netfilter/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NETFILTER_DEBUG -diff -Nur linux-2.4.32/include/config/netfilter.h linux-2.4.32.patched/include/config/netfilter.h ---- linux-2.4.32/include/config/netfilter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netfilter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NETFILTER 1 -diff -Nur linux-2.4.32/include/config/net.h linux-2.4.32.patched/include/config/net.h ---- linux-2.4.32/include/config/net.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/net.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NET 1 -diff -Nur linux-2.4.32/include/config/netlink/dev/module.h linux-2.4.32.patched/include/config/netlink/dev/module.h ---- linux-2.4.32/include/config/netlink/dev/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netlink/dev/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NETLINK_DEV_MODULE 1 -diff -Nur linux-2.4.32/include/config/netlink/dev.h linux-2.4.32.patched/include/config/netlink/dev.h ---- linux-2.4.32/include/config/netlink/dev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netlink/dev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NETLINK_DEV -diff -Nur linux-2.4.32/include/config/netrom.h linux-2.4.32.patched/include/config/netrom.h ---- linux-2.4.32/include/config/netrom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/netrom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NETROM -diff -Nur linux-2.4.32/include/config/new/irq.h linux-2.4.32.patched/include/config/new/irq.h ---- linux-2.4.32/include/config/new/irq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/new/irq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NEW_IRQ 1 -diff -Nur linux-2.4.32/include/config/new/time/c.h linux-2.4.32.patched/include/config/new/time/c.h ---- linux-2.4.32/include/config/new/time/c.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/new/time/c.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NEW_TIME_C 1 -diff -Nur linux-2.4.32/include/config/nfs/directio.h linux-2.4.32.patched/include/config/nfs/directio.h ---- linux-2.4.32/include/config/nfs/directio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfs/directio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFS_DIRECTIO -diff -Nur linux-2.4.32/include/config/nfs/fs/module.h linux-2.4.32.patched/include/config/nfs/fs/module.h ---- linux-2.4.32/include/config/nfs/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfs/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NFS_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/nfs/fs.h linux-2.4.32.patched/include/config/nfs/fs.h ---- linux-2.4.32/include/config/nfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFS_FS -diff -Nur linux-2.4.32/include/config/nfs/v3.h linux-2.4.32.patched/include/config/nfs/v3.h ---- linux-2.4.32/include/config/nfs/v3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfs/v3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NFS_V3 1 -diff -Nur linux-2.4.32/include/config/nfsd/tcp.h linux-2.4.32.patched/include/config/nfsd/tcp.h ---- linux-2.4.32/include/config/nfsd/tcp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfsd/tcp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFSD_TCP -diff -Nur linux-2.4.32/include/config/nfsd/v3.h linux-2.4.32.patched/include/config/nfsd/v3.h ---- linux-2.4.32/include/config/nfsd/v3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfsd/v3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFSD_V3 -diff -Nur linux-2.4.32/include/config/nfsd.h linux-2.4.32.patched/include/config/nfsd.h ---- linux-2.4.32/include/config/nfsd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nfsd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFSD -diff -Nur linux-2.4.32/include/config/nftl.h linux-2.4.32.patched/include/config/nftl.h ---- linux-2.4.32/include/config/nftl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nftl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NFTL -diff -Nur linux-2.4.32/include/config/nino.h linux-2.4.32.patched/include/config/nino.h ---- linux-2.4.32/include/config/nino.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nino.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NINO -diff -Nur linux-2.4.32/include/config/nls/codepage/1250.h linux-2.4.32.patched/include/config/nls/codepage/1250.h ---- linux-2.4.32/include/config/nls/codepage/1250.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/1250.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_1250 -diff -Nur linux-2.4.32/include/config/nls/codepage/1251.h linux-2.4.32.patched/include/config/nls/codepage/1251.h ---- linux-2.4.32/include/config/nls/codepage/1251.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/1251.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_1251 -diff -Nur linux-2.4.32/include/config/nls/codepage/437.h linux-2.4.32.patched/include/config/nls/codepage/437.h ---- linux-2.4.32/include/config/nls/codepage/437.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/437.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_437 -diff -Nur linux-2.4.32/include/config/nls/codepage/737.h linux-2.4.32.patched/include/config/nls/codepage/737.h ---- linux-2.4.32/include/config/nls/codepage/737.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/737.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_737 -diff -Nur linux-2.4.32/include/config/nls/codepage/775.h linux-2.4.32.patched/include/config/nls/codepage/775.h ---- linux-2.4.32/include/config/nls/codepage/775.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/775.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_775 -diff -Nur linux-2.4.32/include/config/nls/codepage/850.h linux-2.4.32.patched/include/config/nls/codepage/850.h ---- linux-2.4.32/include/config/nls/codepage/850.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/850.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_850 -diff -Nur linux-2.4.32/include/config/nls/codepage/852.h linux-2.4.32.patched/include/config/nls/codepage/852.h ---- linux-2.4.32/include/config/nls/codepage/852.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/852.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_852 -diff -Nur linux-2.4.32/include/config/nls/codepage/855.h linux-2.4.32.patched/include/config/nls/codepage/855.h ---- linux-2.4.32/include/config/nls/codepage/855.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/855.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_855 -diff -Nur linux-2.4.32/include/config/nls/codepage/857.h linux-2.4.32.patched/include/config/nls/codepage/857.h ---- linux-2.4.32/include/config/nls/codepage/857.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/857.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_857 -diff -Nur linux-2.4.32/include/config/nls/codepage/860.h linux-2.4.32.patched/include/config/nls/codepage/860.h ---- linux-2.4.32/include/config/nls/codepage/860.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/860.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_860 -diff -Nur linux-2.4.32/include/config/nls/codepage/861.h linux-2.4.32.patched/include/config/nls/codepage/861.h ---- linux-2.4.32/include/config/nls/codepage/861.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/861.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_861 -diff -Nur linux-2.4.32/include/config/nls/codepage/862.h linux-2.4.32.patched/include/config/nls/codepage/862.h ---- linux-2.4.32/include/config/nls/codepage/862.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/862.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_862 -diff -Nur linux-2.4.32/include/config/nls/codepage/863.h linux-2.4.32.patched/include/config/nls/codepage/863.h ---- linux-2.4.32/include/config/nls/codepage/863.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/863.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_863 -diff -Nur linux-2.4.32/include/config/nls/codepage/864.h linux-2.4.32.patched/include/config/nls/codepage/864.h ---- linux-2.4.32/include/config/nls/codepage/864.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/864.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_864 -diff -Nur linux-2.4.32/include/config/nls/codepage/865.h linux-2.4.32.patched/include/config/nls/codepage/865.h ---- linux-2.4.32/include/config/nls/codepage/865.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/865.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_865 -diff -Nur linux-2.4.32/include/config/nls/codepage/866.h linux-2.4.32.patched/include/config/nls/codepage/866.h ---- linux-2.4.32/include/config/nls/codepage/866.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/866.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_866 -diff -Nur linux-2.4.32/include/config/nls/codepage/869.h linux-2.4.32.patched/include/config/nls/codepage/869.h ---- linux-2.4.32/include/config/nls/codepage/869.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/869.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_869 -diff -Nur linux-2.4.32/include/config/nls/codepage/874.h linux-2.4.32.patched/include/config/nls/codepage/874.h ---- linux-2.4.32/include/config/nls/codepage/874.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/874.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_874 -diff -Nur linux-2.4.32/include/config/nls/codepage/932.h linux-2.4.32.patched/include/config/nls/codepage/932.h ---- linux-2.4.32/include/config/nls/codepage/932.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/932.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_932 -diff -Nur linux-2.4.32/include/config/nls/codepage/936.h linux-2.4.32.patched/include/config/nls/codepage/936.h ---- linux-2.4.32/include/config/nls/codepage/936.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/936.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_936 -diff -Nur linux-2.4.32/include/config/nls/codepage/949.h linux-2.4.32.patched/include/config/nls/codepage/949.h ---- linux-2.4.32/include/config/nls/codepage/949.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/949.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_949 -diff -Nur linux-2.4.32/include/config/nls/codepage/950.h linux-2.4.32.patched/include/config/nls/codepage/950.h ---- linux-2.4.32/include/config/nls/codepage/950.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/codepage/950.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_CODEPAGE_950 -diff -Nur linux-2.4.32/include/config/nls/default.h linux-2.4.32.patched/include/config/nls/default.h ---- linux-2.4.32/include/config/nls/default.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/default.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NLS_DEFAULT "iso8859-1" -diff -Nur linux-2.4.32/include/config/nls/iso8859/13.h linux-2.4.32.patched/include/config/nls/iso8859/13.h ---- linux-2.4.32/include/config/nls/iso8859/13.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/13.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_13 -diff -Nur linux-2.4.32/include/config/nls/iso8859/14.h linux-2.4.32.patched/include/config/nls/iso8859/14.h ---- linux-2.4.32/include/config/nls/iso8859/14.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/14.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_14 -diff -Nur linux-2.4.32/include/config/nls/iso8859/15.h linux-2.4.32.patched/include/config/nls/iso8859/15.h ---- linux-2.4.32/include/config/nls/iso8859/15.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/15.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_15 -diff -Nur linux-2.4.32/include/config/nls/iso8859/1.h linux-2.4.32.patched/include/config/nls/iso8859/1.h ---- linux-2.4.32/include/config/nls/iso8859/1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_1 -diff -Nur linux-2.4.32/include/config/nls/iso8859/2.h linux-2.4.32.patched/include/config/nls/iso8859/2.h ---- linux-2.4.32/include/config/nls/iso8859/2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_2 -diff -Nur linux-2.4.32/include/config/nls/iso8859/3.h linux-2.4.32.patched/include/config/nls/iso8859/3.h ---- linux-2.4.32/include/config/nls/iso8859/3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_3 -diff -Nur linux-2.4.32/include/config/nls/iso8859/4.h linux-2.4.32.patched/include/config/nls/iso8859/4.h ---- linux-2.4.32/include/config/nls/iso8859/4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_4 -diff -Nur linux-2.4.32/include/config/nls/iso8859/5.h linux-2.4.32.patched/include/config/nls/iso8859/5.h ---- linux-2.4.32/include/config/nls/iso8859/5.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/5.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_5 -diff -Nur linux-2.4.32/include/config/nls/iso8859/6.h linux-2.4.32.patched/include/config/nls/iso8859/6.h ---- linux-2.4.32/include/config/nls/iso8859/6.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/6.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_6 -diff -Nur linux-2.4.32/include/config/nls/iso8859/7.h linux-2.4.32.patched/include/config/nls/iso8859/7.h ---- linux-2.4.32/include/config/nls/iso8859/7.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/7.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_7 -diff -Nur linux-2.4.32/include/config/nls/iso8859/8.h linux-2.4.32.patched/include/config/nls/iso8859/8.h ---- linux-2.4.32/include/config/nls/iso8859/8.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/8.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_8 -diff -Nur linux-2.4.32/include/config/nls/iso8859/9.h linux-2.4.32.patched/include/config/nls/iso8859/9.h ---- linux-2.4.32/include/config/nls/iso8859/9.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/iso8859/9.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_ISO8859_9 -diff -Nur linux-2.4.32/include/config/nls/koi8/r.h linux-2.4.32.patched/include/config/nls/koi8/r.h ---- linux-2.4.32/include/config/nls/koi8/r.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/koi8/r.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_KOI8_R -diff -Nur linux-2.4.32/include/config/nls/koi8/u.h linux-2.4.32.patched/include/config/nls/koi8/u.h ---- linux-2.4.32/include/config/nls/koi8/u.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/koi8/u.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_KOI8_U -diff -Nur linux-2.4.32/include/config/nls/utf8.h linux-2.4.32.patched/include/config/nls/utf8.h ---- linux-2.4.32/include/config/nls/utf8.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls/utf8.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NLS_UTF8 -diff -Nur linux-2.4.32/include/config/nls.h linux-2.4.32.patched/include/config/nls.h ---- linux-2.4.32/include/config/nls.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nls.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NLS 1 -diff -Nur linux-2.4.32/include/config/noncoherent/io.h linux-2.4.32.patched/include/config/noncoherent/io.h ---- linux-2.4.32/include/config/noncoherent/io.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/noncoherent/io.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_NONCOHERENT_IO 1 -diff -Nur linux-2.4.32/include/config/ns83820.h linux-2.4.32.patched/include/config/ns83820.h ---- linux-2.4.32/include/config/ns83820.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ns83820.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NS83820 -diff -Nur linux-2.4.32/include/config/ntfs/fs.h linux-2.4.32.patched/include/config/ntfs/fs.h ---- linux-2.4.32/include/config/ntfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ntfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NTFS_FS -diff -Nur linux-2.4.32/include/config/ntfs/rw.h linux-2.4.32.patched/include/config/ntfs/rw.h ---- linux-2.4.32/include/config/ntfs/rw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ntfs/rw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NTFS_RW -diff -Nur linux-2.4.32/include/config/nvram.h linux-2.4.32.patched/include/config/nvram.h ---- linux-2.4.32/include/config/nvram.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/nvram.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_NVRAM -diff -Nur linux-2.4.32/include/config/olivetti/m700.h linux-2.4.32.patched/include/config/olivetti/m700.h ---- linux-2.4.32/include/config/olivetti/m700.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/olivetti/m700.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_OLIVETTI_M700 -diff -Nur linux-2.4.32/include/config/oom/killer.h linux-2.4.32.patched/include/config/oom/killer.h ---- linux-2.4.32/include/config/oom/killer.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/oom/killer.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_OOM_KILLER -diff -Nur linux-2.4.32/include/config/osf/partition.h linux-2.4.32.patched/include/config/osf/partition.h ---- linux-2.4.32/include/config/osf/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/osf/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_OSF_PARTITION -diff -Nur linux-2.4.32/include/config/packet/mmap.h linux-2.4.32.patched/include/config/packet/mmap.h ---- linux-2.4.32/include/config/packet/mmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/packet/mmap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PACKET_MMAP 1 -diff -Nur linux-2.4.32/include/config/packet.h linux-2.4.32.patched/include/config/packet.h ---- linux-2.4.32/include/config/packet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/packet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PACKET 1 -diff -Nur linux-2.4.32/include/config/page/size/16kb.h linux-2.4.32.patched/include/config/page/size/16kb.h ---- linux-2.4.32/include/config/page/size/16kb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/page/size/16kb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PAGE_SIZE_16KB -diff -Nur linux-2.4.32/include/config/page/size/4kb.h linux-2.4.32.patched/include/config/page/size/4kb.h ---- linux-2.4.32/include/config/page/size/4kb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/page/size/4kb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PAGE_SIZE_4KB 1 -diff -Nur linux-2.4.32/include/config/page/size/64kb.h linux-2.4.32.patched/include/config/page/size/64kb.h ---- linux-2.4.32/include/config/page/size/64kb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/page/size/64kb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PAGE_SIZE_64KB -diff -Nur linux-2.4.32/include/config/paride.h linux-2.4.32.patched/include/config/paride.h ---- linux-2.4.32/include/config/paride.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/paride.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARIDE -diff -Nur linux-2.4.32/include/config/parport/1284.h linux-2.4.32.patched/include/config/parport/1284.h ---- linux-2.4.32/include/config/parport/1284.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/1284.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_1284 -diff -Nur linux-2.4.32/include/config/parport/amiga.h linux-2.4.32.patched/include/config/parport/amiga.h ---- linux-2.4.32/include/config/parport/amiga.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/amiga.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_AMIGA -diff -Nur linux-2.4.32/include/config/parport/atari.h linux-2.4.32.patched/include/config/parport/atari.h ---- linux-2.4.32/include/config/parport/atari.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/atari.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_ATARI -diff -Nur linux-2.4.32/include/config/parport/gsc.h linux-2.4.32.patched/include/config/parport/gsc.h ---- linux-2.4.32/include/config/parport/gsc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/gsc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_GSC -diff -Nur linux-2.4.32/include/config/parport/ip22.h linux-2.4.32.patched/include/config/parport/ip22.h ---- linux-2.4.32/include/config/parport/ip22.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/ip22.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_IP22 -diff -Nur linux-2.4.32/include/config/parport/mfc3.h linux-2.4.32.patched/include/config/parport/mfc3.h ---- linux-2.4.32/include/config/parport/mfc3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/mfc3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_MFC3 -diff -Nur linux-2.4.32/include/config/parport/module.h linux-2.4.32.patched/include/config/parport/module.h ---- linux-2.4.32/include/config/parport/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PARPORT_MODULE 1 -diff -Nur linux-2.4.32/include/config/parport/other.h linux-2.4.32.patched/include/config/parport/other.h ---- linux-2.4.32/include/config/parport/other.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/other.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_OTHER -diff -Nur linux-2.4.32/include/config/parport/pc.h linux-2.4.32.patched/include/config/parport/pc.h ---- linux-2.4.32/include/config/parport/pc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/pc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_PC -diff -Nur linux-2.4.32/include/config/parport/splink/module.h linux-2.4.32.patched/include/config/parport/splink/module.h ---- linux-2.4.32/include/config/parport/splink/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/splink/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PARPORT_SPLINK_MODULE 1 -diff -Nur linux-2.4.32/include/config/parport/splink.h linux-2.4.32.patched/include/config/parport/splink.h ---- linux-2.4.32/include/config/parport/splink.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/splink.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_SPLINK -diff -Nur linux-2.4.32/include/config/parport/sunbpp.h linux-2.4.32.patched/include/config/parport/sunbpp.h ---- linux-2.4.32/include/config/parport/sunbpp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport/sunbpp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT_SUNBPP -diff -Nur linux-2.4.32/include/config/parport.h linux-2.4.32.patched/include/config/parport.h ---- linux-2.4.32/include/config/parport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/parport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PARPORT -diff -Nur linux-2.4.32/include/config/partition/advanced.h linux-2.4.32.patched/include/config/partition/advanced.h ---- linux-2.4.32/include/config/partition/advanced.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/partition/advanced.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PARTITION_ADVANCED 1 -diff -Nur linux-2.4.32/include/config/pci/auto.h linux-2.4.32.patched/include/config/pci/auto.h ---- linux-2.4.32/include/config/pci/auto.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pci/auto.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PCI_AUTO 1 -diff -Nur linux-2.4.32/include/config/pci/hermes.h linux-2.4.32.patched/include/config/pci/hermes.h ---- linux-2.4.32/include/config/pci/hermes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pci/hermes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCI_HERMES -diff -Nur linux-2.4.32/include/config/pci/names.h linux-2.4.32.patched/include/config/pci/names.h ---- linux-2.4.32/include/config/pci/names.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pci/names.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCI_NAMES -diff -Nur linux-2.4.32/include/config/pci/new.h linux-2.4.32.patched/include/config/pci/new.h ---- linux-2.4.32/include/config/pci/new.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pci/new.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCI_NEW -diff -Nur linux-2.4.32/include/config/pci.h linux-2.4.32.patched/include/config/pci.h ---- linux-2.4.32/include/config/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PCI 1 -diff -Nur linux-2.4.32/include/config/pcmcia/atmel.h linux-2.4.32.patched/include/config/pcmcia/atmel.h ---- linux-2.4.32/include/config/pcmcia/atmel.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia/atmel.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCMCIA_ATMEL -diff -Nur linux-2.4.32/include/config/pcmcia/hermes.h linux-2.4.32.patched/include/config/pcmcia/hermes.h ---- linux-2.4.32/include/config/pcmcia/hermes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia/hermes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCMCIA_HERMES -diff -Nur linux-2.4.32/include/config/pcmcia/module.h linux-2.4.32.patched/include/config/pcmcia/module.h ---- linux-2.4.32/include/config/pcmcia/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PCMCIA_MODULE 1 -diff -Nur linux-2.4.32/include/config/pcmcia/serial/cs/module.h linux-2.4.32.patched/include/config/pcmcia/serial/cs/module.h ---- linux-2.4.32/include/config/pcmcia/serial/cs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia/serial/cs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PCMCIA_SERIAL_CS_MODULE 1 -diff -Nur linux-2.4.32/include/config/pcmcia/serial/cs.h linux-2.4.32.patched/include/config/pcmcia/serial/cs.h ---- linux-2.4.32/include/config/pcmcia/serial/cs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia/serial/cs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCMCIA_SERIAL_CS -diff -Nur linux-2.4.32/include/config/pcmcia.h linux-2.4.32.patched/include/config/pcmcia.h ---- linux-2.4.32/include/config/pcmcia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcmcia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCMCIA -diff -Nur linux-2.4.32/include/config/pcnet32.h linux-2.4.32.patched/include/config/pcnet32.h ---- linux-2.4.32/include/config/pcnet32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcnet32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCNET32 -diff -Nur linux-2.4.32/include/config/pcwatchdog.h linux-2.4.32.patched/include/config/pcwatchdog.h ---- linux-2.4.32/include/config/pcwatchdog.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pcwatchdog.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PCWATCHDOG -diff -Nur linux-2.4.32/include/config/pdc202xx/burst.h linux-2.4.32.patched/include/config/pdc202xx/burst.h ---- linux-2.4.32/include/config/pdc202xx/burst.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pdc202xx/burst.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PDC202XX_BURST 1 -diff -Nur linux-2.4.32/include/config/pdc202xx/force.h linux-2.4.32.patched/include/config/pdc202xx/force.h ---- linux-2.4.32/include/config/pdc202xx/force.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pdc202xx/force.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PDC202XX_FORCE -diff -Nur linux-2.4.32/include/config/phone/ixj/pcmcia.h linux-2.4.32.patched/include/config/phone/ixj/pcmcia.h ---- linux-2.4.32/include/config/phone/ixj/pcmcia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/phone/ixj/pcmcia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PHONE_IXJ_PCMCIA -diff -Nur linux-2.4.32/include/config/phone/ixj.h linux-2.4.32.patched/include/config/phone/ixj.h ---- linux-2.4.32/include/config/phone/ixj.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/phone/ixj.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PHONE_IXJ -diff -Nur linux-2.4.32/include/config/phone.h linux-2.4.32.patched/include/config/phone.h ---- linux-2.4.32/include/config/phone.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/phone.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PHONE -diff -Nur linux-2.4.32/include/config/plip.h linux-2.4.32.patched/include/config/plip.h ---- linux-2.4.32/include/config/plip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/plip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PLIP -diff -Nur linux-2.4.32/include/config/plx/hermes.h linux-2.4.32.patched/include/config/plx/hermes.h ---- linux-2.4.32/include/config/plx/hermes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/plx/hermes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PLX_HERMES -diff -Nur linux-2.4.32/include/config/pmc/big/sur.h linux-2.4.32.patched/include/config/pmc/big/sur.h ---- linux-2.4.32/include/config/pmc/big/sur.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pmc/big/sur.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PMC_BIG_SUR -diff -Nur linux-2.4.32/include/config/pmc/stretch.h linux-2.4.32.patched/include/config/pmc/stretch.h ---- linux-2.4.32/include/config/pmc/stretch.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pmc/stretch.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PMC_STRETCH -diff -Nur linux-2.4.32/include/config/pmc/yosemite.h linux-2.4.32.patched/include/config/pmc/yosemite.h ---- linux-2.4.32/include/config/pmc/yosemite.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pmc/yosemite.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PMC_YOSEMITE -diff -Nur linux-2.4.32/include/config/pnp.h linux-2.4.32.patched/include/config/pnp.h ---- linux-2.4.32/include/config/pnp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pnp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PNP -diff -Nur linux-2.4.32/include/config/ppdev/module.h linux-2.4.32.patched/include/config/ppdev/module.h ---- linux-2.4.32/include/config/ppdev/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppdev/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPDEV_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppdev.h linux-2.4.32.patched/include/config/ppdev.h ---- linux-2.4.32/include/config/ppdev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppdev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPDEV -diff -Nur linux-2.4.32/include/config/ppp/async/module.h linux-2.4.32.patched/include/config/ppp/async/module.h ---- linux-2.4.32/include/config/ppp/async/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/async/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_ASYNC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppp/async.h linux-2.4.32.patched/include/config/ppp/async.h ---- linux-2.4.32/include/config/ppp/async.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/async.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_ASYNC -diff -Nur linux-2.4.32/include/config/ppp/bsdcomp/module.h linux-2.4.32.patched/include/config/ppp/bsdcomp/module.h ---- linux-2.4.32/include/config/ppp/bsdcomp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/bsdcomp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_BSDCOMP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppp/bsdcomp.h linux-2.4.32.patched/include/config/ppp/bsdcomp.h ---- linux-2.4.32/include/config/ppp/bsdcomp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/bsdcomp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_BSDCOMP -diff -Nur linux-2.4.32/include/config/ppp/deflate/module.h linux-2.4.32.patched/include/config/ppp/deflate/module.h ---- linux-2.4.32/include/config/ppp/deflate/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/deflate/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_DEFLATE_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppp/deflate.h linux-2.4.32.patched/include/config/ppp/deflate.h ---- linux-2.4.32/include/config/ppp/deflate.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/deflate.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_DEFLATE -diff -Nur linux-2.4.32/include/config/ppp/filter.h linux-2.4.32.patched/include/config/ppp/filter.h ---- linux-2.4.32/include/config/ppp/filter.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/filter.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_FILTER 1 -diff -Nur linux-2.4.32/include/config/ppp/module.h linux-2.4.32.patched/include/config/ppp/module.h ---- linux-2.4.32/include/config/ppp/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppp/mppe/mppc/module.h linux-2.4.32.patched/include/config/ppp/mppe/mppc/module.h ---- linux-2.4.32/include/config/ppp/mppe/mppc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/mppe/mppc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPP_MPPE_MPPC_MODULE 1 -diff -Nur linux-2.4.32/include/config/ppp/mppe/mppc.h linux-2.4.32.patched/include/config/ppp/mppe/mppc.h ---- linux-2.4.32/include/config/ppp/mppe/mppc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/mppe/mppc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_MPPE_MPPC -diff -Nur linux-2.4.32/include/config/ppp/multilink.h linux-2.4.32.patched/include/config/ppp/multilink.h ---- linux-2.4.32/include/config/ppp/multilink.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/multilink.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_MULTILINK -diff -Nur linux-2.4.32/include/config/ppp/sync/tty.h linux-2.4.32.patched/include/config/ppp/sync/tty.h ---- linux-2.4.32/include/config/ppp/sync/tty.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp/sync/tty.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP_SYNC_TTY -diff -Nur linux-2.4.32/include/config/ppp.h linux-2.4.32.patched/include/config/ppp.h ---- linux-2.4.32/include/config/ppp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ppp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPP -diff -Nur linux-2.4.32/include/config/pppoe/module.h linux-2.4.32.patched/include/config/pppoe/module.h ---- linux-2.4.32/include/config/pppoe/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pppoe/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PPPOE_MODULE 1 -diff -Nur linux-2.4.32/include/config/pppoe.h linux-2.4.32.patched/include/config/pppoe.h ---- linux-2.4.32/include/config/pppoe.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/pppoe.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PPPOE -diff -Nur linux-2.4.32/include/config/printer/module.h linux-2.4.32.patched/include/config/printer/module.h ---- linux-2.4.32/include/config/printer/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/printer/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PRINTER_MODULE 1 -diff -Nur linux-2.4.32/include/config/printer.h linux-2.4.32.patched/include/config/printer.h ---- linux-2.4.32/include/config/printer.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/printer.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PRINTER -diff -Nur linux-2.4.32/include/config/prism54.h linux-2.4.32.patched/include/config/prism54.h ---- linux-2.4.32/include/config/prism54.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/prism54.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_PRISM54 -diff -Nur linux-2.4.32/include/config/proc/fs.h linux-2.4.32.patched/include/config/proc/fs.h ---- linux-2.4.32/include/config/proc/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/proc/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_PROC_FS 1 -diff -Nur linux-2.4.32/include/config/qfmt/v2.h linux-2.4.32.patched/include/config/qfmt/v2.h ---- linux-2.4.32/include/config/qfmt/v2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/qfmt/v2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_QFMT_V2 -diff -Nur linux-2.4.32/include/config/qic02/tape.h linux-2.4.32.patched/include/config/qic02/tape.h ---- linux-2.4.32/include/config/qic02/tape.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/qic02/tape.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_QIC02_TAPE -diff -Nur linux-2.4.32/include/config/qnx4fs/fs.h linux-2.4.32.patched/include/config/qnx4fs/fs.h ---- linux-2.4.32/include/config/qnx4fs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/qnx4fs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_QNX4FS_FS -diff -Nur linux-2.4.32/include/config/qnx4fs/rw.h linux-2.4.32.patched/include/config/qnx4fs/rw.h ---- linux-2.4.32/include/config/qnx4fs/rw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/qnx4fs/rw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_QNX4FS_RW -diff -Nur linux-2.4.32/include/config/quota.h linux-2.4.32.patched/include/config/quota.h ---- linux-2.4.32/include/config/quota.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/quota.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_QUOTA -diff -Nur linux-2.4.32/include/config/r3964.h linux-2.4.32.patched/include/config/r3964.h ---- linux-2.4.32/include/config/r3964.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/r3964.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_R3964 -diff -Nur linux-2.4.32/include/config/r8169.h linux-2.4.32.patched/include/config/r8169.h ---- linux-2.4.32/include/config/r8169.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/r8169.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_R8169 -diff -Nur linux-2.4.32/include/config/radio/gemtek/pci.h linux-2.4.32.patched/include/config/radio/gemtek/pci.h ---- linux-2.4.32/include/config/radio/gemtek/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/radio/gemtek/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RADIO_GEMTEK_PCI -diff -Nur linux-2.4.32/include/config/radio/maestro.h linux-2.4.32.patched/include/config/radio/maestro.h ---- linux-2.4.32/include/config/radio/maestro.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/radio/maestro.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RADIO_MAESTRO -diff -Nur linux-2.4.32/include/config/radio/maxiradio.h linux-2.4.32.patched/include/config/radio/maxiradio.h ---- linux-2.4.32/include/config/radio/maxiradio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/radio/maxiradio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RADIO_MAXIRADIO -diff -Nur linux-2.4.32/include/config/radio/miropcm20.h linux-2.4.32.patched/include/config/radio/miropcm20.h ---- linux-2.4.32/include/config/radio/miropcm20.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/radio/miropcm20.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RADIO_MIROPCM20 -diff -Nur linux-2.4.32/include/config/ramfs.h linux-2.4.32.patched/include/config/ramfs.h ---- linux-2.4.32/include/config/ramfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ramfs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_RAMFS 1 -diff -Nur linux-2.4.32/include/config/rcpci.h linux-2.4.32.patched/include/config/rcpci.h ---- linux-2.4.32/include/config/rcpci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/rcpci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RCPCI -diff -Nur linux-2.4.32/include/config/reiserfs/check.h linux-2.4.32.patched/include/config/reiserfs/check.h ---- linux-2.4.32/include/config/reiserfs/check.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/reiserfs/check.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_REISERFS_CHECK -diff -Nur linux-2.4.32/include/config/reiserfs/fs.h linux-2.4.32.patched/include/config/reiserfs/fs.h ---- linux-2.4.32/include/config/reiserfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/reiserfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_REISERFS_FS -diff -Nur linux-2.4.32/include/config/reiserfs/proc/info.h linux-2.4.32.patched/include/config/reiserfs/proc/info.h ---- linux-2.4.32/include/config/reiserfs/proc/info.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/reiserfs/proc/info.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_REISERFS_PROC_INFO -diff -Nur linux-2.4.32/include/config/remote/debug.h linux-2.4.32.patched/include/config/remote/debug.h ---- linux-2.4.32/include/config/remote/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/remote/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_REMOTE_DEBUG -diff -Nur linux-2.4.32/include/config/romfs/fs.h linux-2.4.32.patched/include/config/romfs/fs.h ---- linux-2.4.32/include/config/romfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/romfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ROMFS_FS -diff -Nur linux-2.4.32/include/config/root/nfs.h linux-2.4.32.patched/include/config/root/nfs.h ---- linux-2.4.32/include/config/root/nfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/root/nfs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ROOT_NFS -diff -Nur linux-2.4.32/include/config/rose.h linux-2.4.32.patched/include/config/rose.h ---- linux-2.4.32/include/config/rose.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/rose.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ROSE -diff -Nur linux-2.4.32/include/config/rtc.h linux-2.4.32.patched/include/config/rtc.h ---- linux-2.4.32/include/config/rtc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/rtc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RTC -diff -Nur linux-2.4.32/include/config/runtime/debug.h linux-2.4.32.patched/include/config/runtime/debug.h ---- linux-2.4.32/include/config/runtime/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/runtime/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RUNTIME_DEBUG -diff -Nur linux-2.4.32/include/config/rwsem/generic/spinlock.h linux-2.4.32.patched/include/config/rwsem/generic/spinlock.h ---- linux-2.4.32/include/config/rwsem/generic/spinlock.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/rwsem/generic/spinlock.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_RWSEM_GENERIC_SPINLOCK 1 -diff -Nur linux-2.4.32/include/config/rwsem/xchgadd/algorithm.h linux-2.4.32.patched/include/config/rwsem/xchgadd/algorithm.h ---- linux-2.4.32/include/config/rwsem/xchgadd/algorithm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/rwsem/xchgadd/algorithm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_RWSEM_XCHGADD_ALGORITHM -diff -Nur linux-2.4.32/include/config/sbus.h linux-2.4.32.patched/include/config/sbus.h ---- linux-2.4.32/include/config/sbus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sbus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SBUS -diff -Nur linux-2.4.32/include/config/sc1200/wdt.h linux-2.4.32.patched/include/config/sc1200/wdt.h ---- linux-2.4.32/include/config/sc1200/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sc1200/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SC1200_WDT -diff -Nur linux-2.4.32/include/config/sc520/wdt.h linux-2.4.32.patched/include/config/sc520/wdt.h ---- linux-2.4.32/include/config/sc520/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sc520/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SC520_WDT -diff -Nur linux-2.4.32/include/config/scc/delay.h linux-2.4.32.patched/include/config/scc/delay.h ---- linux-2.4.32/include/config/scc/delay.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scc/delay.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCC_DELAY -diff -Nur linux-2.4.32/include/config/scc/trxecho.h linux-2.4.32.patched/include/config/scc/trxecho.h ---- linux-2.4.32/include/config/scc/trxecho.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scc/trxecho.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCC_TRXECHO -diff -Nur linux-2.4.32/include/config/scsi/7000fasst.h linux-2.4.32.patched/include/config/scsi/7000fasst.h ---- linux-2.4.32/include/config/scsi/7000fasst.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/7000fasst.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_7000FASST -diff -Nur linux-2.4.32/include/config/scsi/aacraid.h linux-2.4.32.patched/include/config/scsi/aacraid.h ---- linux-2.4.32/include/config/scsi/aacraid.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aacraid.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AACRAID -diff -Nur linux-2.4.32/include/config/scsi/acard.h linux-2.4.32.patched/include/config/scsi/acard.h ---- linux-2.4.32/include/config/scsi/acard.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/acard.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_ACARD -diff -Nur linux-2.4.32/include/config/scsi/advansys.h linux-2.4.32.patched/include/config/scsi/advansys.h ---- linux-2.4.32/include/config/scsi/advansys.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/advansys.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_ADVANSYS -diff -Nur linux-2.4.32/include/config/scsi/aha152x.h linux-2.4.32.patched/include/config/scsi/aha152x.h ---- linux-2.4.32/include/config/scsi/aha152x.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aha152x.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AHA152X -diff -Nur linux-2.4.32/include/config/scsi/aha1542.h linux-2.4.32.patched/include/config/scsi/aha1542.h ---- linux-2.4.32/include/config/scsi/aha1542.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aha1542.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AHA1542 -diff -Nur linux-2.4.32/include/config/scsi/aha1740.h linux-2.4.32.patched/include/config/scsi/aha1740.h ---- linux-2.4.32/include/config/scsi/aha1740.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aha1740.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AHA1740 -diff -Nur linux-2.4.32/include/config/scsi/aic79xx.h linux-2.4.32.patched/include/config/scsi/aic79xx.h ---- linux-2.4.32/include/config/scsi/aic79xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aic79xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AIC79XX -diff -Nur linux-2.4.32/include/config/scsi/aic7xxx/old.h linux-2.4.32.patched/include/config/scsi/aic7xxx/old.h ---- linux-2.4.32/include/config/scsi/aic7xxx/old.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aic7xxx/old.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AIC7XXX_OLD -diff -Nur linux-2.4.32/include/config/scsi/aic7xxx.h linux-2.4.32.patched/include/config/scsi/aic7xxx.h ---- linux-2.4.32/include/config/scsi/aic7xxx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/aic7xxx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AIC7XXX -diff -Nur linux-2.4.32/include/config/scsi/am53c974.h linux-2.4.32.patched/include/config/scsi/am53c974.h ---- linux-2.4.32/include/config/scsi/am53c974.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/am53c974.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_AM53C974 -diff -Nur linux-2.4.32/include/config/scsi/ata/piix.h linux-2.4.32.patched/include/config/scsi/ata/piix.h ---- linux-2.4.32/include/config/scsi/ata/piix.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/ata/piix.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_ATA_PIIX -diff -Nur linux-2.4.32/include/config/scsi/buslogic.h linux-2.4.32.patched/include/config/scsi/buslogic.h ---- linux-2.4.32/include/config/scsi/buslogic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/buslogic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_BUSLOGIC -diff -Nur linux-2.4.32/include/config/scsi/constants.h linux-2.4.32.patched/include/config/scsi/constants.h ---- linux-2.4.32/include/config/scsi/constants.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/constants.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_CONSTANTS -diff -Nur linux-2.4.32/include/config/scsi/cpqfcts.h linux-2.4.32.patched/include/config/scsi/cpqfcts.h ---- linux-2.4.32/include/config/scsi/cpqfcts.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/cpqfcts.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_CPQFCTS -diff -Nur linux-2.4.32/include/config/scsi/dc390t.h linux-2.4.32.patched/include/config/scsi/dc390t.h ---- linux-2.4.32/include/config/scsi/dc390t.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/dc390t.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DC390T -diff -Nur linux-2.4.32/include/config/scsi/debug/queues.h linux-2.4.32.patched/include/config/scsi/debug/queues.h ---- linux-2.4.32/include/config/scsi/debug/queues.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/debug/queues.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DEBUG_QUEUES -diff -Nur linux-2.4.32/include/config/scsi/debug.h linux-2.4.32.patched/include/config/scsi/debug.h ---- linux-2.4.32/include/config/scsi/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DEBUG -diff -Nur linux-2.4.32/include/config/scsi/dmx3191d.h linux-2.4.32.patched/include/config/scsi/dmx3191d.h ---- linux-2.4.32/include/config/scsi/dmx3191d.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/dmx3191d.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DMX3191D -diff -Nur linux-2.4.32/include/config/scsi/dpt/i2o.h linux-2.4.32.patched/include/config/scsi/dpt/i2o.h ---- linux-2.4.32/include/config/scsi/dpt/i2o.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/dpt/i2o.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DPT_I2O -diff -Nur linux-2.4.32/include/config/scsi/dtc3280.h linux-2.4.32.patched/include/config/scsi/dtc3280.h ---- linux-2.4.32/include/config/scsi/dtc3280.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/dtc3280.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_DTC3280 -diff -Nur linux-2.4.32/include/config/scsi/eata/dma.h linux-2.4.32.patched/include/config/scsi/eata/dma.h ---- linux-2.4.32/include/config/scsi/eata/dma.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/eata/dma.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_EATA_DMA -diff -Nur linux-2.4.32/include/config/scsi/eata/pio.h linux-2.4.32.patched/include/config/scsi/eata/pio.h ---- linux-2.4.32/include/config/scsi/eata/pio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/eata/pio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_EATA_PIO -diff -Nur linux-2.4.32/include/config/scsi/eata.h linux-2.4.32.patched/include/config/scsi/eata.h ---- linux-2.4.32/include/config/scsi/eata.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/eata.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_EATA -diff -Nur linux-2.4.32/include/config/scsi/future/domain.h linux-2.4.32.patched/include/config/scsi/future/domain.h ---- linux-2.4.32/include/config/scsi/future/domain.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/future/domain.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_FUTURE_DOMAIN -diff -Nur linux-2.4.32/include/config/scsi/gdth.h linux-2.4.32.patched/include/config/scsi/gdth.h ---- linux-2.4.32/include/config/scsi/gdth.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/gdth.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_GDTH -diff -Nur linux-2.4.32/include/config/scsi/generic/ncr5380.h linux-2.4.32.patched/include/config/scsi/generic/ncr5380.h ---- linux-2.4.32/include/config/scsi/generic/ncr5380.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/generic/ncr5380.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_GENERIC_NCR5380 -diff -Nur linux-2.4.32/include/config/scsi/imm.h linux-2.4.32.patched/include/config/scsi/imm.h ---- linux-2.4.32/include/config/scsi/imm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/imm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_IMM -diff -Nur linux-2.4.32/include/config/scsi/in2000.h linux-2.4.32.patched/include/config/scsi/in2000.h ---- linux-2.4.32/include/config/scsi/in2000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/in2000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_IN2000 -diff -Nur linux-2.4.32/include/config/scsi/inia100.h linux-2.4.32.patched/include/config/scsi/inia100.h ---- linux-2.4.32/include/config/scsi/inia100.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/inia100.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_INIA100 -diff -Nur linux-2.4.32/include/config/scsi/initio.h linux-2.4.32.patched/include/config/scsi/initio.h ---- linux-2.4.32/include/config/scsi/initio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/initio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_INITIO -diff -Nur linux-2.4.32/include/config/scsi/logging.h linux-2.4.32.patched/include/config/scsi/logging.h ---- linux-2.4.32/include/config/scsi/logging.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/logging.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_LOGGING -diff -Nur linux-2.4.32/include/config/scsi/megaraid2.h linux-2.4.32.patched/include/config/scsi/megaraid2.h ---- linux-2.4.32/include/config/scsi/megaraid2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/megaraid2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_MEGARAID2 -diff -Nur linux-2.4.32/include/config/scsi/megaraid.h linux-2.4.32.patched/include/config/scsi/megaraid.h ---- linux-2.4.32/include/config/scsi/megaraid.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/megaraid.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_MEGARAID -diff -Nur linux-2.4.32/include/config/scsi/module.h linux-2.4.32.patched/include/config/scsi/module.h ---- linux-2.4.32/include/config/scsi/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SCSI_MODULE 1 -diff -Nur linux-2.4.32/include/config/scsi/multi/lun.h linux-2.4.32.patched/include/config/scsi/multi/lun.h ---- linux-2.4.32/include/config/scsi/multi/lun.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/multi/lun.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SCSI_MULTI_LUN 1 -diff -Nur linux-2.4.32/include/config/scsi/ncr53c406a.h linux-2.4.32.patched/include/config/scsi/ncr53c406a.h ---- linux-2.4.32/include/config/scsi/ncr53c406a.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/ncr53c406a.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_NCR53C406A -diff -Nur linux-2.4.32/include/config/scsi/ncr53c7xx.h linux-2.4.32.patched/include/config/scsi/ncr53c7xx.h ---- linux-2.4.32/include/config/scsi/ncr53c7xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/ncr53c7xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_NCR53C7xx -diff -Nur linux-2.4.32/include/config/scsi/ncr53c8xx.h linux-2.4.32.patched/include/config/scsi/ncr53c8xx.h ---- linux-2.4.32/include/config/scsi/ncr53c8xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/ncr53c8xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_NCR53C8XX -diff -Nur linux-2.4.32/include/config/scsi/nsp32.h linux-2.4.32.patched/include/config/scsi/nsp32.h ---- linux-2.4.32/include/config/scsi/nsp32.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/nsp32.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_NSP32 -diff -Nur linux-2.4.32/include/config/scsi/pas16.h linux-2.4.32.patched/include/config/scsi/pas16.h ---- linux-2.4.32/include/config/scsi/pas16.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/pas16.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PAS16 -diff -Nur linux-2.4.32/include/config/scsi/pci2000.h linux-2.4.32.patched/include/config/scsi/pci2000.h ---- linux-2.4.32/include/config/scsi/pci2000.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/pci2000.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PCI2000 -diff -Nur linux-2.4.32/include/config/scsi/pci2220i.h linux-2.4.32.patched/include/config/scsi/pci2220i.h ---- linux-2.4.32/include/config/scsi/pci2220i.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/pci2220i.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PCI2220I -diff -Nur linux-2.4.32/include/config/scsi/pcmcia.h linux-2.4.32.patched/include/config/scsi/pcmcia.h ---- linux-2.4.32/include/config/scsi/pcmcia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/pcmcia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PCMCIA -diff -Nur linux-2.4.32/include/config/scsi/ppa.h linux-2.4.32.patched/include/config/scsi/ppa.h ---- linux-2.4.32/include/config/scsi/ppa.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/ppa.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PPA -diff -Nur linux-2.4.32/include/config/scsi/psi240i.h linux-2.4.32.patched/include/config/scsi/psi240i.h ---- linux-2.4.32/include/config/scsi/psi240i.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/psi240i.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_PSI240I -diff -Nur linux-2.4.32/include/config/scsi/qlogic/1280.h linux-2.4.32.patched/include/config/scsi/qlogic/1280.h ---- linux-2.4.32/include/config/scsi/qlogic/1280.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/qlogic/1280.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_QLOGIC_1280 -diff -Nur linux-2.4.32/include/config/scsi/qlogic/fas.h linux-2.4.32.patched/include/config/scsi/qlogic/fas.h ---- linux-2.4.32/include/config/scsi/qlogic/fas.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/qlogic/fas.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_QLOGIC_FAS -diff -Nur linux-2.4.32/include/config/scsi/qlogic/fc.h linux-2.4.32.patched/include/config/scsi/qlogic/fc.h ---- linux-2.4.32/include/config/scsi/qlogic/fc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/qlogic/fc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_QLOGIC_FC -diff -Nur linux-2.4.32/include/config/scsi/qlogic/isp.h linux-2.4.32.patched/include/config/scsi/qlogic/isp.h ---- linux-2.4.32/include/config/scsi/qlogic/isp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/qlogic/isp.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_QLOGIC_ISP -diff -Nur linux-2.4.32/include/config/scsi/sata/ahci.h linux-2.4.32.patched/include/config/scsi/sata/ahci.h ---- linux-2.4.32/include/config/scsi/sata/ahci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/ahci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_AHCI -diff -Nur linux-2.4.32/include/config/scsi/sata/nv.h linux-2.4.32.patched/include/config/scsi/sata/nv.h ---- linux-2.4.32/include/config/scsi/sata/nv.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/nv.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_NV -diff -Nur linux-2.4.32/include/config/scsi/sata/promise.h linux-2.4.32.patched/include/config/scsi/sata/promise.h ---- linux-2.4.32/include/config/scsi/sata/promise.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/promise.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_PROMISE -diff -Nur linux-2.4.32/include/config/scsi/sata/qstor.h linux-2.4.32.patched/include/config/scsi/sata/qstor.h ---- linux-2.4.32/include/config/scsi/sata/qstor.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/qstor.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_QSTOR -diff -Nur linux-2.4.32/include/config/scsi/sata/sil.h linux-2.4.32.patched/include/config/scsi/sata/sil.h ---- linux-2.4.32/include/config/scsi/sata/sil.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/sil.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_SIL -diff -Nur linux-2.4.32/include/config/scsi/sata/sis.h linux-2.4.32.patched/include/config/scsi/sata/sis.h ---- linux-2.4.32/include/config/scsi/sata/sis.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/sis.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_SIS -diff -Nur linux-2.4.32/include/config/scsi/sata/svw.h linux-2.4.32.patched/include/config/scsi/sata/svw.h ---- linux-2.4.32/include/config/scsi/sata/svw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/svw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_SVW -diff -Nur linux-2.4.32/include/config/scsi/sata/sx4.h linux-2.4.32.patched/include/config/scsi/sata/sx4.h ---- linux-2.4.32/include/config/scsi/sata/sx4.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/sx4.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_SX4 -diff -Nur linux-2.4.32/include/config/scsi/sata/uli.h linux-2.4.32.patched/include/config/scsi/sata/uli.h ---- linux-2.4.32/include/config/scsi/sata/uli.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/uli.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_ULI -diff -Nur linux-2.4.32/include/config/scsi/sata/via.h linux-2.4.32.patched/include/config/scsi/sata/via.h ---- linux-2.4.32/include/config/scsi/sata/via.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/via.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_VIA -diff -Nur linux-2.4.32/include/config/scsi/sata/vitesse.h linux-2.4.32.patched/include/config/scsi/sata/vitesse.h ---- linux-2.4.32/include/config/scsi/sata/vitesse.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata/vitesse.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA_VITESSE -diff -Nur linux-2.4.32/include/config/scsi/sata.h linux-2.4.32.patched/include/config/scsi/sata.h ---- linux-2.4.32/include/config/scsi/sata.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sata.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SATA -diff -Nur linux-2.4.32/include/config/scsi/sim710.h linux-2.4.32.patched/include/config/scsi/sim710.h ---- linux-2.4.32/include/config/scsi/sim710.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sim710.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SIM710 -diff -Nur linux-2.4.32/include/config/scsi/sym53c416.h linux-2.4.32.patched/include/config/scsi/sym53c416.h ---- linux-2.4.32/include/config/scsi/sym53c416.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sym53c416.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SYM53C416 -diff -Nur linux-2.4.32/include/config/scsi/sym53c8xx/2.h linux-2.4.32.patched/include/config/scsi/sym53c8xx/2.h ---- linux-2.4.32/include/config/scsi/sym53c8xx/2.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sym53c8xx/2.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SYM53C8XX_2 -diff -Nur linux-2.4.32/include/config/scsi/sym53c8xx.h linux-2.4.32.patched/include/config/scsi/sym53c8xx.h ---- linux-2.4.32/include/config/scsi/sym53c8xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/sym53c8xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_SYM53C8XX -diff -Nur linux-2.4.32/include/config/scsi/t128.h linux-2.4.32.patched/include/config/scsi/t128.h ---- linux-2.4.32/include/config/scsi/t128.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/t128.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_T128 -diff -Nur linux-2.4.32/include/config/scsi/u14/34f.h linux-2.4.32.patched/include/config/scsi/u14/34f.h ---- linux-2.4.32/include/config/scsi/u14/34f.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi/u14/34f.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI_U14_34F -diff -Nur linux-2.4.32/include/config/scsi.h linux-2.4.32.patched/include/config/scsi.h ---- linux-2.4.32/include/config/scsi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scsi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCSI -diff -Nur linux-2.4.32/include/config/scx200/gpio.h linux-2.4.32.patched/include/config/scx200/gpio.h ---- linux-2.4.32/include/config/scx200/gpio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scx200/gpio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCx200_GPIO -diff -Nur linux-2.4.32/include/config/scx200/wdt.h linux-2.4.32.patched/include/config/scx200/wdt.h ---- linux-2.4.32/include/config/scx200/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scx200/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCx200_WDT -diff -Nur linux-2.4.32/include/config/scx200.h linux-2.4.32.patched/include/config/scx200.h ---- linux-2.4.32/include/config/scx200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/scx200.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SCx200 -diff -Nur linux-2.4.32/include/config/sd/extra/devs.h linux-2.4.32.patched/include/config/sd/extra/devs.h ---- linux-2.4.32/include/config/sd/extra/devs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sd/extra/devs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SD_EXTRA_DEVS (5) -diff -Nur linux-2.4.32/include/config/serial/console.h linux-2.4.32.patched/include/config/serial/console.h ---- linux-2.4.32/include/config/serial/console.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/serial/console.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SERIAL_CONSOLE 1 -diff -Nur linux-2.4.32/include/config/serial/extended.h linux-2.4.32.patched/include/config/serial/extended.h ---- linux-2.4.32/include/config/serial/extended.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/serial/extended.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SERIAL_EXTENDED -diff -Nur linux-2.4.32/include/config/serial/nonstandard.h linux-2.4.32.patched/include/config/serial/nonstandard.h ---- linux-2.4.32/include/config/serial/nonstandard.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/serial/nonstandard.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SERIAL_NONSTANDARD -diff -Nur linux-2.4.32/include/config/serial.h linux-2.4.32.patched/include/config/serial.h ---- linux-2.4.32/include/config/serial.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/serial.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SERIAL 1 -diff -Nur linux-2.4.32/include/config/sgi/ip22.h linux-2.4.32.patched/include/config/sgi/ip22.h ---- linux-2.4.32/include/config/sgi/ip22.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sgi/ip22.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SGI_IP22 -diff -Nur linux-2.4.32/include/config/sgi/ip27.h linux-2.4.32.patched/include/config/sgi/ip27.h ---- linux-2.4.32/include/config/sgi/ip27.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sgi/ip27.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SGI_IP27 -diff -Nur linux-2.4.32/include/config/sgi/partition.h linux-2.4.32.patched/include/config/sgi/partition.h ---- linux-2.4.32/include/config/sgi/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sgi/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SGI_PARTITION -diff -Nur linux-2.4.32/include/config/shaper/module.h linux-2.4.32.patched/include/config/shaper/module.h ---- linux-2.4.32/include/config/shaper/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/shaper/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SHAPER_MODULE 1 -diff -Nur linux-2.4.32/include/config/shaper.h linux-2.4.32.patched/include/config/shaper.h ---- linux-2.4.32/include/config/shaper.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/shaper.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SHAPER -diff -Nur linux-2.4.32/include/config/sibyte/sb1xxx/soc.h linux-2.4.32.patched/include/config/sibyte/sb1xxx/soc.h ---- linux-2.4.32/include/config/sibyte/sb1xxx/soc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sibyte/sb1xxx/soc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SIBYTE_SB1xxx_SOC -diff -Nur linux-2.4.32/include/config/sis900.h linux-2.4.32.patched/include/config/sis900.h ---- linux-2.4.32/include/config/sis900.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sis900.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SIS900 -diff -Nur linux-2.4.32/include/config/sk98lin.h linux-2.4.32.patched/include/config/sk98lin.h ---- linux-2.4.32/include/config/sk98lin.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sk98lin.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SK98LIN -diff -Nur linux-2.4.32/include/config/slip.h linux-2.4.32.patched/include/config/slip.h ---- linux-2.4.32/include/config/slip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/slip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SLIP -diff -Nur linux-2.4.32/include/config/smb/fs.h linux-2.4.32.patched/include/config/smb/fs.h ---- linux-2.4.32/include/config/smb/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/smb/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SMB_FS -diff -Nur linux-2.4.32/include/config/smb/nls.h linux-2.4.32.patched/include/config/smb/nls.h ---- linux-2.4.32/include/config/smb/nls.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/smb/nls.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SMB_NLS -diff -Nur linux-2.4.32/include/config/sni/rm200/pci.h linux-2.4.32.patched/include/config/sni/rm200/pci.h ---- linux-2.4.32/include/config/sni/rm200/pci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sni/rm200/pci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SNI_RM200_PCI -diff -Nur linux-2.4.32/include/config/soft/watchdog/module.h linux-2.4.32.patched/include/config/soft/watchdog/module.h ---- linux-2.4.32/include/config/soft/watchdog/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/soft/watchdog/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SOFT_WATCHDOG_MODULE 1 -diff -Nur linux-2.4.32/include/config/soft/watchdog.h linux-2.4.32.patched/include/config/soft/watchdog.h ---- linux-2.4.32/include/config/soft/watchdog.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/soft/watchdog.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOFT_WATCHDOG -diff -Nur linux-2.4.32/include/config/solaris/x86/partition.h linux-2.4.32.patched/include/config/solaris/x86/partition.h ---- linux-2.4.32/include/config/solaris/x86/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/solaris/x86/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOLARIS_X86_PARTITION -diff -Nur linux-2.4.32/include/config/sound/ad1980.h linux-2.4.32.patched/include/config/sound/ad1980.h ---- linux-2.4.32/include/config/sound/ad1980.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/ad1980.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_AD1980 -diff -Nur linux-2.4.32/include/config/sound/ali5455.h linux-2.4.32.patched/include/config/sound/ali5455.h ---- linux-2.4.32/include/config/sound/ali5455.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/ali5455.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_ALI5455 -diff -Nur linux-2.4.32/include/config/sound/bt878.h linux-2.4.32.patched/include/config/sound/bt878.h ---- linux-2.4.32/include/config/sound/bt878.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/bt878.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_BT878 -diff -Nur linux-2.4.32/include/config/sound/cmpci.h linux-2.4.32.patched/include/config/sound/cmpci.h ---- linux-2.4.32/include/config/sound/cmpci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/cmpci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_CMPCI -diff -Nur linux-2.4.32/include/config/sound/cs4281.h linux-2.4.32.patched/include/config/sound/cs4281.h ---- linux-2.4.32/include/config/sound/cs4281.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/cs4281.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_CS4281 -diff -Nur linux-2.4.32/include/config/sound/emu10k1.h linux-2.4.32.patched/include/config/sound/emu10k1.h ---- linux-2.4.32/include/config/sound/emu10k1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/emu10k1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_EMU10K1 -diff -Nur linux-2.4.32/include/config/sound/es1370.h linux-2.4.32.patched/include/config/sound/es1370.h ---- linux-2.4.32/include/config/sound/es1370.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/es1370.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_ES1370 -diff -Nur linux-2.4.32/include/config/sound/es1371.h linux-2.4.32.patched/include/config/sound/es1371.h ---- linux-2.4.32/include/config/sound/es1371.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/es1371.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_ES1371 -diff -Nur linux-2.4.32/include/config/sound/esssolo1.h linux-2.4.32.patched/include/config/sound/esssolo1.h ---- linux-2.4.32/include/config/sound/esssolo1.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/esssolo1.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_ESSSOLO1 -diff -Nur linux-2.4.32/include/config/sound/forte.h linux-2.4.32.patched/include/config/sound/forte.h ---- linux-2.4.32/include/config/sound/forte.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/forte.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_FORTE -diff -Nur linux-2.4.32/include/config/sound/fusion.h linux-2.4.32.patched/include/config/sound/fusion.h ---- linux-2.4.32/include/config/sound/fusion.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/fusion.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_FUSION -diff -Nur linux-2.4.32/include/config/sound/ich.h linux-2.4.32.patched/include/config/sound/ich.h ---- linux-2.4.32/include/config/sound/ich.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/ich.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_ICH -diff -Nur linux-2.4.32/include/config/sound/maestro3.h linux-2.4.32.patched/include/config/sound/maestro3.h ---- linux-2.4.32/include/config/sound/maestro3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/maestro3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_MAESTRO3 -diff -Nur linux-2.4.32/include/config/sound/maestro.h linux-2.4.32.patched/include/config/sound/maestro.h ---- linux-2.4.32/include/config/sound/maestro.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/maestro.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_MAESTRO -diff -Nur linux-2.4.32/include/config/sound/module.h linux-2.4.32.patched/include/config/sound/module.h ---- linux-2.4.32/include/config/sound/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SOUND_MODULE 1 -diff -Nur linux-2.4.32/include/config/sound/msndclas.h linux-2.4.32.patched/include/config/sound/msndclas.h ---- linux-2.4.32/include/config/sound/msndclas.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/msndclas.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_MSNDCLAS -diff -Nur linux-2.4.32/include/config/sound/msndpin.h linux-2.4.32.patched/include/config/sound/msndpin.h ---- linux-2.4.32/include/config/sound/msndpin.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/msndpin.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_MSNDPIN -diff -Nur linux-2.4.32/include/config/sound/oss.h linux-2.4.32.patched/include/config/sound/oss.h ---- linux-2.4.32/include/config/sound/oss.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/oss.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_OSS -diff -Nur linux-2.4.32/include/config/sound/rme96xx.h linux-2.4.32.patched/include/config/sound/rme96xx.h ---- linux-2.4.32/include/config/sound/rme96xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/rme96xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_RME96XX -diff -Nur linux-2.4.32/include/config/sound/sonicvibes.h linux-2.4.32.patched/include/config/sound/sonicvibes.h ---- linux-2.4.32/include/config/sound/sonicvibes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/sonicvibes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_SONICVIBES -diff -Nur linux-2.4.32/include/config/sound/trident.h linux-2.4.32.patched/include/config/sound/trident.h ---- linux-2.4.32/include/config/sound/trident.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/trident.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_TRIDENT -diff -Nur linux-2.4.32/include/config/sound/tvmixer.h linux-2.4.32.patched/include/config/sound/tvmixer.h ---- linux-2.4.32/include/config/sound/tvmixer.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/tvmixer.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_TVMIXER -diff -Nur linux-2.4.32/include/config/sound/via82cxxx.h linux-2.4.32.patched/include/config/sound/via82cxxx.h ---- linux-2.4.32/include/config/sound/via82cxxx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/via82cxxx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_VIA82CXXX -diff -Nur linux-2.4.32/include/config/sound/wm97xx.h linux-2.4.32.patched/include/config/sound/wm97xx.h ---- linux-2.4.32/include/config/sound/wm97xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound/wm97xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND_WM97XX -diff -Nur linux-2.4.32/include/config/sound.h linux-2.4.32.patched/include/config/sound.h ---- linux-2.4.32/include/config/sound.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sound.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUND -diff -Nur linux-2.4.32/include/config/soundmodem.h linux-2.4.32.patched/include/config/soundmodem.h ---- linux-2.4.32/include/config/soundmodem.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/soundmodem.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SOUNDMODEM -diff -Nur linux-2.4.32/include/config/squashfs/embedded.h linux-2.4.32.patched/include/config/squashfs/embedded.h ---- linux-2.4.32/include/config/squashfs/embedded.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/squashfs/embedded.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SQUASHFS_EMBEDDED -diff -Nur linux-2.4.32/include/config/squashfs.h linux-2.4.32.patched/include/config/squashfs.h ---- linux-2.4.32/include/config/squashfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/squashfs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SQUASHFS 1 -diff -Nur linux-2.4.32/include/config/strip.h linux-2.4.32.patched/include/config/strip.h ---- linux-2.4.32/include/config/strip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/strip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_STRIP -diff -Nur linux-2.4.32/include/config/sun/partition.h linux-2.4.32.patched/include/config/sun/partition.h ---- linux-2.4.32/include/config/sun/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sun/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUN_PARTITION -diff -Nur linux-2.4.32/include/config/sunbmac.h linux-2.4.32.patched/include/config/sunbmac.h ---- linux-2.4.32/include/config/sunbmac.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sunbmac.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNBMAC -diff -Nur linux-2.4.32/include/config/sundance/mmio.h linux-2.4.32.patched/include/config/sundance/mmio.h ---- linux-2.4.32/include/config/sundance/mmio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sundance/mmio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNDANCE_MMIO -diff -Nur linux-2.4.32/include/config/sundance.h linux-2.4.32.patched/include/config/sundance.h ---- linux-2.4.32/include/config/sundance.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sundance.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNDANCE -diff -Nur linux-2.4.32/include/config/sungem.h linux-2.4.32.patched/include/config/sungem.h ---- linux-2.4.32/include/config/sungem.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sungem.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNGEM -diff -Nur linux-2.4.32/include/config/sunlance.h linux-2.4.32.patched/include/config/sunlance.h ---- linux-2.4.32/include/config/sunlance.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sunlance.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNLANCE -diff -Nur linux-2.4.32/include/config/sunqe.h linux-2.4.32.patched/include/config/sunqe.h ---- linux-2.4.32/include/config/sunqe.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sunqe.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNQE -diff -Nur linux-2.4.32/include/config/sunrpc/module.h linux-2.4.32.patched/include/config/sunrpc/module.h ---- linux-2.4.32/include/config/sunrpc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sunrpc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SUNRPC_MODULE 1 -diff -Nur linux-2.4.32/include/config/sunrpc.h linux-2.4.32.patched/include/config/sunrpc.h ---- linux-2.4.32/include/config/sunrpc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sunrpc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SUNRPC -diff -Nur linux-2.4.32/include/config/syn/cookies.h linux-2.4.32.patched/include/config/syn/cookies.h ---- linux-2.4.32/include/config/syn/cookies.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/syn/cookies.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SYN_COOKIES -diff -Nur linux-2.4.32/include/config/synclink/cs.h linux-2.4.32.patched/include/config/synclink/cs.h ---- linux-2.4.32/include/config/synclink/cs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/synclink/cs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SYNCLINK_CS -diff -Nur linux-2.4.32/include/config/sysctl.h linux-2.4.32.patched/include/config/sysctl.h ---- linux-2.4.32/include/config/sysctl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sysctl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SYSCTL 1 -diff -Nur linux-2.4.32/include/config/sysv/fs.h linux-2.4.32.patched/include/config/sysv/fs.h ---- linux-2.4.32/include/config/sysv/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sysv/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_SYSV_FS -diff -Nur linux-2.4.32/include/config/sysvipc.h linux-2.4.32.patched/include/config/sysvipc.h ---- linux-2.4.32/include/config/sysvipc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/sysvipc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_SYSVIPC 1 -diff -Nur linux-2.4.32/include/config/tanbac/tb0226.h linux-2.4.32.patched/include/config/tanbac/tb0226.h ---- linux-2.4.32/include/config/tanbac/tb0226.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tanbac/tb0226.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TANBAC_TB0226 -diff -Nur linux-2.4.32/include/config/tanbac/tb0229.h linux-2.4.32.patched/include/config/tanbac/tb0229.h ---- linux-2.4.32/include/config/tanbac/tb0229.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tanbac/tb0229.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TANBAC_TB0229 -diff -Nur linux-2.4.32/include/config/tc.h linux-2.4.32.patched/include/config/tc.h ---- linux-2.4.32/include/config/tc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TC -diff -Nur linux-2.4.32/include/config/tcic.h linux-2.4.32.patched/include/config/tcic.h ---- linux-2.4.32/include/config/tcic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tcic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TCIC -diff -Nur linux-2.4.32/include/config/tigon3.h linux-2.4.32.patched/include/config/tigon3.h ---- linux-2.4.32/include/config/tigon3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tigon3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TIGON3 -diff -Nur linux-2.4.32/include/config/tipar.h linux-2.4.32.patched/include/config/tipar.h ---- linux-2.4.32/include/config/tipar.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tipar.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TIPAR -diff -Nur linux-2.4.32/include/config/tlan.h linux-2.4.32.patched/include/config/tlan.h ---- linux-2.4.32/include/config/tlan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tlan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TLAN -diff -Nur linux-2.4.32/include/config/tmd/hermes.h linux-2.4.32.patched/include/config/tmd/hermes.h ---- linux-2.4.32/include/config/tmd/hermes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tmd/hermes.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TMD_HERMES -diff -Nur linux-2.4.32/include/config/tmpfs.h linux-2.4.32.patched/include/config/tmpfs.h ---- linux-2.4.32/include/config/tmpfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tmpfs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_TMPFS 1 -diff -Nur linux-2.4.32/include/config/toshiba/jmr3927.h linux-2.4.32.patched/include/config/toshiba/jmr3927.h ---- linux-2.4.32/include/config/toshiba/jmr3927.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/toshiba/jmr3927.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TOSHIBA_JMR3927 -diff -Nur linux-2.4.32/include/config/toshiba/rbtx4927.h linux-2.4.32.patched/include/config/toshiba/rbtx4927.h ---- linux-2.4.32/include/config/toshiba/rbtx4927.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/toshiba/rbtx4927.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TOSHIBA_RBTX4927 -diff -Nur linux-2.4.32/include/config/tr.h linux-2.4.32.patched/include/config/tr.h ---- linux-2.4.32/include/config/tr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TR -diff -Nur linux-2.4.32/include/config/tulip.h linux-2.4.32.patched/include/config/tulip.h ---- linux-2.4.32/include/config/tulip.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tulip.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TULIP -diff -Nur linux-2.4.32/include/config/tun/module.h linux-2.4.32.patched/include/config/tun/module.h ---- linux-2.4.32/include/config/tun/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tun/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_TUN_MODULE 1 -diff -Nur linux-2.4.32/include/config/tuner/3036.h linux-2.4.32.patched/include/config/tuner/3036.h ---- linux-2.4.32/include/config/tuner/3036.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tuner/3036.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TUNER_3036 -diff -Nur linux-2.4.32/include/config/tun.h linux-2.4.32.patched/include/config/tun.h ---- linux-2.4.32/include/config/tun.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/tun.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_TUN -diff -Nur linux-2.4.32/include/config/udf/fs.h linux-2.4.32.patched/include/config/udf/fs.h ---- linux-2.4.32/include/config/udf/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/udf/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UDF_FS -diff -Nur linux-2.4.32/include/config/udf/rw.h linux-2.4.32.patched/include/config/udf/rw.h ---- linux-2.4.32/include/config/udf/rw.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/udf/rw.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UDF_RW -diff -Nur linux-2.4.32/include/config/ufs/fs/write.h linux-2.4.32.patched/include/config/ufs/fs/write.h ---- linux-2.4.32/include/config/ufs/fs/write.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ufs/fs/write.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UFS_FS_WRITE -diff -Nur linux-2.4.32/include/config/ufs/fs.h linux-2.4.32.patched/include/config/ufs/fs.h ---- linux-2.4.32/include/config/ufs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ufs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UFS_FS -diff -Nur linux-2.4.32/include/config/ultrix/partition.h linux-2.4.32.patched/include/config/ultrix/partition.h ---- linux-2.4.32/include/config/ultrix/partition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/ultrix/partition.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ULTRIX_PARTITION -diff -Nur linux-2.4.32/include/config/umsdos/fs.h linux-2.4.32.patched/include/config/umsdos/fs.h ---- linux-2.4.32/include/config/umsdos/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/umsdos/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UMSDOS_FS -diff -Nur linux-2.4.32/include/config/unix98/pty/count.h linux-2.4.32.patched/include/config/unix98/pty/count.h ---- linux-2.4.32/include/config/unix98/pty/count.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/unix98/pty/count.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_UNIX98_PTY_COUNT (128) -diff -Nur linux-2.4.32/include/config/unix98/ptys.h linux-2.4.32.patched/include/config/unix98/ptys.h ---- linux-2.4.32/include/config/unix98/ptys.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/unix98/ptys.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_UNIX98_PTYS 1 -diff -Nur linux-2.4.32/include/config/unix.h linux-2.4.32.patched/include/config/unix.h ---- linux-2.4.32/include/config/unix.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/unix.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_UNIX 1 -diff -Nur linux-2.4.32/include/config/unixware/disklabel.h linux-2.4.32.patched/include/config/unixware/disklabel.h ---- linux-2.4.32/include/config/unixware/disklabel.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/unixware/disklabel.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_UNIXWARE_DISKLABEL -diff -Nur linux-2.4.32/include/config/usb/acm/module.h linux-2.4.32.patched/include/config/usb/acm/module.h ---- linux-2.4.32/include/config/usb/acm/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/acm/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_ACM_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/acm.h linux-2.4.32.patched/include/config/usb/acm.h ---- linux-2.4.32/include/config/usb/acm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/acm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_ACM -diff -Nur linux-2.4.32/include/config/usb/aiptek.h linux-2.4.32.patched/include/config/usb/aiptek.h ---- linux-2.4.32/include/config/usb/aiptek.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/aiptek.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_AIPTEK -diff -Nur linux-2.4.32/include/config/usb/audio/module.h linux-2.4.32.patched/include/config/usb/audio/module.h ---- linux-2.4.32/include/config/usb/audio/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/audio/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_AUDIO_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/audio.h linux-2.4.32.patched/include/config/usb/audio.h ---- linux-2.4.32/include/config/usb/audio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/audio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_AUDIO -diff -Nur linux-2.4.32/include/config/usb/auerswald.h linux-2.4.32.patched/include/config/usb/auerswald.h ---- linux-2.4.32/include/config/usb/auerswald.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/auerswald.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_AUERSWALD -diff -Nur linux-2.4.32/include/config/usb/bandwidth.h linux-2.4.32.patched/include/config/usb/bandwidth.h ---- linux-2.4.32/include/config/usb/bandwidth.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/bandwidth.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_BANDWIDTH -diff -Nur linux-2.4.32/include/config/usb/brlvger.h linux-2.4.32.patched/include/config/usb/brlvger.h ---- linux-2.4.32/include/config/usb/brlvger.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/brlvger.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_BRLVGER -diff -Nur linux-2.4.32/include/config/usb/catc.h linux-2.4.32.patched/include/config/usb/catc.h ---- linux-2.4.32/include/config/usb/catc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/catc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_CATC -diff -Nur linux-2.4.32/include/config/usb/cdcether.h linux-2.4.32.patched/include/config/usb/cdcether.h ---- linux-2.4.32/include/config/usb/cdcether.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/cdcether.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_CDCETHER -diff -Nur linux-2.4.32/include/config/usb/dabusb.h linux-2.4.32.patched/include/config/usb/dabusb.h ---- linux-2.4.32/include/config/usb/dabusb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/dabusb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_DABUSB -diff -Nur linux-2.4.32/include/config/usb/dc2xx.h linux-2.4.32.patched/include/config/usb/dc2xx.h ---- linux-2.4.32/include/config/usb/dc2xx.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/dc2xx.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_DC2XX -diff -Nur linux-2.4.32/include/config/usb/debug.h linux-2.4.32.patched/include/config/usb/debug.h ---- linux-2.4.32/include/config/usb/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_DEBUG -diff -Nur linux-2.4.32/include/config/usb/devicefs.h linux-2.4.32.patched/include/config/usb/devicefs.h ---- linux-2.4.32/include/config/usb/devicefs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/devicefs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_DEVICEFS 1 -diff -Nur linux-2.4.32/include/config/usb/dsbr.h linux-2.4.32.patched/include/config/usb/dsbr.h ---- linux-2.4.32/include/config/usb/dsbr.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/dsbr.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_DSBR -diff -Nur linux-2.4.32/include/config/usb/ehci/hcd/module.h linux-2.4.32.patched/include/config/usb/ehci/hcd/module.h ---- linux-2.4.32/include/config/usb/ehci/hcd/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ehci/hcd/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_EHCI_HCD_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/ehci/hcd.h linux-2.4.32.patched/include/config/usb/ehci/hcd.h ---- linux-2.4.32/include/config/usb/ehci/hcd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ehci/hcd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_EHCI_HCD -diff -Nur linux-2.4.32/include/config/usb/emi26.h linux-2.4.32.patched/include/config/usb/emi26.h ---- linux-2.4.32/include/config/usb/emi26.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/emi26.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_EMI26 -diff -Nur linux-2.4.32/include/config/usb/gadget.h linux-2.4.32.patched/include/config/usb/gadget.h ---- linux-2.4.32/include/config/usb/gadget.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/gadget.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_GADGET -diff -Nur linux-2.4.32/include/config/usb/hiddev.h linux-2.4.32.patched/include/config/usb/hiddev.h ---- linux-2.4.32/include/config/usb/hiddev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/hiddev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_HIDDEV -diff -Nur linux-2.4.32/include/config/usb/hid.h linux-2.4.32.patched/include/config/usb/hid.h ---- linux-2.4.32/include/config/usb/hid.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/hid.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_HID -diff -Nur linux-2.4.32/include/config/usb/hidinput.h linux-2.4.32.patched/include/config/usb/hidinput.h ---- linux-2.4.32/include/config/usb/hidinput.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/hidinput.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_HIDINPUT -diff -Nur linux-2.4.32/include/config/usb/hpusbscsi.h linux-2.4.32.patched/include/config/usb/hpusbscsi.h ---- linux-2.4.32/include/config/usb/hpusbscsi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/hpusbscsi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_HPUSBSCSI -diff -Nur linux-2.4.32/include/config/usb/ibmcam.h linux-2.4.32.patched/include/config/usb/ibmcam.h ---- linux-2.4.32/include/config/usb/ibmcam.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ibmcam.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_IBMCAM -diff -Nur linux-2.4.32/include/config/usb/kaweth.h linux-2.4.32.patched/include/config/usb/kaweth.h ---- linux-2.4.32/include/config/usb/kaweth.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/kaweth.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_KAWETH -diff -Nur linux-2.4.32/include/config/usb/kbd.h linux-2.4.32.patched/include/config/usb/kbd.h ---- linux-2.4.32/include/config/usb/kbd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/kbd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_KBD -diff -Nur linux-2.4.32/include/config/usb/kbtab.h linux-2.4.32.patched/include/config/usb/kbtab.h ---- linux-2.4.32/include/config/usb/kbtab.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/kbtab.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_KBTAB -diff -Nur linux-2.4.32/include/config/usb/konicawc.h linux-2.4.32.patched/include/config/usb/konicawc.h ---- linux-2.4.32/include/config/usb/konicawc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/konicawc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_KONICAWC -diff -Nur linux-2.4.32/include/config/usb/lcd.h linux-2.4.32.patched/include/config/usb/lcd.h ---- linux-2.4.32/include/config/usb/lcd.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/lcd.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_LCD -diff -Nur linux-2.4.32/include/config/usb/mdc800.h linux-2.4.32.patched/include/config/usb/mdc800.h ---- linux-2.4.32/include/config/usb/mdc800.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/mdc800.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_MDC800 -diff -Nur linux-2.4.32/include/config/usb/microtek.h linux-2.4.32.patched/include/config/usb/microtek.h ---- linux-2.4.32/include/config/usb/microtek.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/microtek.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_MICROTEK -diff -Nur linux-2.4.32/include/config/usb/midi.h linux-2.4.32.patched/include/config/usb/midi.h ---- linux-2.4.32/include/config/usb/midi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/midi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_MIDI -diff -Nur linux-2.4.32/include/config/usb/module.h linux-2.4.32.patched/include/config/usb/module.h ---- linux-2.4.32/include/config/usb/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/mouse.h linux-2.4.32.patched/include/config/usb/mouse.h ---- linux-2.4.32/include/config/usb/mouse.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/mouse.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_MOUSE -diff -Nur linux-2.4.32/include/config/usb/ohci/module.h linux-2.4.32.patched/include/config/usb/ohci/module.h ---- linux-2.4.32/include/config/usb/ohci/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ohci/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_OHCI_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/ohci.h linux-2.4.32.patched/include/config/usb/ohci.h ---- linux-2.4.32/include/config/usb/ohci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ohci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_OHCI -diff -Nur linux-2.4.32/include/config/usb/ov511.h linux-2.4.32.patched/include/config/usb/ov511.h ---- linux-2.4.32/include/config/usb/ov511.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/ov511.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_OV511 -diff -Nur linux-2.4.32/include/config/usb/pegasus.h linux-2.4.32.patched/include/config/usb/pegasus.h ---- linux-2.4.32/include/config/usb/pegasus.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/pegasus.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_PEGASUS -diff -Nur linux-2.4.32/include/config/usb/powermate.h linux-2.4.32.patched/include/config/usb/powermate.h ---- linux-2.4.32/include/config/usb/powermate.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/powermate.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_POWERMATE -diff -Nur linux-2.4.32/include/config/usb/printer/module.h linux-2.4.32.patched/include/config/usb/printer/module.h ---- linux-2.4.32/include/config/usb/printer/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/printer/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_PRINTER_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/printer.h linux-2.4.32.patched/include/config/usb/printer.h ---- linux-2.4.32/include/config/usb/printer.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/printer.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_PRINTER -diff -Nur linux-2.4.32/include/config/usb/pwc/module.h linux-2.4.32.patched/include/config/usb/pwc/module.h ---- linux-2.4.32/include/config/usb/pwc/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/pwc/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_PWC_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/pwc.h linux-2.4.32.patched/include/config/usb/pwc.h ---- linux-2.4.32/include/config/usb/pwc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/pwc.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_PWC -diff -Nur linux-2.4.32/include/config/usb/rio500.h linux-2.4.32.patched/include/config/usb/rio500.h ---- linux-2.4.32/include/config/usb/rio500.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/rio500.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_RIO500 -diff -Nur linux-2.4.32/include/config/usb/rtl8150.h linux-2.4.32.patched/include/config/usb/rtl8150.h ---- linux-2.4.32/include/config/usb/rtl8150.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/rtl8150.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_RTL8150 -diff -Nur linux-2.4.32/include/config/usb/scanner.h linux-2.4.32.patched/include/config/usb/scanner.h ---- linux-2.4.32/include/config/usb/scanner.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/scanner.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SCANNER -diff -Nur linux-2.4.32/include/config/usb/se401.h linux-2.4.32.patched/include/config/usb/se401.h ---- linux-2.4.32/include/config/usb/se401.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/se401.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SE401 -diff -Nur linux-2.4.32/include/config/usb/serial/belkin/module.h linux-2.4.32.patched/include/config/usb/serial/belkin/module.h ---- linux-2.4.32/include/config/usb/serial/belkin/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/belkin/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_BELKIN_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/belkin.h linux-2.4.32.patched/include/config/usb/serial/belkin.h ---- linux-2.4.32/include/config/usb/serial/belkin.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/belkin.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_BELKIN -diff -Nur linux-2.4.32/include/config/usb/serial/cyberjack.h linux-2.4.32.patched/include/config/usb/serial/cyberjack.h ---- linux-2.4.32/include/config/usb/serial/cyberjack.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/cyberjack.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_CYBERJACK -diff -Nur linux-2.4.32/include/config/usb/serial/debug.h linux-2.4.32.patched/include/config/usb/serial/debug.h ---- linux-2.4.32/include/config/usb/serial/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_DEBUG -diff -Nur linux-2.4.32/include/config/usb/serial/digi/acceleport.h linux-2.4.32.patched/include/config/usb/serial/digi/acceleport.h ---- linux-2.4.32/include/config/usb/serial/digi/acceleport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/digi/acceleport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_DIGI_ACCELEPORT -diff -Nur linux-2.4.32/include/config/usb/serial/edgeport/ti.h linux-2.4.32.patched/include/config/usb/serial/edgeport/ti.h ---- linux-2.4.32/include/config/usb/serial/edgeport/ti.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/edgeport/ti.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_EDGEPORT_TI -diff -Nur linux-2.4.32/include/config/usb/serial/edgeport.h linux-2.4.32.patched/include/config/usb/serial/edgeport.h ---- linux-2.4.32/include/config/usb/serial/edgeport.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/edgeport.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_EDGEPORT -diff -Nur linux-2.4.32/include/config/usb/serial/empeg.h linux-2.4.32.patched/include/config/usb/serial/empeg.h ---- linux-2.4.32/include/config/usb/serial/empeg.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/empeg.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_EMPEG -diff -Nur linux-2.4.32/include/config/usb/serial/ftdi/sio/module.h linux-2.4.32.patched/include/config/usb/serial/ftdi/sio/module.h ---- linux-2.4.32/include/config/usb/serial/ftdi/sio/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/ftdi/sio/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_FTDI_SIO_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/ftdi/sio.h linux-2.4.32.patched/include/config/usb/serial/ftdi/sio.h ---- linux-2.4.32/include/config/usb/serial/ftdi/sio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/ftdi/sio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_FTDI_SIO -diff -Nur linux-2.4.32/include/config/usb/serial/generic.h linux-2.4.32.patched/include/config/usb/serial/generic.h ---- linux-2.4.32/include/config/usb/serial/generic.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/generic.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_GENERIC 1 -diff -Nur linux-2.4.32/include/config/usb/serial/ipaq.h linux-2.4.32.patched/include/config/usb/serial/ipaq.h ---- linux-2.4.32/include/config/usb/serial/ipaq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/ipaq.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_IPAQ -diff -Nur linux-2.4.32/include/config/usb/serial/ir.h linux-2.4.32.patched/include/config/usb/serial/ir.h ---- linux-2.4.32/include/config/usb/serial/ir.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/ir.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_IR -diff -Nur linux-2.4.32/include/config/usb/serial/keyspan/pda.h linux-2.4.32.patched/include/config/usb/serial/keyspan/pda.h ---- linux-2.4.32/include/config/usb/serial/keyspan/pda.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/keyspan/pda.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_KEYSPAN_PDA -diff -Nur linux-2.4.32/include/config/usb/serial/keyspan.h linux-2.4.32.patched/include/config/usb/serial/keyspan.h ---- linux-2.4.32/include/config/usb/serial/keyspan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/keyspan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_KEYSPAN -diff -Nur linux-2.4.32/include/config/usb/serial/klsi.h linux-2.4.32.patched/include/config/usb/serial/klsi.h ---- linux-2.4.32/include/config/usb/serial/klsi.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/klsi.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_KLSI -diff -Nur linux-2.4.32/include/config/usb/serial/kobil/sct.h linux-2.4.32.patched/include/config/usb/serial/kobil/sct.h ---- linux-2.4.32/include/config/usb/serial/kobil/sct.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/kobil/sct.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_KOBIL_SCT -diff -Nur linux-2.4.32/include/config/usb/serial/mct/u232/module.h linux-2.4.32.patched/include/config/usb/serial/mct/u232/module.h ---- linux-2.4.32/include/config/usb/serial/mct/u232/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/mct/u232/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_MCT_U232_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/mct/u232.h linux-2.4.32.patched/include/config/usb/serial/mct/u232.h ---- linux-2.4.32/include/config/usb/serial/mct/u232.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/mct/u232.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_MCT_U232 -diff -Nur linux-2.4.32/include/config/usb/serial/module.h linux-2.4.32.patched/include/config/usb/serial/module.h ---- linux-2.4.32/include/config/usb/serial/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/omninet.h linux-2.4.32.patched/include/config/usb/serial/omninet.h ---- linux-2.4.32/include/config/usb/serial/omninet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/omninet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_OMNINET -diff -Nur linux-2.4.32/include/config/usb/serial/pl2303/module.h linux-2.4.32.patched/include/config/usb/serial/pl2303/module.h ---- linux-2.4.32/include/config/usb/serial/pl2303/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/pl2303/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_PL2303_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/pl2303.h linux-2.4.32.patched/include/config/usb/serial/pl2303.h ---- linux-2.4.32/include/config/usb/serial/pl2303.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/pl2303.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_PL2303 -diff -Nur linux-2.4.32/include/config/usb/serial/visor/module.h linux-2.4.32.patched/include/config/usb/serial/visor/module.h ---- linux-2.4.32/include/config/usb/serial/visor/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/visor/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_SERIAL_VISOR_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/serial/visor.h linux-2.4.32.patched/include/config/usb/serial/visor.h ---- linux-2.4.32/include/config/usb/serial/visor.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/visor.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_VISOR -diff -Nur linux-2.4.32/include/config/usb/serial/whiteheat.h linux-2.4.32.patched/include/config/usb/serial/whiteheat.h ---- linux-2.4.32/include/config/usb/serial/whiteheat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/whiteheat.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_WHITEHEAT -diff -Nur linux-2.4.32/include/config/usb/serial/xircom.h linux-2.4.32.patched/include/config/usb/serial/xircom.h ---- linux-2.4.32/include/config/usb/serial/xircom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial/xircom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL_XIRCOM -diff -Nur linux-2.4.32/include/config/usb/serial.h linux-2.4.32.patched/include/config/usb/serial.h ---- linux-2.4.32/include/config/usb/serial.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/serial.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_SERIAL -diff -Nur linux-2.4.32/include/config/usb/storage/datafab.h linux-2.4.32.patched/include/config/usb/storage/datafab.h ---- linux-2.4.32/include/config/usb/storage/datafab.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/datafab.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_DATAFAB 1 -diff -Nur linux-2.4.32/include/config/usb/storage/debug.h linux-2.4.32.patched/include/config/usb/storage/debug.h ---- linux-2.4.32/include/config/usb/storage/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_STORAGE_DEBUG -diff -Nur linux-2.4.32/include/config/usb/storage/dpcm.h linux-2.4.32.patched/include/config/usb/storage/dpcm.h ---- linux-2.4.32/include/config/usb/storage/dpcm.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/dpcm.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_DPCM 1 -diff -Nur linux-2.4.32/include/config/usb/storage/freecom.h linux-2.4.32.patched/include/config/usb/storage/freecom.h ---- linux-2.4.32/include/config/usb/storage/freecom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/freecom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_FREECOM 1 -diff -Nur linux-2.4.32/include/config/usb/storage/hp8200e.h linux-2.4.32.patched/include/config/usb/storage/hp8200e.h ---- linux-2.4.32/include/config/usb/storage/hp8200e.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/hp8200e.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_HP8200e 1 -diff -Nur linux-2.4.32/include/config/usb/storage/isd200.h linux-2.4.32.patched/include/config/usb/storage/isd200.h ---- linux-2.4.32/include/config/usb/storage/isd200.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/isd200.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_STORAGE_ISD200 -diff -Nur linux-2.4.32/include/config/usb/storage/jumpshot.h linux-2.4.32.patched/include/config/usb/storage/jumpshot.h ---- linux-2.4.32/include/config/usb/storage/jumpshot.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/jumpshot.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_JUMPSHOT 1 -diff -Nur linux-2.4.32/include/config/usb/storage/module.h linux-2.4.32.patched/include/config/usb/storage/module.h ---- linux-2.4.32/include/config/usb/storage/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/storage/sddr09.h linux-2.4.32.patched/include/config/usb/storage/sddr09.h ---- linux-2.4.32/include/config/usb/storage/sddr09.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/sddr09.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_SDDR09 1 -diff -Nur linux-2.4.32/include/config/usb/storage/sddr55.h linux-2.4.32.patched/include/config/usb/storage/sddr55.h ---- linux-2.4.32/include/config/usb/storage/sddr55.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage/sddr55.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_STORAGE_SDDR55 1 -diff -Nur linux-2.4.32/include/config/usb/storage.h linux-2.4.32.patched/include/config/usb/storage.h ---- linux-2.4.32/include/config/usb/storage.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/storage.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_STORAGE -diff -Nur linux-2.4.32/include/config/usb/stv680.h linux-2.4.32.patched/include/config/usb/stv680.h ---- linux-2.4.32/include/config/usb/stv680.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/stv680.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_STV680 -diff -Nur linux-2.4.32/include/config/usb/tigl.h linux-2.4.32.patched/include/config/usb/tigl.h ---- linux-2.4.32/include/config/usb/tigl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/tigl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_TIGL -diff -Nur linux-2.4.32/include/config/usb/uhci/alt/module.h linux-2.4.32.patched/include/config/usb/uhci/alt/module.h ---- linux-2.4.32/include/config/usb/uhci/alt/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/uhci/alt/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_USB_UHCI_ALT_MODULE 1 -diff -Nur linux-2.4.32/include/config/usb/uhci/alt.h linux-2.4.32.patched/include/config/usb/uhci/alt.h ---- linux-2.4.32/include/config/usb/uhci/alt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/uhci/alt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_UHCI_ALT -diff -Nur linux-2.4.32/include/config/usb/uhci.h linux-2.4.32.patched/include/config/usb/uhci.h ---- linux-2.4.32/include/config/usb/uhci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/uhci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_UHCI -diff -Nur linux-2.4.32/include/config/usb/usbnet.h linux-2.4.32.patched/include/config/usb/usbnet.h ---- linux-2.4.32/include/config/usb/usbnet.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/usbnet.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_USBNET -diff -Nur linux-2.4.32/include/config/usb/uss720.h linux-2.4.32.patched/include/config/usb/uss720.h ---- linux-2.4.32/include/config/usb/uss720.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/uss720.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_USS720 -diff -Nur linux-2.4.32/include/config/usb/vicam.h linux-2.4.32.patched/include/config/usb/vicam.h ---- linux-2.4.32/include/config/usb/vicam.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/vicam.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_VICAM -diff -Nur linux-2.4.32/include/config/usb/w9968cf.h linux-2.4.32.patched/include/config/usb/w9968cf.h ---- linux-2.4.32/include/config/usb/w9968cf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/w9968cf.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_W9968CF -diff -Nur linux-2.4.32/include/config/usb/wacom.h linux-2.4.32.patched/include/config/usb/wacom.h ---- linux-2.4.32/include/config/usb/wacom.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb/wacom.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB_WACOM -diff -Nur linux-2.4.32/include/config/usb.h linux-2.4.32.patched/include/config/usb.h ---- linux-2.4.32/include/config/usb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/usb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_USB -diff -Nur linux-2.4.32/include/config/vfat/fs/module.h linux-2.4.32.patched/include/config/vfat/fs/module.h ---- linux-2.4.32/include/config/vfat/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vfat/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_VFAT_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/vfat/fs.h linux-2.4.32.patched/include/config/vfat/fs.h ---- linux-2.4.32/include/config/vfat/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vfat/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VFAT_FS -diff -Nur linux-2.4.32/include/config/via/rhine/mmio.h linux-2.4.32.patched/include/config/via/rhine/mmio.h ---- linux-2.4.32/include/config/via/rhine/mmio.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/via/rhine/mmio.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIA_RHINE_MMIO -diff -Nur linux-2.4.32/include/config/via/rhine.h linux-2.4.32.patched/include/config/via/rhine.h ---- linux-2.4.32/include/config/via/rhine.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/via/rhine.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIA_RHINE -diff -Nur linux-2.4.32/include/config/victor/mpc30x.h linux-2.4.32.patched/include/config/victor/mpc30x.h ---- linux-2.4.32/include/config/victor/mpc30x.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/victor/mpc30x.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VICTOR_MPC30X -diff -Nur linux-2.4.32/include/config/video/bt848.h linux-2.4.32.patched/include/config/video/bt848.h ---- linux-2.4.32/include/config/video/bt848.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/bt848.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_BT848 -diff -Nur linux-2.4.32/include/config/video/bwqcam.h linux-2.4.32.patched/include/config/video/bwqcam.h ---- linux-2.4.32/include/config/video/bwqcam.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/bwqcam.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_BWQCAM -diff -Nur linux-2.4.32/include/config/video/cpia.h linux-2.4.32.patched/include/config/video/cpia.h ---- linux-2.4.32/include/config/video/cpia.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/cpia.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_CPIA -diff -Nur linux-2.4.32/include/config/video/cqcam.h linux-2.4.32.patched/include/config/video/cqcam.h ---- linux-2.4.32/include/config/video/cqcam.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/cqcam.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_CQCAM -diff -Nur linux-2.4.32/include/config/video/dev/module.h linux-2.4.32.patched/include/config/video/dev/module.h ---- linux-2.4.32/include/config/video/dev/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/dev/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_VIDEO_DEV_MODULE 1 -diff -Nur linux-2.4.32/include/config/video/dev.h linux-2.4.32.patched/include/config/video/dev.h ---- linux-2.4.32/include/config/video/dev.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/dev.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_DEV -diff -Nur linux-2.4.32/include/config/video/meye.h linux-2.4.32.patched/include/config/video/meye.h ---- linux-2.4.32/include/config/video/meye.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/meye.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_MEYE -diff -Nur linux-2.4.32/include/config/video/pms.h linux-2.4.32.patched/include/config/video/pms.h ---- linux-2.4.32/include/config/video/pms.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/pms.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_PMS -diff -Nur linux-2.4.32/include/config/video/proc/fs.h linux-2.4.32.patched/include/config/video/proc/fs.h ---- linux-2.4.32/include/config/video/proc/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/proc/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_VIDEO_PROC_FS 1 -diff -Nur linux-2.4.32/include/config/video/saa5249.h linux-2.4.32.patched/include/config/video/saa5249.h ---- linux-2.4.32/include/config/video/saa5249.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/saa5249.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_SAA5249 -diff -Nur linux-2.4.32/include/config/video/stradis.h linux-2.4.32.patched/include/config/video/stradis.h ---- linux-2.4.32/include/config/video/stradis.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/stradis.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_STRADIS -diff -Nur linux-2.4.32/include/config/video/zoran/buz.h linux-2.4.32.patched/include/config/video/zoran/buz.h ---- linux-2.4.32/include/config/video/zoran/buz.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/zoran/buz.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_ZORAN_BUZ -diff -Nur linux-2.4.32/include/config/video/zoran/dc10.h linux-2.4.32.patched/include/config/video/zoran/dc10.h ---- linux-2.4.32/include/config/video/zoran/dc10.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/zoran/dc10.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_ZORAN_DC10 -diff -Nur linux-2.4.32/include/config/video/zoran/lml33.h linux-2.4.32.patched/include/config/video/zoran/lml33.h ---- linux-2.4.32/include/config/video/zoran/lml33.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/zoran/lml33.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_ZORAN_LML33 -diff -Nur linux-2.4.32/include/config/video/zoran.h linux-2.4.32.patched/include/config/video/zoran.h ---- linux-2.4.32/include/config/video/zoran.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/zoran.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_ZORAN -diff -Nur linux-2.4.32/include/config/video/zr36120.h linux-2.4.32.patched/include/config/video/zr36120.h ---- linux-2.4.32/include/config/video/zr36120.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/video/zr36120.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VIDEO_ZR36120 -diff -Nur linux-2.4.32/include/config/vlan/8021q.h linux-2.4.32.patched/include/config/vlan/8021q.h ---- linux-2.4.32/include/config/vlan/8021q.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vlan/8021q.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_VLAN_8021Q 1 -diff -Nur linux-2.4.32/include/config/vtag/icache.h linux-2.4.32.patched/include/config/vtag/icache.h ---- linux-2.4.32/include/config/vtag/icache.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vtag/icache.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VTAG_ICACHE -diff -Nur linux-2.4.32/include/config/vt.h linux-2.4.32.patched/include/config/vt.h ---- linux-2.4.32/include/config/vt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VT -diff -Nur linux-2.4.32/include/config/vxfs/fs.h linux-2.4.32.patched/include/config/vxfs/fs.h ---- linux-2.4.32/include/config/vxfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/vxfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_VXFS_FS -diff -Nur linux-2.4.32/include/config/w83877f/wdt.h linux-2.4.32.patched/include/config/w83877f/wdt.h ---- linux-2.4.32/include/config/w83877f/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/w83877f/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_W83877F_WDT -diff -Nur linux-2.4.32/include/config/wafer/wdt.h linux-2.4.32.patched/include/config/wafer/wdt.h ---- linux-2.4.32/include/config/wafer/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wafer/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WAFER_WDT -diff -Nur linux-2.4.32/include/config/wan/router/module.h linux-2.4.32.patched/include/config/wan/router/module.h ---- linux-2.4.32/include/config/wan/router/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wan/router/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_WAN_ROUTER_MODULE 1 -diff -Nur linux-2.4.32/include/config/wan/router.h linux-2.4.32.patched/include/config/wan/router.h ---- linux-2.4.32/include/config/wan/router.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wan/router.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WAN_ROUTER -diff -Nur linux-2.4.32/include/config/wan.h linux-2.4.32.patched/include/config/wan.h ---- linux-2.4.32/include/config/wan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WAN -diff -Nur linux-2.4.32/include/config/watchdog/nowayout.h linux-2.4.32.patched/include/config/watchdog/nowayout.h ---- linux-2.4.32/include/config/watchdog/nowayout.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/watchdog/nowayout.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_WATCHDOG_NOWAYOUT 1 -diff -Nur linux-2.4.32/include/config/watchdog.h linux-2.4.32.patched/include/config/watchdog.h ---- linux-2.4.32/include/config/watchdog.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/watchdog.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_WATCHDOG 1 -diff -Nur linux-2.4.32/include/config/wavelan.h linux-2.4.32.patched/include/config/wavelan.h ---- linux-2.4.32/include/config/wavelan.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wavelan.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WAVELAN -diff -Nur linux-2.4.32/include/config/wdc/ali15x3.h linux-2.4.32.patched/include/config/wdc/ali15x3.h ---- linux-2.4.32/include/config/wdc/ali15x3.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wdc/ali15x3.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WDC_ALI15X3 -diff -Nur linux-2.4.32/include/config/wdt.h linux-2.4.32.patched/include/config/wdt.h ---- linux-2.4.32/include/config/wdt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wdt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WDT -diff -Nur linux-2.4.32/include/config/wdtpci.h linux-2.4.32.patched/include/config/wdtpci.h ---- linux-2.4.32/include/config/wdtpci.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wdtpci.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WDTPCI -diff -Nur linux-2.4.32/include/config/winbond/840.h linux-2.4.32.patched/include/config/winbond/840.h ---- linux-2.4.32/include/config/winbond/840.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/winbond/840.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WINBOND_840 -diff -Nur linux-2.4.32/include/config/wl/module.h linux-2.4.32.patched/include/config/wl/module.h ---- linux-2.4.32/include/config/wl/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wl/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_WL_MODULE 1 -diff -Nur linux-2.4.32/include/config/wl.h linux-2.4.32.patched/include/config/wl.h ---- linux-2.4.32/include/config/wl.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/wl.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_WL -diff -Nur linux-2.4.32/include/config/x25.h linux-2.4.32.patched/include/config/x25.h ---- linux-2.4.32/include/config/x25.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/x25.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_X25 -diff -Nur linux-2.4.32/include/config/xfs/debug.h linux-2.4.32.patched/include/config/xfs/debug.h ---- linux-2.4.32/include/config/xfs/debug.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/debug.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_XFS_DEBUG -diff -Nur linux-2.4.32/include/config/xfs/fs/module.h linux-2.4.32.patched/include/config/xfs/fs/module.h ---- linux-2.4.32/include/config/xfs/fs/module.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/fs/module.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_XFS_FS_MODULE 1 -diff -Nur linux-2.4.32/include/config/xfs/fs.h linux-2.4.32.patched/include/config/xfs/fs.h ---- linux-2.4.32/include/config/xfs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_XFS_FS -diff -Nur linux-2.4.32/include/config/xfs/quota.h linux-2.4.32.patched/include/config/xfs/quota.h ---- linux-2.4.32/include/config/xfs/quota.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/quota.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_XFS_QUOTA -diff -Nur linux-2.4.32/include/config/xfs/rt.h linux-2.4.32.patched/include/config/xfs/rt.h ---- linux-2.4.32/include/config/xfs/rt.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/rt.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_XFS_RT -diff -Nur linux-2.4.32/include/config/xfs/trace.h linux-2.4.32.patched/include/config/xfs/trace.h ---- linux-2.4.32/include/config/xfs/trace.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/xfs/trace.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_XFS_TRACE -diff -Nur linux-2.4.32/include/config/yam.h linux-2.4.32.patched/include/config/yam.h ---- linux-2.4.32/include/config/yam.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/yam.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_YAM -diff -Nur linux-2.4.32/include/config/yellowfin.h linux-2.4.32.patched/include/config/yellowfin.h ---- linux-2.4.32/include/config/yellowfin.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/yellowfin.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_YELLOWFIN -diff -Nur linux-2.4.32/include/config/zao/capcella.h linux-2.4.32.patched/include/config/zao/capcella.h ---- linux-2.4.32/include/config/zao/capcella.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/zao/capcella.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ZAO_CAPCELLA -diff -Nur linux-2.4.32/include/config/zisofs/fs.h linux-2.4.32.patched/include/config/zisofs/fs.h ---- linux-2.4.32/include/config/zisofs/fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/zisofs/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ZISOFS_FS -diff -Nur linux-2.4.32/include/config/zisofs.h linux-2.4.32.patched/include/config/zisofs.h ---- linux-2.4.32/include/config/zisofs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/zisofs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#undef CONFIG_ZISOFS -diff -Nur linux-2.4.32/include/config/zlib/deflate.h linux-2.4.32.patched/include/config/zlib/deflate.h ---- linux-2.4.32/include/config/zlib/deflate.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/zlib/deflate.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_ZLIB_DEFLATE 1 -diff -Nur linux-2.4.32/include/config/zlib/inflate.h linux-2.4.32.patched/include/config/zlib/inflate.h ---- linux-2.4.32/include/config/zlib/inflate.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/config/zlib/inflate.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#define CONFIG_ZLIB_INFLATE 1 -diff -Nur linux-2.4.32/include/linux/atmbr2684.h linux-2.4.32.patched/include/linux/atmbr2684.h ---- linux-2.4.32/include/linux/atmbr2684.h 2002-08-03 02:39:45.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/atmbr2684.h 2006-03-13 18:55:56.000000000 +0100 -@@ -3,6 +3,7 @@ - - #include <linux/atm.h> - #include <linux/if.h> /* For IFNAMSIZ */ -+#include <linux/if_ether.h> /* ETH_P_* */ - - /* - * Type of media we're bridging (ethernet, token ring, etc) Currently only -@@ -36,15 +37,24 @@ - #define BR2684_ENCAPS_AUTODETECT (2) /* Unsuported */ - - /* -+ * Is this VC bridged or routed? -+ */ -+ -+#define BR2684_PAYLOAD_ROUTED (0) -+#define BR2684_PAYLOAD_BRIDGED (1) -+ -+ -+/* - * This is for the ATM_NEWBACKENDIF call - these are like socket families: - * the first element of the structure is the backend number and the rest - * is per-backend specific - */ - struct atm_newif_br2684 { -- atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */ -- int media; /* BR2684_MEDIA_* */ -- char ifname[IFNAMSIZ]; -- int mtu; -+ atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */ -+ int media; /* BR2684_MEDIA_* */ -+ char ifname[IFNAMSIZ]; -+ int mtu; -+ int payload; /* bridged or routed */ - }; - - /* -@@ -68,16 +78,17 @@ - * is per-backend specific - */ - struct atm_backend_br2684 { -- atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */ -+ atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */ - struct br2684_if_spec ifspec; -- int fcs_in; /* BR2684_FCSIN_* */ -- int fcs_out; /* BR2684_FCSOUT_* */ -- int fcs_auto; /* 1: fcs_{in,out} disabled if no FCS rx'ed */ -- int encaps; /* BR2684_ENCAPS_* */ -- int has_vpiid; /* 1: use vpn_id - Unsupported */ -- __u8 vpn_id[7]; -- int send_padding; /* unsupported */ -- int min_size; /* we will pad smaller packets than this */ -+ int fcs_in; /* BR2684_FCSIN_* */ -+ int fcs_out; /* BR2684_FCSOUT_* */ -+ int fcs_auto; /* 1: fcs_{in,out} disabled if no FCS rx'ed */ -+ int encaps; /* BR2684_ENCAPS_* */ -+ int payload; /* BR2684_PAYLOAD_* */ -+ int has_vpiid; /* 1: use vpn_id - Unsupported */ -+ __u8 vpn_id[7]; -+ int send_padding; /* unsupported */ -+ int min_size; /* we will pad smaller packets than this */ - }; - - /* -@@ -95,7 +106,12 @@ - struct br2684_filter filter; - }; - -+enum br2684_payload { -+ p_routed = BR2684_PAYLOAD_ROUTED, -+ p_bridged = BR2684_PAYLOAD_BRIDGED, -+}; -+ - #define BR2684_SETFILT _IOW( 'a', ATMIOC_BACKEND + 0, \ - struct br2684_filter_set) - --#endif /* _LINUX_ATMBR2684_H */ -+#endif /* _LINUX_ATMBR2684_H */ -diff -Nur linux-2.4.32/include/linux/atmdev.h linux-2.4.32.patched/include/linux/atmdev.h ---- linux-2.4.32/include/linux/atmdev.h 2004-08-08 01:26:06.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/atmdev.h 2006-03-13 18:55:56.000000000 +0100 -@@ -400,6 +400,7 @@ - struct atm_dev *atm_dev_register(const char *type,const struct atmdev_ops *ops, - int number,atm_dev_flags_t *flags); /* number == -1: pick first available */ - struct atm_dev *atm_dev_lookup(int number); -+void atm_dev_set_link_status(struct atm_dev *dev, int status); - void atm_dev_deregister(struct atm_dev *dev); - void shutdown_atm_dev(struct atm_dev *dev); - void vcc_insert_socket(struct sock *sk); -diff -Nur linux-2.4.32/include/linux/autoconf.h linux-2.4.32.patched/include/linux/autoconf.h ---- linux-2.4.32/include/linux/autoconf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/autoconf.h 2006-03-13 18:56:04.000000000 +0100 -@@ -0,0 +1,1680 @@ -+/* -+ * Automatically generated C config: don't edit -+ */ -+#define AUTOCONF_INCLUDED -+#define CONFIG_MIPS 1 -+#define CONFIG_MIPS32 1 -+#undef CONFIG_MIPS64 -+ -+/* -+ * Code maturity level options -+ */ -+#define CONFIG_EXPERIMENTAL 1 -+ -+/* -+ * Loadable module support -+ */ -+#define CONFIG_MODULES 1 -+#undef CONFIG_MODVERSIONS -+#undef CONFIG_KMOD -+ -+/* -+ * Machine selection -+ */ -+#undef CONFIG_ACER_PICA_61 -+#undef CONFIG_MIPS_BOSPORUS -+#undef CONFIG_MIPS_FICMMP -+#undef CONFIG_MIPS_MIRAGE -+#undef CONFIG_MIPS_DB1000 -+#undef CONFIG_MIPS_DB1100 -+#undef CONFIG_MIPS_DB1500 -+#undef CONFIG_MIPS_DB1550 -+#undef CONFIG_MIPS_DB1200 -+#undef CONFIG_MIPS_PB1000 -+#undef CONFIG_MIPS_PB1100 -+#undef CONFIG_MIPS_PB1500 -+#undef CONFIG_MIPS_PB1550 -+#undef CONFIG_MIPS_PB1200 -+#undef CONFIG_MIPS_HYDROGEN3 -+#undef CONFIG_MIPS_XXS1500 -+#undef CONFIG_MIPS_MTX1 -+#undef CONFIG_COGENT_CSB250 -+#undef CONFIG_BAGET_MIPS -+#undef CONFIG_CASIO_E55 -+#undef CONFIG_MIPS_COBALT -+#undef CONFIG_DECSTATION -+#undef CONFIG_MIPS_EV64120 -+#undef CONFIG_MIPS_EV96100 -+#undef CONFIG_MIPS_IVR -+#undef CONFIG_HP_LASERJET -+#undef CONFIG_IBM_WORKPAD -+#undef CONFIG_LASAT -+#undef CONFIG_MIPS_ITE8172 -+#undef CONFIG_MIPS_ATLAS -+#undef CONFIG_MIPS_MAGNUM_4000 -+#undef CONFIG_MIPS_MALTA -+#undef CONFIG_MIPS_SEAD -+#undef CONFIG_MOMENCO_OCELOT -+#undef CONFIG_MOMENCO_OCELOT_G -+#undef CONFIG_MOMENCO_OCELOT_C -+#undef CONFIG_MOMENCO_JAGUAR_ATX -+#undef CONFIG_PMC_BIG_SUR -+#undef CONFIG_PMC_STRETCH -+#undef CONFIG_PMC_YOSEMITE -+#undef CONFIG_DDB5074 -+#undef CONFIG_DDB5476 -+#undef CONFIG_DDB5477 -+#undef CONFIG_NEC_OSPREY -+#undef CONFIG_NEC_EAGLE -+#undef CONFIG_OLIVETTI_M700 -+#undef CONFIG_NINO -+#undef CONFIG_SGI_IP22 -+#undef CONFIG_SGI_IP27 -+#undef CONFIG_SIBYTE_SB1xxx_SOC -+#define CONFIG_MIPS_BRCM 1 -+#define CONFIG_BCM947XX 1 -+#define CONFIG_BCM4710 1 -+#define CONFIG_BCM4310 1 -+#define CONFIG_BCM4704 1 -+#define CONFIG_BCM5365 1 -+#undef CONFIG_SNI_RM200_PCI -+#undef CONFIG_TANBAC_TB0226 -+#undef CONFIG_TANBAC_TB0229 -+#undef CONFIG_TOSHIBA_JMR3927 -+#undef CONFIG_TOSHIBA_RBTX4927 -+#undef CONFIG_VICTOR_MPC30X -+#undef CONFIG_ZAO_CAPCELLA -+#undef CONFIG_HIGHMEM -+#define CONFIG_RWSEM_GENERIC_SPINLOCK 1 -+#undef CONFIG_RWSEM_XCHGADD_ALGORITHM -+#define CONFIG_CMDLINE "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/preinit noinitrd console=ttyS0,115200" -+#define CONFIG_PCI 1 -+#define CONFIG_NONCOHERENT_IO 1 -+#define CONFIG_NEW_TIME_C 1 -+#define CONFIG_NEW_IRQ 1 -+#define CONFIG_HND 1 -+#undef CONFIG_MIPS_AU1000 -+ -+/* -+ * CPU selection -+ */ -+#define CONFIG_CPU_MIPS32 1 -+#undef CONFIG_CPU_MIPS64 -+#undef CONFIG_CPU_R3000 -+#undef CONFIG_CPU_TX39XX -+#undef CONFIG_CPU_VR41XX -+#undef CONFIG_CPU_R4300 -+#undef CONFIG_CPU_R4X00 -+#undef CONFIG_CPU_TX49XX -+#undef CONFIG_CPU_R5000 -+#undef CONFIG_CPU_R5432 -+#undef CONFIG_CPU_R6000 -+#undef CONFIG_CPU_NEVADA -+#undef CONFIG_CPU_R8000 -+#undef CONFIG_CPU_R10000 -+#undef CONFIG_CPU_RM7000 -+#undef CONFIG_CPU_RM9000 -+#undef CONFIG_CPU_SB1 -+#define CONFIG_PAGE_SIZE_4KB 1 -+#undef CONFIG_PAGE_SIZE_16KB -+#undef CONFIG_PAGE_SIZE_64KB -+#define CONFIG_CPU_HAS_PREFETCH 1 -+#undef CONFIG_VTAG_ICACHE -+#undef CONFIG_64BIT_PHYS_ADDR -+#undef CONFIG_CPU_ADVANCED -+#define CONFIG_CPU_HAS_LLSC 1 -+#undef CONFIG_CPU_HAS_LLDSCD -+#undef CONFIG_CPU_HAS_WB -+#define CONFIG_CPU_HAS_SYNC 1 -+ -+/* -+ * General setup -+ */ -+#define CONFIG_CPU_LITTLE_ENDIAN 1 -+#undef CONFIG_BUILD_ELF64 -+#define CONFIG_NET 1 -+#define CONFIG_PCI 1 -+#undef CONFIG_PCI_NEW -+#define CONFIG_PCI_AUTO 1 -+#undef CONFIG_PCI_NAMES -+#undef CONFIG_ISA -+#undef CONFIG_TC -+#undef CONFIG_MCA -+#undef CONFIG_SBUS -+#define CONFIG_HOTPLUG 1 -+ -+/* -+ * PCMCIA/CardBus support -+ */ -+#undef CONFIG_PCMCIA -+#define CONFIG_PCMCIA_MODULE 1 -+#define CONFIG_CARDBUS 1 -+#undef CONFIG_TCIC -+#undef CONFIG_I82092 -+#undef CONFIG_I82365 -+ -+/* -+ * PCI Hotplug Support -+ */ -+#undef CONFIG_HOTPLUG_PCI -+#undef CONFIG_HOTPLUG_PCI_COMPAQ -+#undef CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM -+#undef CONFIG_HOTPLUG_PCI_SHPC -+#undef CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE -+#undef CONFIG_HOTPLUG_PCI_PCIE -+#undef CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE -+#define CONFIG_SYSVIPC 1 -+#undef CONFIG_BSD_PROCESS_ACCT -+#define CONFIG_SYSCTL 1 -+#define CONFIG_KCORE_ELF 1 -+#undef CONFIG_KCORE_AOUT -+#undef CONFIG_BINFMT_AOUT -+#define CONFIG_BINFMT_ELF 1 -+#undef CONFIG_BINFMT_ELF_AOUT -+#undef CONFIG_MIPS32_COMPAT -+#undef CONFIG_MIPS32_O32 -+#undef CONFIG_MIPS32_N32 -+#undef CONFIG_BINFMT_ELF32 -+#undef CONFIG_BINFMT_MISC -+#undef CONFIG_OOM_KILLER -+#undef CONFIG_CMDLINE_BOOL -+ -+/* -+ * Memory Technology Devices (MTD) -+ */ -+#define CONFIG_MTD 1 -+#undef CONFIG_MTD_DEBUG -+#define CONFIG_MTD_PARTITIONS 1 -+#undef CONFIG_MTD_CONCAT -+#undef CONFIG_MTD_REDBOOT_PARTS -+#undef CONFIG_MTD_CMDLINE_PARTS -+ -+/* -+ * User Modules And Translation Layers -+ */ -+#define CONFIG_MTD_CHAR 1 -+#define CONFIG_MTD_BLOCK 1 -+#undef CONFIG_FTL -+#undef CONFIG_NFTL -+ -+/* -+ * RAM/ROM/Flash chip drivers -+ */ -+#define CONFIG_MTD_CFI 1 -+#undef CONFIG_MTD_JEDECPROBE -+#define CONFIG_MTD_GEN_PROBE 1 -+#define CONFIG_MTD_CFI_ADV_OPTIONS 1 -+#define CONFIG_MTD_CFI_NOSWAP 1 -+#undef CONFIG_MTD_CFI_BE_BYTE_SWAP -+#undef CONFIG_MTD_CFI_LE_BYTE_SWAP -+#define CONFIG_MTD_CFI_GEOMETRY 1 -+#undef CONFIG_MTD_CFI_B1 -+#define CONFIG_MTD_CFI_B2 1 -+#undef CONFIG_MTD_CFI_B4 -+#undef CONFIG_MTD_CFI_B8 -+#define CONFIG_MTD_CFI_I1 1 -+#undef CONFIG_MTD_CFI_I2 -+#undef CONFIG_MTD_CFI_I4 -+#undef CONFIG_MTD_CFI_I8 -+#define CONFIG_MTD_CFI_INTELEXT 1 -+#define CONFIG_MTD_CFI_AMDSTD 1 -+#undef CONFIG_MTD_CFI_STAA -+#define CONFIG_MTD_CFI_SSTSTD 1 -+#undef CONFIG_MTD_RAM -+#undef CONFIG_MTD_ROM -+#undef CONFIG_MTD_ABSENT -+#undef CONFIG_MTD_OBSOLETE_CHIPS -+#undef CONFIG_MTD_AMDSTD -+#undef CONFIG_MTD_SHARP -+#undef CONFIG_MTD_JEDEC -+ -+/* -+ * Mapping drivers for chip access -+ */ -+#undef CONFIG_MTD_PHYSMAP -+#define CONFIG_MTD_BCM947XX 1 -+#undef CONFIG_MTD_PB1000 -+#undef CONFIG_MTD_PB1500 -+#undef CONFIG_MTD_PB1100 -+#undef CONFIG_MTD_BOSPORUS -+#undef CONFIG_MTD_XXS1500 -+#undef CONFIG_MTD_MTX1 -+#undef CONFIG_MTD_DB1X00 -+#undef CONFIG_MTD_PB1550 -+#undef CONFIG_MTD_HYDROGEN3 -+#undef CONFIG_MTD_MIRAGE -+#undef CONFIG_MTD_CSTM_MIPS_IXX -+#undef CONFIG_MTD_OCELOT -+#undef CONFIG_MTD_LASAT -+#undef CONFIG_MTD_PCI -+#undef CONFIG_MTD_PCMCIA -+ -+/* -+ * Self-contained MTD device drivers -+ */ -+#undef CONFIG_MTD_PMC551 -+#undef CONFIG_MTD_SLRAM -+#undef CONFIG_MTD_MTDRAM -+#undef CONFIG_MTD_BLKMTD -+ -+/* -+ * Disk-On-Chip Device Drivers -+ */ -+#undef CONFIG_MTD_DOC1000 -+#undef CONFIG_MTD_DOC2000 -+#undef CONFIG_MTD_DOC2001 -+#undef CONFIG_MTD_DOCPROBE -+ -+/* -+ * NAND Flash Device Drivers -+ */ -+#undef CONFIG_MTD_NAND -+ -+/* -+ * Parallel port support -+ */ -+#undef CONFIG_PARPORT -+#define CONFIG_PARPORT_MODULE 1 -+#undef CONFIG_PARPORT_PC -+#undef CONFIG_PARPORT_SPLINK -+#define CONFIG_PARPORT_SPLINK_MODULE 1 -+#undef CONFIG_PARPORT_AMIGA -+#undef CONFIG_PARPORT_MFC3 -+#undef CONFIG_PARPORT_ATARI -+#undef CONFIG_PARPORT_GSC -+#undef CONFIG_PARPORT_SUNBPP -+#undef CONFIG_PARPORT_IP22 -+#undef CONFIG_PARPORT_OTHER -+#undef CONFIG_PARPORT_1284 -+ -+/* -+ * Plug and Play configuration -+ */ -+#undef CONFIG_PNP -+#undef CONFIG_ISAPNP -+ -+/* -+ * Block devices -+ */ -+#undef CONFIG_BLK_DEV_FD -+#undef CONFIG_BLK_DEV_XD -+#undef CONFIG_PARIDE -+#undef CONFIG_BLK_CPQ_DA -+#undef CONFIG_BLK_CPQ_CISS_DA -+#undef CONFIG_CISS_SCSI_TAPE -+#undef CONFIG_CISS_MONITOR_THREAD -+#undef CONFIG_BLK_DEV_DAC960 -+#undef CONFIG_BLK_DEV_UMEM -+#undef CONFIG_BLK_DEV_SX8 -+#undef CONFIG_BLK_DEV_LOOP -+#define CONFIG_BLK_DEV_LOOP_MODULE 1 -+#undef CONFIG_BLK_DEV_NBD -+#define CONFIG_BLK_DEV_NBD_MODULE 1 -+#undef CONFIG_BLK_DEV_RAM -+#undef CONFIG_BLK_DEV_INITRD -+#undef CONFIG_BLK_STATS -+ -+/* -+ * Multi-device support (RAID and LVM) -+ */ -+#undef CONFIG_MD -+#undef CONFIG_BLK_DEV_MD -+#undef CONFIG_MD_LINEAR -+#undef CONFIG_MD_RAID0 -+#undef CONFIG_MD_RAID1 -+#undef CONFIG_MD_RAID5 -+#undef CONFIG_MD_MULTIPATH -+#undef CONFIG_BLK_DEV_LVM -+ -+/* -+ * Networking options -+ */ -+#define CONFIG_PACKET 1 -+#define CONFIG_PACKET_MMAP 1 -+#undef CONFIG_NETLINK_DEV -+#define CONFIG_NETLINK_DEV_MODULE 1 -+#define CONFIG_NETFILTER 1 -+#undef CONFIG_NETFILTER_DEBUG -+#define CONFIG_FILTER 1 -+#define CONFIG_UNIX 1 -+#define CONFIG_INET 1 -+#define CONFIG_IP_MULTICAST 1 -+#define CONFIG_IP_ADVANCED_ROUTER 1 -+#define CONFIG_IP_MULTIPLE_TABLES 1 -+#define CONFIG_IP_ROUTE_FWMARK 1 -+#define CONFIG_IP_ROUTE_NAT 1 -+#define CONFIG_IP_ROUTE_MULTIPATH 1 -+#define CONFIG_IP_ROUTE_TOS 1 -+#undef CONFIG_IP_ROUTE_VERBOSE -+#undef CONFIG_IP_PNP -+#undef CONFIG_NET_IPIP -+#define CONFIG_NET_IPIP_MODULE 1 -+#undef CONFIG_NET_IPGRE -+#define CONFIG_NET_IPGRE_MODULE 1 -+#undef CONFIG_NET_IPGRE_BROADCAST -+#undef CONFIG_IP_MROUTE -+#undef CONFIG_ARPD -+#undef CONFIG_INET_ECN -+#undef CONFIG_SYN_COOKIES -+ -+/* -+ * IP: Netfilter Configuration -+ */ -+#define CONFIG_IP_NF_CONNTRACK 1 -+#define CONFIG_IP_NF_CONNTRACK_MARK 1 -+#define CONFIG_IP_NF_FTP 1 -+#undef CONFIG_IP_NF_AMANDA -+#define CONFIG_IP_NF_AMANDA_MODULE 1 -+#undef CONFIG_IP_NF_TFTP -+#define CONFIG_IP_NF_TFTP_MODULE 1 -+#define CONFIG_IP_NF_IRC 1 -+#undef CONFIG_IP_NF_CT_ACCT -+#define CONFIG_IP_NF_CT_ACCT_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_CONNBYTES -+#define CONFIG_IP_NF_MATCH_CONNBYTES_MODULE 1 -+#undef CONFIG_IP_NF_CT_PROTO_GRE -+#define CONFIG_IP_NF_CT_PROTO_GRE_MODULE 1 -+#undef CONFIG_IP_NF_PPTP -+#define CONFIG_IP_NF_PPTP_MODULE 1 -+#undef CONFIG_IP_NF_H323 -+#define CONFIG_IP_NF_H323_MODULE 1 -+#undef CONFIG_IP_NF_RTSP -+#define CONFIG_IP_NF_RTSP_MODULE 1 -+#undef CONFIG_IP_NF_MMS -+#define CONFIG_IP_NF_MMS_MODULE 1 -+#undef CONFIG_IP_NF_QUEUE -+#define CONFIG_IP_NF_QUEUE_MODULE 1 -+#define CONFIG_IP_NF_IPTABLES 1 -+#undef CONFIG_IP_NF_MATCH_LIMIT -+#define CONFIG_IP_NF_MATCH_LIMIT_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_QUOTA -+#define CONFIG_IP_NF_MATCH_QUOTA_MODULE 1 -+#undef CONFIG_IP_NF_SET -+#define CONFIG_IP_NF_SET_MODULE 1 -+#define CONFIG_IP_NF_SET_MAX (256) -+#define CONFIG_IP_NF_SET_HASHSIZE (1024) -+#undef CONFIG_IP_NF_MATCH_SET -+#define CONFIG_IP_NF_MATCH_SET_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_SET -+#define CONFIG_IP_NF_TARGET_SET_MODULE 1 -+#undef CONFIG_IP_NF_SET_IPMAP -+#define CONFIG_IP_NF_SET_IPMAP_MODULE 1 -+#undef CONFIG_IP_NF_SET_PORTMAP -+#define CONFIG_IP_NF_SET_PORTMAP_MODULE 1 -+#undef CONFIG_IP_NF_SET_MACIPMAP -+#define CONFIG_IP_NF_SET_MACIPMAP_MODULE 1 -+#undef CONFIG_IP_NF_SET_IPHASH -+#define CONFIG_IP_NF_SET_IPHASH_MODULE 1 -+#undef CONFIG_IP_NF_SET_NETHASH -+#define CONFIG_IP_NF_SET_NETHASH_MODULE 1 -+#undef CONFIG_IP_NF_SET_IPTREE -+#define CONFIG_IP_NF_SET_IPTREE_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_MAC -+#define CONFIG_IP_NF_MATCH_MAC_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_PKTTYPE -+#define CONFIG_IP_NF_MATCH_PKTTYPE_MODULE 1 -+#define CONFIG_IP_NF_MATCH_MARK 1 -+#define CONFIG_IP_NF_MATCH_MULTIPORT 1 -+#undef CONFIG_IP_NF_MATCH_TOS -+#define CONFIG_IP_NF_MATCH_TOS_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_TIME -+#define CONFIG_IP_NF_MATCH_TIME_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_CONDITION -+#define CONFIG_IP_NF_MATCH_CONDITION_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_RECENT -+#define CONFIG_IP_NF_MATCH_RECENT_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_ECN -+#define CONFIG_IP_NF_MATCH_ECN_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_IPP2P -+#define CONFIG_IP_NF_MATCH_IPP2P_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_DSCP -+#define CONFIG_IP_NF_MATCH_DSCP_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_AH_ESP -+#define CONFIG_IP_NF_MATCH_AH_ESP_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_LENGTH -+#define CONFIG_IP_NF_MATCH_LENGTH_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_TTL -+#define CONFIG_IP_NF_MATCH_TTL_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_TCPMSS -+#define CONFIG_IP_NF_MATCH_TCPMSS_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_HELPER -+#define CONFIG_IP_NF_MATCH_HELPER_MODULE 1 -+#define CONFIG_IP_NF_MATCH_STATE 1 -+#undef CONFIG_IP_NF_MATCH_CONNTRACK -+#define CONFIG_IP_NF_MATCH_CONNTRACK_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_CONNMARK -+#define CONFIG_IP_NF_MATCH_CONNMARK_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_UNCLEAN -+#define CONFIG_IP_NF_MATCH_UNCLEAN_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_STRING -+#define CONFIG_IP_NF_MATCH_STRING_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_OWNER -+#define CONFIG_IP_NF_MATCH_OWNER_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_LAYER7 -+#define CONFIG_IP_NF_MATCH_LAYER7_MODULE 1 -+#undef CONFIG_IP_NF_MATCH_LAYER7_DEBUG -+#define CONFIG_IP_NF_FILTER 1 -+#define CONFIG_IP_NF_TARGET_REJECT 1 -+#undef CONFIG_IP_NF_TARGET_MIRROR -+#define CONFIG_IP_NF_TARGET_MIRROR_MODULE 1 -+#define CONFIG_IP_NF_NAT 1 -+#define CONFIG_IP_NF_NAT_NEEDED 1 -+#define CONFIG_IP_NF_TARGET_MASQUERADE 1 -+#undef CONFIG_IP_NF_TARGET_REDIRECT -+#define CONFIG_IP_NF_TARGET_REDIRECT_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_NETMAP -+#define CONFIG_IP_NF_TARGET_NETMAP_MODULE 1 -+#undef CONFIG_IP_NF_NAT_PPTP -+#define CONFIG_IP_NF_NAT_PPTP_MODULE 1 -+#undef CONFIG_IP_NF_NAT_PROTO_GRE -+#define CONFIG_IP_NF_NAT_PROTO_GRE_MODULE 1 -+#undef CONFIG_IP_NF_NAT_AMANDA -+#define CONFIG_IP_NF_NAT_AMANDA_MODULE 1 -+#undef CONFIG_IP_NF_NAT_H323 -+#define CONFIG_IP_NF_NAT_H323_MODULE 1 -+#undef CONFIG_IP_NF_NAT_RTSP -+#define CONFIG_IP_NF_NAT_RTSP_MODULE 1 -+#undef CONFIG_IP_NF_NAT_MMS -+#define CONFIG_IP_NF_NAT_MMS_MODULE 1 -+#undef CONFIG_IP_NF_NAT_SNMP_BASIC -+#define CONFIG_IP_NF_NAT_SNMP_BASIC_MODULE 1 -+#define CONFIG_IP_NF_NAT_IRC 1 -+#define CONFIG_IP_NF_NAT_FTP 1 -+#undef CONFIG_IP_NF_NAT_TFTP -+#define CONFIG_IP_NF_NAT_TFTP_MODULE 1 -+#define CONFIG_IP_NF_MANGLE 1 -+#undef CONFIG_IP_NF_TARGET_TOS -+#define CONFIG_IP_NF_TARGET_TOS_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_ECN -+#define CONFIG_IP_NF_TARGET_ECN_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_DSCP -+#define CONFIG_IP_NF_TARGET_DSCP_MODULE 1 -+#define CONFIG_IP_NF_TARGET_MARK 1 -+#undef CONFIG_IP_NF_TARGET_IMQ -+#define CONFIG_IP_NF_TARGET_IMQ_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_CONNMARK -+#define CONFIG_IP_NF_TARGET_CONNMARK_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_LOG -+#define CONFIG_IP_NF_TARGET_LOG_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_TTL -+#define CONFIG_IP_NF_TARGET_TTL_MODULE 1 -+#undef CONFIG_IP_NF_TARGET_ULOG -+#define CONFIG_IP_NF_TARGET_ULOG_MODULE 1 -+#define CONFIG_IP_NF_TARGET_TCPMSS 1 -+#undef CONFIG_IP_NF_ARPTABLES -+#define CONFIG_IP_NF_ARPTABLES_MODULE 1 -+#undef CONFIG_IP_NF_ARPFILTER -+#define CONFIG_IP_NF_ARPFILTER_MODULE 1 -+#undef CONFIG_IP_NF_ARP_MANGLE -+#define CONFIG_IP_NF_ARP_MANGLE_MODULE 1 -+ -+/* -+ * IP: Virtual Server Configuration -+ */ -+#undef CONFIG_IP_VS -+#define CONFIG_IP_VS_MODULE 1 -+#undef CONFIG_IP_VS_DEBUG -+#define CONFIG_IP_VS_TAB_BITS (12) -+ -+/* -+ * IPVS scheduler -+ */ -+#undef CONFIG_IP_VS_RR -+#define CONFIG_IP_VS_RR_MODULE 1 -+#undef CONFIG_IP_VS_WRR -+#define CONFIG_IP_VS_WRR_MODULE 1 -+#undef CONFIG_IP_VS_LC -+#define CONFIG_IP_VS_LC_MODULE 1 -+#undef CONFIG_IP_VS_WLC -+#define CONFIG_IP_VS_WLC_MODULE 1 -+#undef CONFIG_IP_VS_LBLC -+#define CONFIG_IP_VS_LBLC_MODULE 1 -+#undef CONFIG_IP_VS_LBLCR -+#define CONFIG_IP_VS_LBLCR_MODULE 1 -+#undef CONFIG_IP_VS_DH -+#define CONFIG_IP_VS_DH_MODULE 1 -+#undef CONFIG_IP_VS_SH -+#define CONFIG_IP_VS_SH_MODULE 1 -+#undef CONFIG_IP_VS_SED -+#define CONFIG_IP_VS_SED_MODULE 1 -+#undef CONFIG_IP_VS_NQ -+#define CONFIG_IP_VS_NQ_MODULE 1 -+ -+/* -+ * IPVS application helper -+ */ -+#undef CONFIG_IP_VS_FTP -+#define CONFIG_IP_VS_FTP_MODULE 1 -+#undef CONFIG_IPV6 -+#define CONFIG_IPV6_MODULE 1 -+ -+/* -+ * IPv6: Netfilter Configuration -+ */ -+#undef CONFIG_IP6_NF_QUEUE -+#define CONFIG_IP6_NF_QUEUE_MODULE 1 -+#undef CONFIG_IP6_NF_IPTABLES -+#define CONFIG_IP6_NF_IPTABLES_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_LIMIT -+#define CONFIG_IP6_NF_MATCH_LIMIT_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_CONDITION -+#define CONFIG_IP6_NF_MATCH_CONDITION_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_MAC -+#define CONFIG_IP6_NF_MATCH_MAC_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_RT -+#undef CONFIG_IP6_NF_MATCH_OPTS -+#undef CONFIG_IP6_NF_MATCH_FRAG -+#undef CONFIG_IP6_NF_MATCH_HL -+#undef CONFIG_IP6_NF_MATCH_MULTIPORT -+#define CONFIG_IP6_NF_MATCH_MULTIPORT_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_OWNER -+#define CONFIG_IP6_NF_MATCH_OWNER_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_MARK -+#define CONFIG_IP6_NF_MATCH_MARK_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_IPV6HEADER -+#undef CONFIG_IP6_NF_MATCH_AHESP -+#undef CONFIG_IP6_NF_MATCH_LENGTH -+#define CONFIG_IP6_NF_MATCH_LENGTH_MODULE 1 -+#undef CONFIG_IP6_NF_MATCH_EUI64 -+#define CONFIG_IP6_NF_MATCH_EUI64_MODULE 1 -+#undef CONFIG_IP6_NF_FILTER -+#define CONFIG_IP6_NF_FILTER_MODULE 1 -+#undef CONFIG_IP6_NF_TARGET_LOG -+#define CONFIG_IP6_NF_TARGET_LOG_MODULE 1 -+#undef CONFIG_IP6_NF_MANGLE -+#define CONFIG_IP6_NF_MANGLE_MODULE 1 -+#undef CONFIG_IP6_NF_TARGET_MARK -+#define CONFIG_IP6_NF_TARGET_MARK_MODULE 1 -+#undef CONFIG_IP6_NF_TARGET_IMQ -+#define CONFIG_IP6_NF_TARGET_IMQ_MODULE 1 -+#undef CONFIG_KHTTPD -+ -+/* -+ * SCTP Configuration (EXPERIMENTAL) -+ */ -+#undef CONFIG_IP_SCTP -+#undef CONFIG_ATM -+#define CONFIG_VLAN_8021Q 1 -+ -+/* -+ * -+ */ -+#undef CONFIG_IPX -+#undef CONFIG_ATALK -+#undef CONFIG_DECNET -+#define CONFIG_BRIDGE 1 -+#undef CONFIG_X25 -+#undef CONFIG_LAPB -+#undef CONFIG_LLC -+#undef CONFIG_NET_DIVERT -+#undef CONFIG_ECONET -+#undef CONFIG_WAN_ROUTER -+#define CONFIG_WAN_ROUTER_MODULE 1 -+#undef CONFIG_NET_FASTROUTE -+#undef CONFIG_NET_HW_FLOWCONTROL -+ -+/* -+ * QoS and/or fair queueing -+ */ -+#define CONFIG_NET_SCHED 1 -+#undef CONFIG_NET_SCH_CBQ -+#define CONFIG_NET_SCH_CBQ_MODULE 1 -+#undef CONFIG_NET_SCH_HTB -+#define CONFIG_NET_SCH_HTB_MODULE 1 -+#undef CONFIG_NET_SCH_CSZ -+#define CONFIG_NET_SCH_CSZ_MODULE 1 -+#undef CONFIG_NET_SCH_HFSC -+#define CONFIG_NET_SCH_HFSC_MODULE 1 -+#undef CONFIG_NET_SCH_PRIO -+#define CONFIG_NET_SCH_PRIO_MODULE 1 -+#undef CONFIG_NET_SCH_RED -+#define CONFIG_NET_SCH_RED_MODULE 1 -+#undef CONFIG_NET_SCH_SFQ -+#define CONFIG_NET_SCH_SFQ_MODULE 1 -+#undef CONFIG_NET_SCH_TEQL -+#define CONFIG_NET_SCH_TEQL_MODULE 1 -+#undef CONFIG_NET_SCH_TBF -+#define CONFIG_NET_SCH_TBF_MODULE 1 -+#undef CONFIG_NET_SCH_GRED -+#define CONFIG_NET_SCH_GRED_MODULE 1 -+#undef CONFIG_NET_SCH_NETEM -+#undef CONFIG_NET_SCH_DSMARK -+#define CONFIG_NET_SCH_DSMARK_MODULE 1 -+#undef CONFIG_NET_SCH_INGRESS -+#define CONFIG_NET_SCH_INGRESS_MODULE 1 -+#define CONFIG_NET_QOS 1 -+#define CONFIG_NET_ESTIMATOR 1 -+#define CONFIG_NET_CLS 1 -+#undef CONFIG_NET_CLS_TCINDEX -+#define CONFIG_NET_CLS_TCINDEX_MODULE 1 -+#undef CONFIG_NET_CLS_ROUTE4 -+#define CONFIG_NET_CLS_ROUTE4_MODULE 1 -+#define CONFIG_NET_CLS_ROUTE 1 -+#undef CONFIG_NET_CLS_FW -+#define CONFIG_NET_CLS_FW_MODULE 1 -+#undef CONFIG_NET_CLS_U32 -+#define CONFIG_NET_CLS_U32_MODULE 1 -+#undef CONFIG_NET_CLS_RSVP -+#define CONFIG_NET_CLS_RSVP_MODULE 1 -+#undef CONFIG_NET_CLS_RSVP6 -+#define CONFIG_NET_CLS_RSVP6_MODULE 1 -+#define CONFIG_NET_CLS_POLICE 1 -+ -+/* -+ * Network testing -+ */ -+#undef CONFIG_NET_PKTGEN -+#define CONFIG_IPSEC_NAT_TRAVERSAL 1 -+ -+/* -+ * Telephony Support -+ */ -+#undef CONFIG_PHONE -+#undef CONFIG_PHONE_IXJ -+#undef CONFIG_PHONE_IXJ_PCMCIA -+ -+/* -+ * ATA/IDE/MFM/RLL support -+ */ -+#undef CONFIG_IDE -+#define CONFIG_IDE_MODULE 1 -+ -+/* -+ * IDE, ATA and ATAPI Block devices -+ */ -+#undef CONFIG_BLK_DEV_IDE -+#define CONFIG_BLK_DEV_IDE_MODULE 1 -+ -+/* -+ * Please see Documentation/ide.txt for help/info on IDE drives -+ */ -+#undef CONFIG_BLK_DEV_HD_IDE -+#undef CONFIG_BLK_DEV_HD -+#undef CONFIG_BLK_DEV_IDE_SATA -+#undef CONFIG_BLK_DEV_IDEDISK -+#define CONFIG_BLK_DEV_IDEDISK_MODULE 1 -+#undef CONFIG_IDEDISK_MULTI_MODE -+#define CONFIG_IDEDISK_STROKE 1 -+#undef CONFIG_BLK_DEV_IDECS -+#undef CONFIG_BLK_DEV_DELKIN -+#undef CONFIG_BLK_DEV_IDECD -+#undef CONFIG_BLK_DEV_IDETAPE -+#undef CONFIG_BLK_DEV_IDEFLOPPY -+#undef CONFIG_BLK_DEV_IDESCSI -+#undef CONFIG_IDE_TASK_IOCTL -+ -+/* -+ * IDE chipset support/bugfixes -+ */ -+#undef CONFIG_BLK_DEV_CMD640 -+#undef CONFIG_BLK_DEV_CMD640_ENHANCED -+#undef CONFIG_BLK_DEV_ISAPNP -+#define CONFIG_BLK_DEV_IDEPCI 1 -+#undef CONFIG_BLK_DEV_GENERIC -+#undef CONFIG_IDEPCI_SHARE_IRQ -+#define CONFIG_BLK_DEV_IDEDMA_PCI 1 -+#define CONFIG_BLK_DEV_OFFBOARD 1 -+#undef CONFIG_BLK_DEV_IDEDMA_FORCED -+#define CONFIG_IDEDMA_PCI_AUTO 1 -+#undef CONFIG_IDEDMA_ONLYDISK -+#define CONFIG_BLK_DEV_IDEDMA 1 -+#undef CONFIG_IDEDMA_PCI_WIP -+#undef CONFIG_BLK_DEV_ADMA100 -+#undef CONFIG_BLK_DEV_AEC62XX -+#undef CONFIG_BLK_DEV_ALI15X3 -+#undef CONFIG_WDC_ALI15X3 -+#undef CONFIG_BLK_DEV_AMD74XX -+#undef CONFIG_AMD74XX_OVERRIDE -+#undef CONFIG_BLK_DEV_ATIIXP -+#undef CONFIG_BLK_DEV_CMD64X -+#undef CONFIG_BLK_DEV_TRIFLEX -+#undef CONFIG_BLK_DEV_CY82C693 -+#undef CONFIG_BLK_DEV_CS5530 -+#undef CONFIG_BLK_DEV_HPT34X -+#undef CONFIG_HPT34X_AUTODMA -+#undef CONFIG_BLK_DEV_HPT366 -+#undef CONFIG_BLK_DEV_PIIX -+#undef CONFIG_BLK_DEV_NS87415 -+#undef CONFIG_BLK_DEV_OPTI621 -+#undef CONFIG_BLK_DEV_PDC202XX_OLD -+#define CONFIG_BLK_DEV_PDC202XX_OLD_MODULE 1 -+#define CONFIG_PDC202XX_BURST 1 -+#undef CONFIG_BLK_DEV_PDC202XX_NEW -+#undef CONFIG_PDC202XX_FORCE -+#undef CONFIG_BLK_DEV_RZ1000 -+#undef CONFIG_BLK_DEV_SC1200 -+#undef CONFIG_BLK_DEV_SVWKS -+#undef CONFIG_BLK_DEV_SIIMAGE -+#undef CONFIG_BLK_DEV_SIS5513 -+#undef CONFIG_BLK_DEV_SLC90E66 -+#undef CONFIG_BLK_DEV_TRM290 -+#undef CONFIG_BLK_DEV_VIA82CXXX -+#undef CONFIG_IDE_CHIPSETS -+#define CONFIG_IDEDMA_AUTO 1 -+#define CONFIG_IDEDMA_IVB 1 -+#undef CONFIG_DMA_NONPCI -+#define CONFIG_BLK_DEV_PDC202XX 1 -+#undef CONFIG_BLK_DEV_ATARAID -+#undef CONFIG_BLK_DEV_ATARAID_PDC -+#undef CONFIG_BLK_DEV_ATARAID_HPT -+#undef CONFIG_BLK_DEV_ATARAID_MEDLEY -+#undef CONFIG_BLK_DEV_ATARAID_SII -+ -+/* -+ * SCSI support -+ */ -+#undef CONFIG_SCSI -+#define CONFIG_SCSI_MODULE 1 -+ -+/* -+ * SCSI support type (disk, tape, CD-ROM) -+ */ -+#undef CONFIG_BLK_DEV_SD -+#define CONFIG_BLK_DEV_SD_MODULE 1 -+#define CONFIG_SD_EXTRA_DEVS (5) -+#undef CONFIG_CHR_DEV_ST -+#undef CONFIG_CHR_DEV_OSST -+#undef CONFIG_BLK_DEV_SR -+#undef CONFIG_CHR_DEV_SG -+#define CONFIG_CHR_DEV_SG_MODULE 1 -+ -+/* -+ * Some SCSI devices (e.g. CD jukebox) support multiple LUNs -+ */ -+#undef CONFIG_SCSI_DEBUG_QUEUES -+#define CONFIG_SCSI_MULTI_LUN 1 -+#undef CONFIG_SCSI_CONSTANTS -+#undef CONFIG_SCSI_LOGGING -+ -+/* -+ * SCSI low-level drivers -+ */ -+#undef CONFIG_BLK_DEV_3W_XXXX_RAID -+#undef CONFIG_SCSI_7000FASST -+#undef CONFIG_SCSI_ACARD -+#undef CONFIG_SCSI_AHA152X -+#undef CONFIG_SCSI_AHA1542 -+#undef CONFIG_SCSI_AHA1740 -+#undef CONFIG_SCSI_AACRAID -+#undef CONFIG_SCSI_AIC7XXX -+#undef CONFIG_SCSI_AIC79XX -+#undef CONFIG_SCSI_AIC7XXX_OLD -+#undef CONFIG_SCSI_DPT_I2O -+#undef CONFIG_SCSI_ADVANSYS -+#undef CONFIG_SCSI_IN2000 -+#undef CONFIG_SCSI_AM53C974 -+#undef CONFIG_SCSI_MEGARAID -+#undef CONFIG_SCSI_MEGARAID2 -+#undef CONFIG_SCSI_SATA -+#undef CONFIG_SCSI_SATA_AHCI -+#undef CONFIG_SCSI_SATA_SVW -+#undef CONFIG_SCSI_ATA_PIIX -+#undef CONFIG_SCSI_SATA_NV -+#undef CONFIG_SCSI_SATA_QSTOR -+#undef CONFIG_SCSI_SATA_PROMISE -+#undef CONFIG_SCSI_SATA_SX4 -+#undef CONFIG_SCSI_SATA_SIL -+#undef CONFIG_SCSI_SATA_SIS -+#undef CONFIG_SCSI_SATA_ULI -+#undef CONFIG_SCSI_SATA_VIA -+#undef CONFIG_SCSI_SATA_VITESSE -+#undef CONFIG_SCSI_BUSLOGIC -+#undef CONFIG_SCSI_CPQFCTS -+#undef CONFIG_SCSI_DMX3191D -+#undef CONFIG_SCSI_DTC3280 -+#undef CONFIG_SCSI_EATA -+#undef CONFIG_SCSI_EATA_DMA -+#undef CONFIG_SCSI_EATA_PIO -+#undef CONFIG_SCSI_FUTURE_DOMAIN -+#undef CONFIG_SCSI_GDTH -+#undef CONFIG_SCSI_GENERIC_NCR5380 -+#undef CONFIG_SCSI_INITIO -+#undef CONFIG_SCSI_INIA100 -+#undef CONFIG_SCSI_PPA -+#undef CONFIG_SCSI_IMM -+#undef CONFIG_SCSI_NCR53C406A -+#undef CONFIG_SCSI_NCR53C7xx -+#undef CONFIG_SCSI_SYM53C8XX_2 -+#undef CONFIG_SCSI_NCR53C8XX -+#undef CONFIG_SCSI_SYM53C8XX -+#undef CONFIG_SCSI_PAS16 -+#undef CONFIG_SCSI_PCI2000 -+#undef CONFIG_SCSI_PCI2220I -+#undef CONFIG_SCSI_PSI240I -+#undef CONFIG_SCSI_QLOGIC_FAS -+#undef CONFIG_SCSI_QLOGIC_ISP -+#undef CONFIG_SCSI_QLOGIC_FC -+#undef CONFIG_SCSI_QLOGIC_1280 -+#undef CONFIG_SCSI_SIM710 -+#undef CONFIG_SCSI_SYM53C416 -+#undef CONFIG_SCSI_DC390T -+#undef CONFIG_SCSI_T128 -+#undef CONFIG_SCSI_U14_34F -+#undef CONFIG_SCSI_NSP32 -+#undef CONFIG_SCSI_DEBUG -+ -+/* -+ * PCMCIA SCSI adapter support -+ */ -+#undef CONFIG_SCSI_PCMCIA -+ -+/* -+ * Fusion MPT device support -+ */ -+#undef CONFIG_FUSION -+#undef CONFIG_FUSION_BOOT -+#undef CONFIG_FUSION_ISENSE -+#undef CONFIG_FUSION_CTL -+#undef CONFIG_FUSION_LAN -+ -+/* -+ * IEEE 1394 (FireWire) support (EXPERIMENTAL) -+ */ -+#undef CONFIG_IEEE1394 -+ -+/* -+ * I2O device support -+ */ -+#undef CONFIG_I2O -+#undef CONFIG_I2O_PCI -+#undef CONFIG_I2O_BLOCK -+#undef CONFIG_I2O_LAN -+#undef CONFIG_I2O_SCSI -+#undef CONFIG_I2O_PROC -+ -+/* -+ * Network device support -+ */ -+#define CONFIG_NETDEVICES 1 -+#define CONFIG_HND 1 -+ -+/* -+ * ARCnet devices -+ */ -+#undef CONFIG_ARCNET -+#undef CONFIG_DUMMY -+#undef CONFIG_BONDING -+#undef CONFIG_EQUALIZER -+#undef CONFIG_IMQ -+#define CONFIG_IMQ_MODULE 1 -+#undef CONFIG_TUN -+#define CONFIG_TUN_MODULE 1 -+#define CONFIG_NET_RANDOM 1 -+#undef CONFIG_ETHERTAP -+ -+/* -+ * Ethernet (10 or 100Mbit) -+ */ -+#define CONFIG_NET_ETHERNET 1 -+#undef CONFIG_SUNLANCE -+#undef CONFIG_HAPPYMEAL -+#undef CONFIG_SUNBMAC -+#undef CONFIG_SUNQE -+#undef CONFIG_SUNGEM -+#undef CONFIG_NET_VENDOR_3COM -+#undef CONFIG_LANCE -+#undef CONFIG_NET_VENDOR_SMC -+#undef CONFIG_NET_VENDOR_RACAL -+#undef CONFIG_HP100 -+#undef CONFIG_NET_ISA -+#define CONFIG_NET_PCI 1 -+#undef CONFIG_PCNET32 -+#undef CONFIG_AMD8111_ETH -+#undef CONFIG_ADAPTEC_STARFIRE -+#undef CONFIG_APRICOT -+#define CONFIG_B44 1 -+#undef CONFIG_CS89x0 -+#undef CONFIG_TULIP -+#undef CONFIG_DE4X5 -+#undef CONFIG_DGRS -+#undef CONFIG_DM9102 -+#undef CONFIG_EEPRO100 -+#undef CONFIG_EEPRO100_PIO -+#undef CONFIG_E100 -+#undef CONFIG_LNE390 -+#undef CONFIG_FEALNX -+#undef CONFIG_NATSEMI -+#undef CONFIG_NE2K_PCI -+#undef CONFIG_FORCEDETH -+#undef CONFIG_NE3210 -+#undef CONFIG_ES3210 -+#undef CONFIG_8139CP -+#undef CONFIG_8139TOO -+#undef CONFIG_8139TOO_PIO -+#undef CONFIG_8139TOO_TUNE_TWISTER -+#undef CONFIG_8139TOO_8129 -+#undef CONFIG_8139_OLD_RX_RESET -+#undef CONFIG_SIS900 -+#undef CONFIG_EPIC100 -+#undef CONFIG_SUNDANCE -+#undef CONFIG_SUNDANCE_MMIO -+#undef CONFIG_TLAN -+#undef CONFIG_VIA_RHINE -+#undef CONFIG_VIA_RHINE_MMIO -+#undef CONFIG_WINBOND_840 -+#undef CONFIG_LAN_SAA9730 -+#undef CONFIG_NET_POCKET -+ -+/* -+ * Ethernet (1000 Mbit) -+ */ -+#undef CONFIG_ACENIC -+#undef CONFIG_DL2K -+#undef CONFIG_E1000 -+#undef CONFIG_MYRI_SBUS -+#undef CONFIG_NS83820 -+#undef CONFIG_HAMACHI -+#undef CONFIG_YELLOWFIN -+#undef CONFIG_R8169 -+#undef CONFIG_SK98LIN -+#undef CONFIG_TIGON3 -+#undef CONFIG_FDDI -+#undef CONFIG_HIPPI -+#undef CONFIG_PLIP -+#undef CONFIG_PPP -+#define CONFIG_PPP_MODULE 1 -+#undef CONFIG_PPP_MULTILINK -+#define CONFIG_PPP_FILTER 1 -+#undef CONFIG_PPP_ASYNC -+#define CONFIG_PPP_ASYNC_MODULE 1 -+#undef CONFIG_PPP_SYNC_TTY -+#undef CONFIG_PPP_DEFLATE -+#define CONFIG_PPP_DEFLATE_MODULE 1 -+#undef CONFIG_PPP_BSDCOMP -+#define CONFIG_PPP_BSDCOMP_MODULE 1 -+#undef CONFIG_PPP_MPPE_MPPC -+#define CONFIG_PPP_MPPE_MPPC_MODULE 1 -+#undef CONFIG_PPPOE -+#define CONFIG_PPPOE_MODULE 1 -+#undef CONFIG_SLIP -+ -+/* -+ * Wireless LAN (non-hamradio) -+ */ -+#define CONFIG_NET_RADIO 1 -+#undef CONFIG_STRIP -+#undef CONFIG_WAVELAN -+#undef CONFIG_ARLAN -+#undef CONFIG_AIRONET4500 -+#undef CONFIG_AIRONET4500_NONCS -+#undef CONFIG_AIRONET4500_PROC -+#undef CONFIG_AIRO -+#undef CONFIG_HERMES -+#undef CONFIG_WL -+#define CONFIG_WL_MODULE 1 -+#undef CONFIG_PLX_HERMES -+#undef CONFIG_TMD_HERMES -+#undef CONFIG_PCI_HERMES -+ -+/* -+ * Wireless Pcmcia cards support -+ */ -+#undef CONFIG_PCMCIA_HERMES -+#undef CONFIG_AIRO_CS -+#undef CONFIG_PCMCIA_ATMEL -+ -+/* -+ * Prism54 PCI/PCMCIA GT/Duette Driver - 802.11(a/b/g) -+ */ -+#undef CONFIG_PRISM54 -+#define CONFIG_NET_WIRELESS 1 -+ -+/* -+ * Token Ring devices -+ */ -+#undef CONFIG_TR -+#undef CONFIG_NET_FC -+#undef CONFIG_RCPCI -+#undef CONFIG_SHAPER -+#define CONFIG_SHAPER_MODULE 1 -+ -+/* -+ * Wan interfaces -+ */ -+#undef CONFIG_WAN -+ -+/* -+ * PCMCIA network device support -+ */ -+#undef CONFIG_NET_PCMCIA -+ -+/* -+ * Amateur Radio support -+ */ -+#define CONFIG_HAMRADIO 1 -+ -+/* -+ * Packet Radio protocols -+ */ -+#undef CONFIG_AX25 -+#define CONFIG_AX25_MODULE 1 -+#undef CONFIG_AX25_DAMA_SLAVE -+#undef CONFIG_NETROM -+#undef CONFIG_ROSE -+ -+/* -+ * AX.25 network device drivers -+ */ -+ -+/* -+ * AX.25 network device drivers -+ */ -+#undef CONFIG_MKISS -+#define CONFIG_MKISS_MODULE 1 -+#undef CONFIG_6PACK -+#undef CONFIG_BPQETHER -+#undef CONFIG_SCC_DELAY -+#undef CONFIG_SCC_TRXECHO -+#undef CONFIG_BAYCOM_SER_FDX -+#undef CONFIG_BAYCOM_SER_HDX -+#undef CONFIG_BAYCOM_PAR -+#undef CONFIG_BAYCOM_EPP -+#undef CONFIG_SOUNDMODEM -+#undef CONFIG_YAM -+ -+/* -+ * IrDA (infrared) support -+ */ -+#undef CONFIG_IRDA -+ -+/* -+ * ISDN subsystem -+ */ -+#undef CONFIG_ISDN -+ -+/* -+ * Input core support -+ */ -+#undef CONFIG_INPUT -+#undef CONFIG_INPUT_KEYBDEV -+#undef CONFIG_INPUT_MOUSEDEV -+#undef CONFIG_INPUT_JOYDEV -+#undef CONFIG_INPUT_EVDEV -+#undef CONFIG_INPUT_UINPUT -+ -+/* -+ * Character devices -+ */ -+#undef CONFIG_VT -+#define CONFIG_SERIAL 1 -+#define CONFIG_SERIAL_CONSOLE 1 -+#undef CONFIG_SERIAL_EXTENDED -+#undef CONFIG_SERIAL_NONSTANDARD -+#define CONFIG_UNIX98_PTYS 1 -+#define CONFIG_UNIX98_PTY_COUNT (128) -+#undef CONFIG_PRINTER -+#define CONFIG_PRINTER_MODULE 1 -+#undef CONFIG_LP_CONSOLE -+#undef CONFIG_PPDEV -+#define CONFIG_PPDEV_MODULE 1 -+#undef CONFIG_TIPAR -+ -+/* -+ * I2C support -+ */ -+#undef CONFIG_I2C -+ -+/* -+ * Mice -+ */ -+#undef CONFIG_BUSMOUSE -+#undef CONFIG_MOUSE -+ -+/* -+ * Joysticks -+ */ -+#undef CONFIG_INPUT_GAMEPORT -+ -+/* -+ * Input core support is needed for gameports -+ */ -+ -+/* -+ * Input core support is needed for joysticks -+ */ -+#undef CONFIG_QIC02_TAPE -+#undef CONFIG_IPMI_HANDLER -+#undef CONFIG_IPMI_PANIC_EVENT -+#undef CONFIG_IPMI_DEVICE_INTERFACE -+#undef CONFIG_IPMI_KCS -+#undef CONFIG_IPMI_WATCHDOG -+ -+/* -+ * Watchdog Cards -+ */ -+#define CONFIG_WATCHDOG 1 -+#define CONFIG_WATCHDOG_NOWAYOUT 1 -+#undef CONFIG_ACQUIRE_WDT -+#undef CONFIG_ADVANTECH_WDT -+#undef CONFIG_ALIM1535_WDT -+#undef CONFIG_ALIM7101_WDT -+#undef CONFIG_SC520_WDT -+#undef CONFIG_PCWATCHDOG -+#undef CONFIG_EUROTECH_WDT -+#undef CONFIG_IB700_WDT -+#undef CONFIG_WAFER_WDT -+#undef CONFIG_I810_TCO -+#undef CONFIG_MIXCOMWD -+#undef CONFIG_60XX_WDT -+#undef CONFIG_SC1200_WDT -+#undef CONFIG_SCx200_WDT -+#undef CONFIG_SOFT_WATCHDOG -+#define CONFIG_SOFT_WATCHDOG_MODULE 1 -+#undef CONFIG_W83877F_WDT -+#undef CONFIG_WDT -+#undef CONFIG_WDTPCI -+#undef CONFIG_MACHZ_WDT -+#undef CONFIG_SCx200 -+#undef CONFIG_SCx200_GPIO -+#undef CONFIG_AMD_PM768 -+#undef CONFIG_NVRAM -+#undef CONFIG_RTC -+#undef CONFIG_DTLK -+#undef CONFIG_R3964 -+#undef CONFIG_APPLICOM -+ -+/* -+ * Ftape, the floppy tape device driver -+ */ -+#undef CONFIG_FTAPE -+#undef CONFIG_AGP -+ -+/* -+ * Direct Rendering Manager (XFree86 DRI support) -+ */ -+#undef CONFIG_DRM -+ -+/* -+ * PCMCIA character devices -+ */ -+#undef CONFIG_PCMCIA_SERIAL_CS -+#define CONFIG_PCMCIA_SERIAL_CS_MODULE 1 -+#undef CONFIG_SYNCLINK_CS -+ -+/* -+ * File systems -+ */ -+#undef CONFIG_QUOTA -+#undef CONFIG_QFMT_V2 -+#undef CONFIG_AUTOFS_FS -+#undef CONFIG_AUTOFS4_FS -+#undef CONFIG_REISERFS_FS -+#undef CONFIG_REISERFS_CHECK -+#undef CONFIG_REISERFS_PROC_INFO -+#undef CONFIG_ADFS_FS -+#undef CONFIG_ADFS_FS_RW -+#undef CONFIG_AFFS_FS -+#undef CONFIG_HFS_FS -+#undef CONFIG_HFSPLUS_FS -+#define CONFIG_HFSPLUS_FS_MODULE 1 -+#undef CONFIG_BEFS_FS -+#undef CONFIG_BEFS_DEBUG -+#undef CONFIG_BFS_FS -+#undef CONFIG_EXT3_FS -+#define CONFIG_EXT3_FS_MODULE 1 -+#undef CONFIG_JBD -+#define CONFIG_JBD_MODULE 1 -+#undef CONFIG_JBD_DEBUG -+#undef CONFIG_FAT_FS -+#define CONFIG_FAT_FS_MODULE 1 -+#undef CONFIG_MSDOS_FS -+#undef CONFIG_UMSDOS_FS -+#undef CONFIG_VFAT_FS -+#define CONFIG_VFAT_FS_MODULE 1 -+#undef CONFIG_EFS_FS -+#undef CONFIG_JFFS_FS -+#define CONFIG_JFFS2_FS 1 -+#define CONFIG_JFFS2_FS_DEBUG (0) -+#undef CONFIG_JFFS2_BBC_ARMLIB -+#undef CONFIG_JFFS2_BBC_LZO -+#define CONFIG_JFFS2_BBC_LZARI 1 -+#undef CONFIG_JFFS2_BBC_LZHD -+#undef CONFIG_JFFS2_BBC_LZSS -+#undef CONFIG_CRAMFS -+#define CONFIG_SQUASHFS 1 -+#undef CONFIG_SQUASHFS_EMBEDDED -+#define CONFIG_TMPFS 1 -+#define CONFIG_RAMFS 1 -+#undef CONFIG_ISO9660_FS -+#define CONFIG_ISO9660_FS_MODULE 1 -+#define CONFIG_JOLIET 1 -+#undef CONFIG_ZISOFS -+#undef CONFIG_JFS_FS -+#undef CONFIG_JFS_DEBUG -+#undef CONFIG_JFS_STATISTICS -+#undef CONFIG_MINIX_FS -+#define CONFIG_MINIX_FS_MODULE 1 -+#undef CONFIG_VXFS_FS -+#undef CONFIG_NTFS_FS -+#undef CONFIG_NTFS_RW -+#undef CONFIG_HPFS_FS -+#define CONFIG_PROC_FS 1 -+#define CONFIG_DEVFS_FS 1 -+#define CONFIG_DEVFS_MOUNT 1 -+#undef CONFIG_DEVFS_DEBUG -+#define CONFIG_DEVPTS_FS 1 -+#undef CONFIG_QNX4FS_FS -+#undef CONFIG_QNX4FS_RW -+#undef CONFIG_ROMFS_FS -+#undef CONFIG_EXT2_FS -+#define CONFIG_EXT2_FS_MODULE 1 -+#undef CONFIG_SYSV_FS -+#undef CONFIG_UDF_FS -+#undef CONFIG_UDF_RW -+#undef CONFIG_UFS_FS -+#undef CONFIG_UFS_FS_WRITE -+#undef CONFIG_XFS_FS -+#define CONFIG_XFS_FS_MODULE 1 -+#undef CONFIG_XFS_QUOTA -+#undef CONFIG_XFS_RT -+#undef CONFIG_XFS_TRACE -+#undef CONFIG_XFS_DEBUG -+ -+/* -+ * Network File Systems -+ */ -+#undef CONFIG_CODA_FS -+#undef CONFIG_INTERMEZZO_FS -+#undef CONFIG_NFS_FS -+#define CONFIG_NFS_FS_MODULE 1 -+#define CONFIG_NFS_V3 1 -+#undef CONFIG_NFS_DIRECTIO -+#undef CONFIG_ROOT_NFS -+#undef CONFIG_NFSD -+#undef CONFIG_NFSD_V3 -+#undef CONFIG_NFSD_TCP -+#undef CONFIG_SUNRPC -+#define CONFIG_SUNRPC_MODULE 1 -+#undef CONFIG_LOCKD -+#define CONFIG_LOCKD_MODULE 1 -+#define CONFIG_LOCKD_V4 1 -+#undef CONFIG_CIFS -+#define CONFIG_CIFS_MODULE 1 -+#undef CONFIG_CIFS_STATS -+#define CONFIG_CIFS_POSIX 1 -+#undef CONFIG_SMB_FS -+#undef CONFIG_NCP_FS -+#undef CONFIG_NCPFS_PACKET_SIGNING -+#undef CONFIG_NCPFS_IOCTL_LOCKING -+#undef CONFIG_NCPFS_STRONG -+#undef CONFIG_NCPFS_NFS_NS -+#undef CONFIG_NCPFS_OS2_NS -+#undef CONFIG_NCPFS_SMALLDOS -+#undef CONFIG_NCPFS_NLS -+#undef CONFIG_NCPFS_EXTRAS -+#undef CONFIG_ZISOFS_FS -+ -+/* -+ * Partition Types -+ */ -+#define CONFIG_PARTITION_ADVANCED 1 -+#undef CONFIG_ACORN_PARTITION -+#undef CONFIG_OSF_PARTITION -+#undef CONFIG_AMIGA_PARTITION -+#undef CONFIG_ATARI_PARTITION -+#define CONFIG_MAC_PARTITION 1 -+#define CONFIG_MSDOS_PARTITION 1 -+#undef CONFIG_BSD_DISKLABEL -+#undef CONFIG_MINIX_SUBPARTITION -+#undef CONFIG_SOLARIS_X86_PARTITION -+#undef CONFIG_UNIXWARE_DISKLABEL -+#undef CONFIG_LDM_PARTITION -+#undef CONFIG_SGI_PARTITION -+#undef CONFIG_ULTRIX_PARTITION -+#undef CONFIG_SUN_PARTITION -+#undef CONFIG_EFI_PARTITION -+#undef CONFIG_SMB_NLS -+#define CONFIG_NLS 1 -+ -+/* -+ * Native Language Support -+ */ -+#define CONFIG_NLS_DEFAULT "iso8859-1" -+#undef CONFIG_NLS_CODEPAGE_437 -+#undef CONFIG_NLS_CODEPAGE_737 -+#undef CONFIG_NLS_CODEPAGE_775 -+#undef CONFIG_NLS_CODEPAGE_850 -+#undef CONFIG_NLS_CODEPAGE_852 -+#undef CONFIG_NLS_CODEPAGE_855 -+#undef CONFIG_NLS_CODEPAGE_857 -+#undef CONFIG_NLS_CODEPAGE_860 -+#undef CONFIG_NLS_CODEPAGE_861 -+#undef CONFIG_NLS_CODEPAGE_862 -+#undef CONFIG_NLS_CODEPAGE_863 -+#undef CONFIG_NLS_CODEPAGE_864 -+#undef CONFIG_NLS_CODEPAGE_865 -+#undef CONFIG_NLS_CODEPAGE_866 -+#undef CONFIG_NLS_CODEPAGE_869 -+#undef CONFIG_NLS_CODEPAGE_936 -+#undef CONFIG_NLS_CODEPAGE_950 -+#undef CONFIG_NLS_CODEPAGE_932 -+#undef CONFIG_NLS_CODEPAGE_949 -+#undef CONFIG_NLS_CODEPAGE_874 -+#undef CONFIG_NLS_ISO8859_8 -+#undef CONFIG_NLS_CODEPAGE_1250 -+#undef CONFIG_NLS_CODEPAGE_1251 -+#undef CONFIG_NLS_ISO8859_1 -+#undef CONFIG_NLS_ISO8859_2 -+#undef CONFIG_NLS_ISO8859_3 -+#undef CONFIG_NLS_ISO8859_4 -+#undef CONFIG_NLS_ISO8859_5 -+#undef CONFIG_NLS_ISO8859_6 -+#undef CONFIG_NLS_ISO8859_7 -+#undef CONFIG_NLS_ISO8859_9 -+#undef CONFIG_NLS_ISO8859_13 -+#undef CONFIG_NLS_ISO8859_14 -+#undef CONFIG_NLS_ISO8859_15 -+#undef CONFIG_NLS_KOI8_R -+#undef CONFIG_NLS_KOI8_U -+#undef CONFIG_NLS_UTF8 -+ -+/* -+ * Multimedia devices -+ */ -+#undef CONFIG_VIDEO_DEV -+#define CONFIG_VIDEO_DEV_MODULE 1 -+ -+/* -+ * Video For Linux -+ */ -+#define CONFIG_VIDEO_PROC_FS 1 -+#undef CONFIG_I2C_PARPORT -+ -+/* -+ * Video Adapters -+ */ -+#undef CONFIG_VIDEO_BT848 -+#undef CONFIG_VIDEO_PMS -+#undef CONFIG_VIDEO_BWQCAM -+#undef CONFIG_VIDEO_CQCAM -+#undef CONFIG_VIDEO_CPIA -+#undef CONFIG_VIDEO_SAA5249 -+#undef CONFIG_TUNER_3036 -+#undef CONFIG_VIDEO_STRADIS -+#undef CONFIG_VIDEO_ZORAN -+#undef CONFIG_VIDEO_ZORAN_BUZ -+#undef CONFIG_VIDEO_ZORAN_DC10 -+#undef CONFIG_VIDEO_ZORAN_LML33 -+#undef CONFIG_VIDEO_ZR36120 -+#undef CONFIG_VIDEO_MEYE -+ -+/* -+ * Radio Adapters -+ */ -+#undef CONFIG_RADIO_GEMTEK_PCI -+#undef CONFIG_RADIO_MAXIRADIO -+#undef CONFIG_RADIO_MAESTRO -+#undef CONFIG_RADIO_MIROPCM20 -+ -+/* -+ * Sound -+ */ -+#undef CONFIG_SOUND -+#define CONFIG_SOUND_MODULE 1 -+#undef CONFIG_SOUND_ALI5455 -+#undef CONFIG_SOUND_BT878 -+#undef CONFIG_SOUND_CMPCI -+#undef CONFIG_SOUND_EMU10K1 -+#undef CONFIG_MIDI_EMU10K1 -+#undef CONFIG_SOUND_FUSION -+#undef CONFIG_SOUND_CS4281 -+#undef CONFIG_SOUND_ES1370 -+#undef CONFIG_SOUND_ES1371 -+#undef CONFIG_SOUND_ESSSOLO1 -+#undef CONFIG_SOUND_MAESTRO -+#undef CONFIG_SOUND_MAESTRO3 -+#undef CONFIG_SOUND_FORTE -+#undef CONFIG_SOUND_ICH -+#undef CONFIG_SOUND_RME96XX -+#undef CONFIG_SOUND_SONICVIBES -+#undef CONFIG_SOUND_TRIDENT -+#undef CONFIG_SOUND_MSNDCLAS -+#undef CONFIG_SOUND_MSNDPIN -+#undef CONFIG_SOUND_VIA82CXXX -+#undef CONFIG_MIDI_VIA82CXXX -+#undef CONFIG_SOUND_OSS -+#undef CONFIG_SOUND_TVMIXER -+#undef CONFIG_SOUND_AD1980 -+#undef CONFIG_SOUND_WM97XX -+ -+/* -+ * USB support -+ */ -+#undef CONFIG_USB -+#define CONFIG_USB_MODULE 1 -+#undef CONFIG_USB_DEBUG -+ -+/* -+ * Miscellaneous USB options -+ */ -+#define CONFIG_USB_DEVICEFS 1 -+#undef CONFIG_USB_BANDWIDTH -+ -+/* -+ * USB Host Controller Drivers -+ */ -+#undef CONFIG_USB_EHCI_HCD -+#define CONFIG_USB_EHCI_HCD_MODULE 1 -+#undef CONFIG_USB_UHCI -+#undef CONFIG_USB_UHCI_ALT -+#define CONFIG_USB_UHCI_ALT_MODULE 1 -+#undef CONFIG_USB_OHCI -+#define CONFIG_USB_OHCI_MODULE 1 -+ -+/* -+ * USB Device Class drivers -+ */ -+#undef CONFIG_USB_AUDIO -+#define CONFIG_USB_AUDIO_MODULE 1 -+#undef CONFIG_USB_EMI26 -+ -+/* -+ * USB Bluetooth can only be used with disabled Bluetooth subsystem -+ */ -+#undef CONFIG_USB_MIDI -+#undef CONFIG_USB_STORAGE -+#define CONFIG_USB_STORAGE_MODULE 1 -+#undef CONFIG_USB_STORAGE_DEBUG -+#define CONFIG_USB_STORAGE_DATAFAB 1 -+#define CONFIG_USB_STORAGE_FREECOM 1 -+#undef CONFIG_USB_STORAGE_ISD200 -+#define CONFIG_USB_STORAGE_DPCM 1 -+#define CONFIG_USB_STORAGE_HP8200e 1 -+#define CONFIG_USB_STORAGE_SDDR09 1 -+#define CONFIG_USB_STORAGE_SDDR55 1 -+#define CONFIG_USB_STORAGE_JUMPSHOT 1 -+#undef CONFIG_USB_ACM -+#define CONFIG_USB_ACM_MODULE 1 -+#undef CONFIG_USB_PRINTER -+#define CONFIG_USB_PRINTER_MODULE 1 -+ -+/* -+ * USB Human Interface Devices (HID) -+ */ -+#undef CONFIG_USB_HID -+ -+/* -+ * Input core support is needed for USB HID input layer or HIDBP support -+ */ -+#undef CONFIG_USB_HIDINPUT -+#undef CONFIG_USB_HIDDEV -+#undef CONFIG_USB_KBD -+#undef CONFIG_USB_MOUSE -+#undef CONFIG_USB_AIPTEK -+#undef CONFIG_USB_WACOM -+#undef CONFIG_USB_KBTAB -+#undef CONFIG_USB_POWERMATE -+ -+/* -+ * USB Imaging devices -+ */ -+#undef CONFIG_USB_DC2XX -+#undef CONFIG_USB_MDC800 -+#undef CONFIG_USB_SCANNER -+#undef CONFIG_USB_MICROTEK -+#undef CONFIG_USB_HPUSBSCSI -+ -+/* -+ * USB Multimedia devices -+ */ -+#undef CONFIG_USB_IBMCAM -+#undef CONFIG_USB_KONICAWC -+#undef CONFIG_USB_OV511 -+#undef CONFIG_USB_PWC -+#define CONFIG_USB_PWC_MODULE 1 -+#undef CONFIG_USB_SE401 -+#undef CONFIG_USB_STV680 -+#undef CONFIG_USB_W9968CF -+#undef CONFIG_USB_VICAM -+#undef CONFIG_USB_DSBR -+#undef CONFIG_USB_DABUSB -+ -+/* -+ * USB Network adaptors -+ */ -+#undef CONFIG_USB_PEGASUS -+#undef CONFIG_USB_RTL8150 -+#undef CONFIG_USB_KAWETH -+#undef CONFIG_USB_CATC -+#undef CONFIG_USB_CDCETHER -+#undef CONFIG_USB_USBNET -+ -+/* -+ * USB port drivers -+ */ -+#undef CONFIG_USB_USS720 -+ -+/* -+ * USB Serial Converter support -+ */ -+#undef CONFIG_USB_SERIAL -+#define CONFIG_USB_SERIAL_MODULE 1 -+#undef CONFIG_USB_SERIAL_DEBUG -+#define CONFIG_USB_SERIAL_GENERIC 1 -+#undef CONFIG_USB_SERIAL_BELKIN -+#define CONFIG_USB_SERIAL_BELKIN_MODULE 1 -+#undef CONFIG_USB_SERIAL_WHITEHEAT -+#undef CONFIG_USB_SERIAL_DIGI_ACCELEPORT -+#undef CONFIG_USB_SERIAL_EMPEG -+#undef CONFIG_USB_SERIAL_FTDI_SIO -+#define CONFIG_USB_SERIAL_FTDI_SIO_MODULE 1 -+#undef CONFIG_USB_SERIAL_VISOR -+#define CONFIG_USB_SERIAL_VISOR_MODULE 1 -+#undef CONFIG_USB_SERIAL_IPAQ -+#undef CONFIG_USB_SERIAL_IR -+#undef CONFIG_USB_SERIAL_EDGEPORT -+#undef CONFIG_USB_SERIAL_EDGEPORT_TI -+#undef CONFIG_USB_SERIAL_KEYSPAN_PDA -+#undef CONFIG_USB_SERIAL_KEYSPAN -+#undef CONFIG_USB_SERIAL_MCT_U232 -+#define CONFIG_USB_SERIAL_MCT_U232_MODULE 1 -+#undef CONFIG_USB_SERIAL_KLSI -+#undef CONFIG_USB_SERIAL_KOBIL_SCT -+#undef CONFIG_USB_SERIAL_PL2303 -+#define CONFIG_USB_SERIAL_PL2303_MODULE 1 -+#undef CONFIG_USB_SERIAL_CYBERJACK -+#undef CONFIG_USB_SERIAL_XIRCOM -+#undef CONFIG_USB_SERIAL_OMNINET -+ -+/* -+ * USB Miscellaneous drivers -+ */ -+#undef CONFIG_USB_RIO500 -+#undef CONFIG_USB_AUERSWALD -+#undef CONFIG_USB_TIGL -+#undef CONFIG_USB_BRLVGER -+#undef CONFIG_USB_LCD -+ -+/* -+ * Support for USB gadgets -+ */ -+#undef CONFIG_USB_GADGET -+ -+/* -+ * Bluetooth support -+ */ -+#undef CONFIG_BLUEZ -+#define CONFIG_BLUEZ_MODULE 1 -+#undef CONFIG_BLUEZ_L2CAP -+#define CONFIG_BLUEZ_L2CAP_MODULE 1 -+#undef CONFIG_BLUEZ_SCO -+#define CONFIG_BLUEZ_SCO_MODULE 1 -+#undef CONFIG_BLUEZ_RFCOMM -+#define CONFIG_BLUEZ_RFCOMM_MODULE 1 -+#define CONFIG_BLUEZ_RFCOMM_TTY 1 -+#undef CONFIG_BLUEZ_BNEP -+#define CONFIG_BLUEZ_BNEP_MODULE 1 -+#define CONFIG_BLUEZ_BNEP_MC_FILTER 1 -+#define CONFIG_BLUEZ_BNEP_PROTO_FILTER 1 -+ -+/* -+ * Bluetooth device drivers -+ */ -+#undef CONFIG_BLUEZ_HCIUSB -+#define CONFIG_BLUEZ_HCIUSB_MODULE 1 -+#define CONFIG_BLUEZ_HCIUSB_SCO 1 -+#undef CONFIG_BLUEZ_HCIUART -+#define CONFIG_BLUEZ_HCIUART_MODULE 1 -+#define CONFIG_BLUEZ_HCIUART_H4 1 -+#define CONFIG_BLUEZ_HCIUART_BCSP 1 -+#define CONFIG_BLUEZ_HCIUART_BCSP_TXCRC 1 -+#undef CONFIG_BLUEZ_HCIBFUSB -+#undef CONFIG_BLUEZ_HCIDTL1 -+#undef CONFIG_BLUEZ_HCIBT3C -+#undef CONFIG_BLUEZ_HCIBLUECARD -+#undef CONFIG_BLUEZ_HCIBTUART -+#undef CONFIG_BLUEZ_HCIVHCI -+ -+/* -+ * Kernel hacking -+ */ -+#define CONFIG_CROSSCOMPILE 1 -+#undef CONFIG_RUNTIME_DEBUG -+#undef CONFIG_REMOTE_DEBUG -+#undef CONFIG_GDB_CONSOLE -+#undef CONFIG_DEBUG_INFO -+#define CONFIG_MAGIC_SYSRQ 1 -+#undef CONFIG_MIPS_UNCACHED -+#define CONFIG_LOG_BUF_SHIFT (0) -+ -+/* -+ * Cryptographic options -+ */ -+#define CONFIG_CRYPTO 1 -+#define CONFIG_CRYPTO_HMAC 1 -+#undef CONFIG_CRYPTO_NULL -+#undef CONFIG_CRYPTO_MD4 -+#undef CONFIG_CRYPTO_MD5 -+#define CONFIG_CRYPTO_MD5_MODULE 1 -+#undef CONFIG_CRYPTO_SHA1 -+#define CONFIG_CRYPTO_SHA1_MODULE 1 -+#undef CONFIG_CRYPTO_SHA256 -+#undef CONFIG_CRYPTO_SHA512 -+#undef CONFIG_CRYPTO_WP512 -+#undef CONFIG_CRYPTO_DES -+#define CONFIG_CRYPTO_DES_MODULE 1 -+#undef CONFIG_CRYPTO_BLOWFISH -+#undef CONFIG_CRYPTO_TWOFISH -+#undef CONFIG_CRYPTO_SERPENT -+#undef CONFIG_CRYPTO_AES -+#define CONFIG_CRYPTO_AES_MODULE 1 -+#undef CONFIG_CRYPTO_CAST5 -+#undef CONFIG_CRYPTO_CAST6 -+#undef CONFIG_CRYPTO_TEA -+#undef CONFIG_CRYPTO_KHAZAD -+#undef CONFIG_CRYPTO_ANUBIS -+#undef CONFIG_CRYPTO_ARC4 -+#define CONFIG_CRYPTO_ARC4_MODULE 1 -+#undef CONFIG_CRYPTO_DEFLATE -+#define CONFIG_CRYPTO_DEFLATE_MODULE 1 -+#undef CONFIG_CRYPTO_MICHAEL_MIC -+#define CONFIG_CRYPTO_MICHAEL_MIC_MODULE 1 -+#undef CONFIG_CRYPTO_TEST -+ -+/* -+ * Library routines -+ */ -+#undef CONFIG_CRC32 -+#define CONFIG_ZLIB_INFLATE 1 -+#define CONFIG_ZLIB_DEFLATE 1 -+#undef CONFIG_FW_LOADER -diff -Nur linux-2.4.32/include/linux/b1lli.h linux-2.4.32.patched/include/linux/b1lli.h ---- linux-2.4.32/include/linux/b1lli.h 2001-10-11 18:47:33.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/b1lli.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: b1lli.h,v 1.8.8.3 2001/09/23 22:25:05 kai Exp $ -+/* $Id$ - * - * ISDN lowlevel-module for AVM B1-card. - * -diff -Nur linux-2.4.32/include/linux/b1pcmcia.h linux-2.4.32.patched/include/linux/b1pcmcia.h ---- linux-2.4.32/include/linux/b1pcmcia.h 2001-10-11 18:47:33.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/b1pcmcia.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: b1pcmcia.h,v 1.1.8.2 2001/09/23 22:25:05 kai Exp $ -+/* $Id$ - * - * Exported functions of module b1pcmcia to be called by - * avm_cs card services module. -diff -Nur linux-2.4.32/include/linux/byteorder/swab.h linux-2.4.32.patched/include/linux/byteorder/swab.h ---- linux-2.4.32/include/linux/byteorder/swab.h 2002-11-29 00:53:15.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/byteorder/swab.h 2006-03-13 18:55:55.000000000 +0100 -@@ -15,6 +15,8 @@ - * - */ - -+#include <linux/compiler.h> -+ - /* casts are necessary for constants, because we never know how for sure - * how U/UL/ULL map to __u16, __u32, __u64. At least not in a portable way. - */ -@@ -156,7 +158,7 @@ - #endif /* OPTIMIZE */ - - --static __inline__ __const__ __u16 __fswab16(__u16 x) -+static __inline__ __attribute_const__ __u16 __fswab16(__u16 x) - { - return __arch__swab16(x); - } -@@ -169,7 +171,7 @@ - __arch__swab16s(addr); - } - --static __inline__ __const__ __u32 __fswab24(__u32 x) -+static __inline__ __attribute_const__ __u32 __fswab24(__u32 x) - { - return __arch__swab24(x); - } -@@ -182,7 +184,7 @@ - __arch__swab24s(addr); - } - --static __inline__ __const__ __u32 __fswab32(__u32 x) -+static __inline__ __attribute_const__ __u32 __fswab32(__u32 x) - { - return __arch__swab32(x); - } -@@ -196,7 +198,7 @@ - } - - #ifdef __BYTEORDER_HAS_U64__ --static __inline__ __const__ __u64 __fswab64(__u64 x) -+static __inline__ __attribute_const__ __u64 __fswab64(__u64 x) - { - # ifdef __SWAB_64_THRU_32__ - __u32 h = x >> 32; -diff -Nur linux-2.4.32/include/linux/capi.h linux-2.4.32.patched/include/linux/capi.h ---- linux-2.4.32/include/linux/capi.h 2002-02-25 20:38:13.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/capi.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: capi.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id$ - * - * CAPI 2.0 Interface for Linux - * -diff -Nur linux-2.4.32/include/linux/compiler.h linux-2.4.32.patched/include/linux/compiler.h ---- linux-2.4.32/include/linux/compiler.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/compiler.h 2006-03-13 18:55:55.000000000 +0100 -@@ -27,6 +27,12 @@ - #define __attribute_used__ /* not implemented */ - #endif /* __GNUC__ */ - -+#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -+#define __attribute_const__ __attribute__((__const__)) -+#else -+#define __attribute_const__ /* unimplemented */ -+#endif -+ - #if __GNUC__ == 3 - #if __GNUC_MINOR__ >= 1 - # define inline __inline__ __attribute__((always_inline)) -diff -Nur linux-2.4.32/include/linux/concap.h linux-2.4.32.patched/include/linux/concap.h ---- linux-2.4.32/include/linux/concap.h 2001-09-30 21:26:42.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/concap.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: concap.h,v 1.2.8.1 2001/09/23 22:25:05 kai Exp $ -+/* $Id: concap.h,v 1.3 2001/09/24 13:23:13 kai Exp $ - * - * Copyright 1997 by Henner Eisen <eis@baty.hanse.de> - * -@@ -11,6 +11,7 @@ - #ifdef __KERNEL__ - #include <linux/skbuff.h> - #include <linux/netdevice.h> -+#include <linux/isdn_compat.h> - - /* Stuff to support encapsulation protocols genericly. The encapsulation - protocol is processed at the uppermost layer of the network interface. -diff -Nur linux-2.4.32/include/linux/fsfilter.h linux-2.4.32.patched/include/linux/fsfilter.h ---- linux-2.4.32/include/linux/fsfilter.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/fsfilter.h 2006-03-13 18:55:55.000000000 +0100 -@@ -70,7 +70,6 @@ - #define FILTER_FS_XFS 3 - #define FILTER_FS_OBDFS 4 - #define FILTER_FS_TMPFS 5 --extern struct filter_fs filter_oppar[FILTER_FS_TYPES]; - - struct filter_fs *filter_get_filter_fs(const char *cache_type); - void filter_setup_journal_ops(struct filter_fs *ops, char *cache_type); -diff -Nur linux-2.4.32/include/linux/fs.h linux-2.4.32.patched/include/linux/fs.h ---- linux-2.4.32/include/linux/fs.h 2005-04-04 03:42:20.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -324,6 +324,7 @@ - #include <linux/usbdev_fs_i.h> - #include <linux/jffs2_fs_i.h> - #include <linux/cramfs_fs_sb.h> -+#include <linux/squashfs_fs_i.h> - - /* - * Attribute flags. These should be or-ed together to figure out what -@@ -519,6 +520,7 @@ - struct socket socket_i; - struct usbdev_inode_info usbdev_i; - struct jffs2_inode_info jffs2_i; -+ struct squashfs_inode_info squashfs_i; - void *generic_ip; - } u; - }; -@@ -734,6 +736,7 @@ - #include <linux/usbdev_fs_sb.h> - #include <linux/cramfs_fs_sb.h> - #include <linux/jffs2_fs_sb.h> -+#include <linux/squashfs_fs_sb.h> - - extern struct list_head super_blocks; - extern spinlock_t sb_lock; -@@ -793,6 +796,7 @@ - struct usbdev_sb_info usbdevfs_sb; - struct jffs2_sb_info jffs2_sb; - struct cramfs_sb_info cramfs_sb; -+ struct squashfs_sb_info squashfs_sb; - void *generic_sbp; - } u; - /* -@@ -1559,7 +1563,6 @@ - unsigned long generate_cluster(kdev_t, int b[], int); - unsigned long generate_cluster_swab32(kdev_t, int b[], int); - extern kdev_t ROOT_DEV; --extern char root_device_name[]; - - - extern void show_buffers(void); -diff -Nur linux-2.4.32/include/linux/generic_serial.h linux-2.4.32.patched/include/linux/generic_serial.h ---- linux-2.4.32/include/linux/generic_serial.h 2002-02-25 20:38:13.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/generic_serial.h 2006-03-13 18:55:55.000000000 +0100 -@@ -98,6 +98,4 @@ - int gs_getserial(struct gs_port *port, struct serial_struct *sp); - void gs_got_break(struct gs_port *port); - --extern int gs_debug; -- - #endif -diff -Nur linux-2.4.32/include/linux/hysdn_if.h linux-2.4.32.patched/include/linux/hysdn_if.h ---- linux-2.4.32/include/linux/hysdn_if.h 2001-09-30 21:26:42.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/hysdn_if.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: hysdn_if.h,v 1.1.8.3 2001/09/23 22:25:05 kai Exp $ -+/* $Id$ - * - * Linux driver for HYSDN cards - * ioctl definitions shared by hynetmgr and driver. -diff -Nur linux-2.4.32/include/linux/i2c-algo-au1550.h linux-2.4.32.patched/include/linux/i2c-algo-au1550.h ---- linux-2.4.32/include/linux/i2c-algo-au1550.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/i2c-algo-au1550.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,31 @@ -+/* -+ * Copyright (C) 2004 Embedded Edge, LLC <dan@embeddededge.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it 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. -+ * -+ * This program 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 General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -+ */ -+ -+#ifndef I2C_ALGO_AU1550_H -+#define I2C_ALGO_AU1550_H 1 -+ -+struct i2c_algo_au1550_data { -+ u32 psc_base; -+ int xfer_timeout; -+ int ack_timeout; -+}; -+ -+int i2c_au1550_add_bus(struct i2c_adapter *); -+int i2c_au1550_del_bus(struct i2c_adapter *); -+ -+#endif /* I2C_ALGO_AU1550_H */ -diff -Nur linux-2.4.32/include/linux/i2c.h linux-2.4.32.patched/include/linux/i2c.h ---- linux-2.4.32/include/linux/i2c.h 2005-06-01 02:56:56.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/i2c.h 2006-03-13 18:55:55.000000000 +0100 -@@ -70,7 +70,7 @@ - - /* Transfer num messages. - */ --extern int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[],int num); -+extern int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msg,int num); - - /* - * Some adapter types (i.e. PCF 8584 based ones) may support slave behaviuor. -@@ -197,7 +197,7 @@ - to NULL. If an adapter algorithm can do SMBus access, set - smbus_xfer. If set to NULL, the SMBus protocol is simulated - using common I2C messages */ -- int (*master_xfer)(struct i2c_adapter *adap,struct i2c_msg msgs[], -+ int (*master_xfer)(struct i2c_adapter *adap,struct i2c_msg *msgs, - int num); - int (*smbus_xfer) (struct i2c_adapter *adap, u16 addr, - unsigned short flags, char read_write, -diff -Nur linux-2.4.32/include/linux/i2c-id.h linux-2.4.32.patched/include/linux/i2c-id.h ---- linux-2.4.32/include/linux/i2c-id.h 2004-02-18 14:36:32.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/i2c-id.h 2006-03-13 18:55:54.000000000 +0100 -@@ -156,6 +156,8 @@ - - #define I2C_ALGO_SGI 0x130000 /* SGI algorithm */ - -+#define I2C_ALGO_AU1550 0x140000 /* Alchemy Au1550 PSC */ -+ - #define I2C_ALGO_EXP 0x800000 /* experimental */ - - #define I2C_ALGO_MASK 0xff0000 /* Mask for algorithms */ -@@ -204,6 +206,9 @@ - #define I2C_HW_SGI_VINO 0x00 - #define I2C_HW_SGI_MACE 0x01 - -+/* --- Au1550 PSC adapters */ -+#define I2C_HW_AU1550_PSC 0x00 -+ - /* --- SMBus only adapters */ - #define I2C_HW_SMBUS_PIIX4 0x00 - #define I2C_HW_SMBUS_ALI15X3 0x01 -diff -Nur linux-2.4.32/include/linux/imq.h linux-2.4.32.patched/include/linux/imq.h ---- linux-2.4.32/include/linux/imq.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/imq.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,9 @@ -+#ifndef _IMQ_H -+#define _IMQ_H -+ -+#define IMQ_MAX_DEVS 16 -+ -+#define IMQ_F_IFMASK 0x7f -+#define IMQ_F_ENQUEUE 0x80 -+ -+#endif /* _IMQ_H */ -diff -Nur linux-2.4.32/include/linux/intermezzo_fs.h linux-2.4.32.patched/include/linux/intermezzo_fs.h ---- linux-2.4.32/include/linux/intermezzo_fs.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/intermezzo_fs.h 2006-03-13 18:55:55.000000000 +0100 -@@ -321,7 +321,6 @@ - int presto_ispresto(struct inode *); - - /* super.c */ --extern struct file_system_type presto_fs_type; - extern int init_intermezzo_fs(void); - - /* fileset.c */ -diff -Nur linux-2.4.32/include/linux/isdn/tpam.h linux-2.4.32.patched/include/linux/isdn/tpam.h ---- linux-2.4.32/include/linux/isdn/tpam.h 2001-12-21 18:42:03.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn/tpam.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: tpam.h,v 1.1.2.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id$ - * - * Turbo PAM ISDN driver for Linux. (Kernel Driver) - * -diff -Nur linux-2.4.32/include/linux/isdn_compat.h linux-2.4.32.patched/include/linux/isdn_compat.h ---- linux-2.4.32/include/linux/isdn_compat.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn_compat.h 2006-03-13 18:55:56.000000000 +0100 -@@ -0,0 +1,261 @@ -+/* $Id: isdn_compat.h,v 1.53 2001/09/24 13:23:13 kai Exp $ -+ * -+ * Linux ISDN subsystem -+ * Compatibility for various Linux kernel versions -+ * -+ * This software may be used and distributed according to the terms -+ * of the GNU General Public License, incorporated herein by reference. -+ * -+ */ -+ -+#ifndef _LINUX_ISDN_COMPAT_H -+#define _LINUX_ISDN_COMPAT_H -+ -+#ifdef __KERNEL__ -+ -+#ifndef ISDN_COMPAT_NOT_GENERIC -+/* when using std2kern -u, this part is left out and instead provided -+ by the .ctrl files */ -+ -+#include <linux/version.h> -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,2,18) -+ -+#define set_current_state(sta) (current->state = sta) -+#define module_init(x) int init_module(void) { return x(); } -+#define module_exit(x) void cleanup_module(void) { x(); } -+#define BUG() do { printk("kernel BUG at %s:%d!\n", __FILE__, __LINE__); *(int *)0 = 0; } while (0) -+#define init_MUTEX(x) *(x)=MUTEX -+#define init_MUTEX_LOCKED(x) *(x)=MUTEX_LOCKED -+#define __devinit -+#define __devinitdata -+ -+#else /* 2.2.18 and later */ -+ -+#define COMPAT_HAS_NEW_SETUP -+#define COMPAT_HAS_NEW_WAITQ -+ -+#endif -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,4,0) -+ -+#define dev_kfree_skb_irq(a) dev_kfree_skb(a) -+#define dev_kfree_skb_any(a) dev_kfree_skb(a) -+#define COMPAT_HAS_2_2_PCI -+#define get_pcibase(ps, nr) ps->base_address[nr] -+#define pci_resource_start_io(pdev, nr) ((pdev)->base_address[nr] & PCI_BASE_ADDRESS_IO_MASK) -+#define pci_resource_start_mem(pdev, nr) ((pdev)->base_address[nr] & PCI_BASE_ADDRESS_MEM_MASK) -+#define pci_get_sub_vendor(pdev, id) pci_read_config_word(pdev, PCI_SUBSYSTEM_VENDOR_ID, &id) -+#define pci_get_sub_system(pdev, id) pci_read_config_word(pdev, PCI_SUBSYSTEM_ID, &id) -+ -+#define __exit -+#define __devinit -+#define __devinitdata -+ -+#define net_device device -+#define COMPAT_NO_SOFTNET -+#define netif_running(d) test_bit(LINK_STATE_START, &d->state) -+#define COMPAT_NEED_MPPP_DEFS -+#define spin_lock_bh(lock) -+#define spin_unlock_bh(lock) -+#define COMPAT_NEED_SPIN_LOCK_BH -+#define i_count_read(ic) ic -+#define i_count_inc(ic) ic++ -+#define COMPAT_USE_MODCOUNT_LOCK -+#define devfs_register_chrdev(m,n,f) register_chrdev(m,n,f) -+#define devfs_unregister_chrdev(m,n) unregister_chrdev(m,n) -+#define COMPAT_NEED_PCI_IDS -+#define in_irq() (local_irq_count[smp_processor_id()] != 0) -+ -+#else /* 2.4.0 and later */ -+ -+#define pci_resource_start_io(pdev, nr) pci_resource_start(pdev, nr) -+#define pci_resource_start_mem(pdev, nr) pci_resource_start(pdev, nr) -+#define get_pcibase(ps, nr) ps->resource[nr].start -+#define pci_get_sub_system(pdev, id) id = pdev->subsystem_device -+#define pci_get_sub_vendor(pdev, id) id = pdev->subsystem_vendor -+ -+#define BIG_PHONE_NUMBERS -+#define COMPAT_HAS_ISA_IOREMAP -+#define i_count_read(ic) atomic_read(&ic) -+#define i_count_inc(ic) atomic_inc(&ic) -+#define COMPAT_HAS_FILEOP_OWNER -+#define COMPAT_HAVE_NEW_FILLDIR -+#define COMPAT_has_fileops_in_inode -+#define COMPAT_HAS_init_special_inode -+#define COMPAT_d_alloc_root_one_parameter -+#define HAVE_DEVFS_FS -+#define COMPAT_HAS_SCHEDULE_TASK -+#define COMPAT_HAS_USB_IDTAB -+ -+#endif -+ -+#endif /* ISDN_COMPAT_GENERIC */ -+ -+#ifdef COMPAT_HAS_2_2_PCI -+#include <linux/pci.h> -+#ifdef __powerpc__ -+static inline int pci_enable_device(struct pci_dev *dev) -+{ -+ u16 cmd; -+ pci_read_config_word(dev, PCI_COMMAND, &cmd); -+ cmd |= PCI_COMMAND_MEMORY | PCI_COMMAND_IO | PCI_COMMAND_SERR; -+ cmd &= ~PCI_COMMAND_FAST_BACK; -+ pci_write_config_word(dev, PCI_COMMAND, cmd); -+ return(0); -+} -+#else -+static inline int pci_enable_device(struct pci_dev *dev) -+{ -+ return 0; -+} -+#endif /* __powerpc__ */ -+ -+#define PCI_ANY_ID (~0) -+ -+/* as this is included multiple times, we make it inline */ -+ -+static inline struct pci_dev * pci_find_subsys(unsigned int vendor, unsigned int device, -+ unsigned int ss_vendor, unsigned int ss_device, -+ struct pci_dev *from) -+{ -+ unsigned short subsystem_vendor, subsystem_device; -+ -+ while ((from = pci_find_device(vendor, device, from))) { -+ pci_read_config_word(from, PCI_SUBSYSTEM_VENDOR_ID, &subsystem_vendor); -+ pci_read_config_word(from, PCI_SUBSYSTEM_ID, &subsystem_device); -+ if ((ss_vendor == PCI_ANY_ID || subsystem_vendor == ss_vendor) && -+ (ss_device == PCI_ANY_ID || subsystem_device == ss_device)) -+ return from; -+ } -+ return NULL; -+} -+#endif -+ -+#ifdef COMPAT_NO_SOFTNET -+#include <linux/netdevice.h> -+ -+/* -+ * Tell upper layers that the network device is ready to xmit more frames. -+ */ -+static void __inline__ netif_wake_queue(struct net_device * dev) -+{ -+ dev->tbusy = 0; -+ mark_bh(NET_BH); -+} -+ -+/* -+ * called during net_device open() -+ */ -+static void __inline__ netif_start_queue(struct net_device * dev) -+{ -+ dev->tbusy = 0; -+ /* actually, we never use the interrupt flag at all */ -+ dev->interrupt = 0; -+ dev->start = 1; -+} -+ -+/* -+ * Ask upper layers to temporarily cease passing us more xmit frames. -+ */ -+static void __inline__ netif_stop_queue(struct net_device * dev) -+{ -+ dev->tbusy = 1; -+} -+ -+#endif /* COMPAT_NO_SOFTNET */ -+ -+#ifndef COMPAT_HAS_NEW_WAITQ -+typedef struct wait_queue wait_queue_t; -+typedef struct wait_queue *wait_queue_head_t; -+ -+#define DECLARE_WAITQUEUE(wait, current) struct wait_queue wait = { current, NULL } -+#define DECLARE_WAIT_QUEUE_HEAD(wait) wait_queue_head_t wait -+#define init_waitqueue_head(x) *(x)=NULL -+#define init_waitqueue_entry(q,p) ((q)->task)=(p) -+#endif /* COMPAT_HAS_NEW_WAITQ */ -+ -+#ifdef COMPAT_NEED_PCI_IDS -+ -+#define PCI_ANY_ID (~0) -+ -+#define PCI_VENDOR_ID_DYNALINK 0x0675 -+#define PCI_DEVICE_ID_DYNALINK_IS64PH 0x1702 -+ -+#define PCI_DEVICE_ID_WINBOND2_6692 0x6692 -+ -+#define PCI_DEVICE_ID_PLX_R685 0x1030 -+#define PCI_DEVICE_ID_PLX_DJINN_ITOO 0x1151 -+#define PCI_DEVICE_ID_PLX_R753 0x1152 -+ -+#define PCI_VENDOR_ID_ELSA 0x1048 -+#define PCI_DEVICE_ID_ELSA_MICROLINK 0x1000 -+#define PCI_DEVICE_ID_ELSA_QS3000 0x3000 -+ -+#define PCI_VENDOR_ID_EICON 0x1133 -+#define PCI_DEVICE_ID_EICON_DIVA20PRO 0xe001 -+#define PCI_DEVICE_ID_EICON_DIVA20 0xe002 -+#define PCI_DEVICE_ID_EICON_DIVA20PRO_U 0xe003 -+#define PCI_DEVICE_ID_EICON_DIVA20_U 0xe004 -+#define PCI_DEVICE_ID_EICON_DIVA201 0xe005 -+#define PCI_DEVICE_ID_EICON_MAESTRA 0xe010 -+#define PCI_DEVICE_ID_EICON_MAESTRAQ 0xe012 -+#define PCI_DEVICE_ID_EICON_MAESTRAQ_U 0xe013 -+#define PCI_DEVICE_ID_EICON_MAESTRAP 0xe014 -+ -+#define PCI_VENDOR_ID_CCD 0x1397 -+#define PCI_DEVICE_ID_CCD_2BD0 0x2BD0 -+#define PCI_DEVICE_ID_CCD_B000 0xB000 -+#define PCI_DEVICE_ID_CCD_B006 0xB006 -+#define PCI_DEVICE_ID_CCD_B007 0xB007 -+#define PCI_DEVICE_ID_CCD_B008 0xB008 -+#define PCI_DEVICE_ID_CCD_B009 0xB009 -+#define PCI_DEVICE_ID_CCD_B00A 0xB00A -+#define PCI_DEVICE_ID_CCD_B00B 0xB00B -+#define PCI_DEVICE_ID_CCD_B00C 0xB00C -+#define PCI_DEVICE_ID_CCD_B100 0xB100 -+ -+#define PCI_VENDOR_ID_ASUSTEK 0x1043 -+#define PCI_DEVICE_ID_ASUSTEK_0675 0x0675 -+ -+#define PCI_VENDOR_ID_BERKOM 0x0871 -+#define PCI_DEVICE_ID_BERKOM_A1T 0xFFA1 -+#define PCI_DEVICE_ID_BERKOM_T_CONCEPT 0xFFA2 -+#define PCI_DEVICE_ID_BERKOM_A4T 0xFFA4 -+#define PCI_DEVICE_ID_BERKOM_SCITEL_QUADRO 0xFFA8 -+ -+#define PCI_DEVICE_ID_SATSAGEM_NICCY 0x1016 -+ -+#define PCI_DEVICE_ID_TIGERJET_100 0x0002 -+ -+#define PCI_VENDOR_ID_ANIGMA 0x1051 -+#define PCI_DEVICE_ID_ANIGMA_MC145575 0x0100 -+ -+#define PCI_VENDOR_ID_ZOLTRIX 0x15b0 -+#define PCI_DEVICE_ID_ZOLTRIX_2BD0 0x2BD0 -+ -+#define PCI_DEVICE_ID_DIGI_DF_M_IOM2_E 0x0070 -+#define PCI_DEVICE_ID_DIGI_DF_M_E 0x0071 -+#define PCI_DEVICE_ID_DIGI_DF_M_IOM2_A 0x0072 -+#define PCI_DEVICE_ID_DIGI_DF_M_A 0x0073 -+ -+#define PCI_DEVICE_ID_AVM_B1 0x0700 -+#define PCI_DEVICE_ID_AVM_C4 0x0800 -+#define PCI_DEVICE_ID_AVM_C2 0x1100 -+#define PCI_DEVICE_ID_AVM_T1 0x1200 -+ -+#define PCI_VENDOR_ID_HYPERCOPE 0x1365 -+#define PCI_DEVICE_ID_HYPERCOPE_PLX 0x9050 -+#define PCI_SUBDEVICE_ID_HYPERCOPE_OLD_ERGO 0x0104 -+#define PCI_SUBDEVICE_ID_HYPERCOPE_ERGO 0x0106 -+#define PCI_SUBDEVICE_ID_HYPERCOPE_METRO 0x0107 -+#define PCI_SUBDEVICE_ID_HYPERCOPE_CHAMP2 0x0108 -+#define PCI_SUBDEVICE_ID_HYPERCOPE_PLEXUS 0x0109 -+ -+#define PCI_VENDOR_ID_ABOCOM 0x13D1 -+#define PCI_DEVICE_ID_ABOCOM_2BD1 0x2BD1 -+ -+#endif /* COMPAT_NEED_PCI_IDS */ -+ -+#endif /* __KERNEL__ */ -+#endif /* _LINUX_ISDN_COMPAT_H */ -diff -Nur linux-2.4.32/include/linux/isdn_divertif.h linux-2.4.32.patched/include/linux/isdn_divertif.h ---- linux-2.4.32/include/linux/isdn_divertif.h 2001-12-21 18:42:03.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn_divertif.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: isdn_divertif.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id$ - * - * Header for the diversion supplementary interface for i4l. - * -@@ -14,7 +14,7 @@ - /***********************************************************/ - /* magic value is also used to control version information */ - /***********************************************************/ --#define DIVERT_IF_MAGIC 0x25873401 -+#define DIVERT_IF_MAGIC 0x25873402 - #define DIVERT_CMD_REG 0x00 /* register command */ - #define DIVERT_CMD_REL 0x01 /* release command */ - #define DIVERT_NO_ERR 0x00 /* return value no error */ -@@ -34,6 +34,7 @@ - int (*ll_cmd)(isdn_ctrl *); /* supplied by hl on return */ - char * (*drv_to_name)(int); /* map a driver id to name, supplied by hl */ - int (*name_to_drv)(char *); /* map a driver id to name, supplied by hl */ -+ int (*dial_net_name)(char *); /* force dial of a ll net interface */ - } isdn_divert_if; - - /*********************/ -diff -Nur linux-2.4.32/include/linux/isdn_dwabc.h linux-2.4.32.patched/include/linux/isdn_dwabc.h ---- linux-2.4.32/include/linux/isdn_dwabc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn_dwabc.h 2006-03-13 18:55:56.000000000 +0100 -@@ -0,0 +1,84 @@ -+/* $Id: isdn_dwabc.h,v 1.9 2001/09/26 20:32:08 detabc Exp $ -+ * -+ * Header for the Linux ISDN abc-extension. -+ * -+ * Copyright by abc GmbH -+ * written by Detlef Wengorz <detlefw@isdn4linux.de> -+ * -+ * This software may be used and distributed according to the terms -+ * of the GNU General Public License, incorporated herein by reference. -+ * -+ */ -+ -+#ifndef ISDN_DWABC_H -+#define ISDN_DWABC_H -+ -+#ifdef __KERNEL__ -+#include <linux/types.h> -+#include <linux/kernel.h> -+#include <linux/sched.h> -+#include <linux/smp.h> -+#include <linux/spinlock.h> -+#include <linux/errno.h> -+ -+ -+typedef struct ISDN_DWSPINLOCK { -+ -+ spinlock_t spin; -+ short owner; -+ short my_flags; -+ ulong irq_flags; -+ -+} ISDN_DWSPINLOCK; -+ -+#define ISDN_DWSPIN_UNLOCKED \ -+ (ISDN_DWSPINLOCK) { \ -+ spin: SPIN_LOCK_UNLOCKED, \ -+ owner: -1, \ -+ my_flags: 0, \ -+ irq_flags: 0, \ -+ } -+ -+#define ISDN_DWSPIN_INIT(x) \ -+ do { *(x) = ISDN_DWSPIN_UNLOCKED; } while(0); -+ -+static __inline__ int isdn_dwspin_trylock(ISDN_DWSPINLOCK *spin) -+{ -+ if(!spin_trylock(&spin->spin)) { -+ -+ if(spin->owner == smp_processor_id()) -+ return(-EAGAIN); -+ -+ spin_lock(&spin->spin); -+ } -+ -+ spin->owner = smp_processor_id(); -+ return(0); -+} -+ -+static __inline__ void isdn_dwspin_unlock(ISDN_DWSPINLOCK *spin) -+{ -+ spin->owner = -1; -+ spin_unlock(&spin->spin); -+} -+ -+ -+#else -+#include <sys/types.h> -+#endif -+ -+#define DWABC_LCR_FLG_NEWNUMBER 0x00000001L -+#define DWABC_LCR_FLG_DISABLE 0x00000002L -+#define DWABC_LCR_FLG_NEWHUPTIME 0x00000004L -+ -+ -+struct ISDN_DWABC_LCR_IOCTL { -+ -+ int lcr_ioctl_sizeof; /* mustbe sizeof(ISDN_DWABC_LCR_IOCTL) */ -+ u_short lcr_ioctl_onhtime; /* new hanguptime */ -+ u_long lcr_ioctl_callid; /* callid from lcr-subsystem */ -+ u_long lcr_ioctl_flags; /* see above */ -+ char lcr_ioctl_nr[32]; /* new destination phonenumber */ -+}; -+ -+#endif -diff -Nur linux-2.4.32/include/linux/isdn.h linux-2.4.32.patched/include/linux/isdn.h ---- linux-2.4.32/include/linux/isdn.h 2001-12-21 18:42:03.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: isdn.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id: isdn.h,v 1.125 2001/12/01 23:18:21 detabc Exp $ - * - * Main header for the Linux ISDN subsystem (linklevel). - * -@@ -14,6 +14,7 @@ - #ifndef __ISDN_H__ - #define __ISDN_H__ - -+#include <linux/isdn_compat.h> - #include <linux/ioctl.h> - - #ifdef CONFIG_COBALT_MICRO_SERVER -@@ -93,9 +94,15 @@ - #define ISDN_LMSNLEN 255 /* Length of tty's Listen-MSN string */ - #define ISDN_CMSGLEN 50 /* Length of CONNECT-Message to add for Modem */ - -+#ifdef BIG_PHONE_NUMBERS - #define ISDN_MSNLEN 32 - #define NET_DV 0x06 /* Data version for isdn_net_ioctl_cfg */ - #define TTY_DV 0x06 /* Data version for iprofd etc. */ -+#else -+#define ISDN_MSNLEN 20 -+#define NET_DV 0x05 /* Data version for isdn_net_ioctl_cfg */ -+#define TTY_DV 0x05 /* Data version for iprofd etc. */ -+#endif - - #define INF_DV 0x01 /* Data version for /dev/isdninfo */ - -@@ -187,6 +194,61 @@ - #define ISDN_MINOR_PPPMAX (128 + (ISDN_MAX_CHANNELS-1)) - #define ISDN_MINOR_STATUS 255 - -+#ifndef CONFIG_ISDN_WITH_ABC -+#undef CONFIG_ISDN_WITH_ABC_CALLB -+#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK -+#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK_HANGUP -+#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK_DIAL -+#undef CONFIG_ISDN_WITH_ABC_OUTGOING_EAZ -+#undef CONFIG_ISDN_WITH_ABC_LCR_SUPPORT -+#undef CONFIG_ISDN_WITH_ABC_RCV_NO_HUPTIMER -+#undef CONFIG_ISDN_WITH_ABC_CH_EXTINUSE -+#undef CONFIG_ISDN_WITH_ABC_CONN_ERROR -+#undef CONFIG_ISDN_WITH_ABC_RAWIPCOMPRESS -+#else /* CONFIG_ISDN_WITH_ABC */ -+#include <linux/isdn_dwabc.h> -+ -+ -+typedef struct DWABCJIFFIES { -+ -+ u_long msec_1000; -+ u_long msec_500; -+ u_long msec_400; -+ u_long msec_200; -+ u_long msec_100; -+ -+} DWABCJIFFIES; -+ -+ -+#ifdef CONFIG_ISDN_WITH_ABC_NEED_DWSJIFFIES -+DWABCJIFFIES isdn_dwabc_jiffies; -+#else -+extern DWABCJIFFIES isdn_dwabc_jiffies; -+#endif -+#define dwsjiffies (isdn_dwabc_jiffies.msec_1000) -+ -+#define ISDN_DW_ABC_FLAG_UNUSED00001 0x00000001L -+#define ISDN_DW_ABC_FLAG_NO_UDP_CHECK 0x00000002L -+#define ISDN_DW_ABC_FLAG_NO_UDP_HANGUP 0x00000004L -+#define ISDN_DW_ABC_FLAG_NO_UDP_DIAL 0x00000008L -+#define ISDN_DW_ABC_FLAG_UNUSED00010 0x00000010L -+#define ISDN_DW_ABC_FLAG_RCV_NO_HUPTIMER 0x00000020L -+#define ISDN_DW_ABC_FLAG_NO_CH_EXTINUSE 0x00000040L -+#define ISDN_DW_ABC_FLAG_NO_CONN_ERROR 0x00000080L -+#define ISDN_DW_ABC_FLAG_BSD_COMPRESS 0x00000100L -+#define ISDN_DW_ABC_FLAG_NO_LCR 0x00000200L -+#define ISDN_DW_ABC_FLAG_LEASED_LINE 0x00001000L -+ -+#define ISDN_DW_ABC_IFFLAG_NODCHAN 0x00000001L -+#define ISDN_DW_ABC_IFFLAG_BSDAKTIV 0x00000002L -+ -+#define ISDN_DW_ABC_BITLOCK_SEND 0 -+#define ISDN_DW_ABC_BITLOCK_RECEIVE 1 -+ -+#endif /* CONFIG_ISDN_WITH_ABC */ -+ -+ -+ - #ifdef CONFIG_ISDN_PPP - - #ifdef CONFIG_ISDN_PPP_VJ -@@ -204,9 +266,11 @@ - # include <linux/concap.h> - #endif - -+#ifdef HAVE_DEVFS_FS - #ifdef CONFIG_DEVFS_FS - # include <linux/devfs_fs_kernel.h> - #endif -+#endif /* HAVE_DEVFS_FS */ - - #include <linux/isdnif.h> - -@@ -272,6 +336,12 @@ - #define ISDN_NET_CALLBACK 0x04 /* activate callback */ - #define ISDN_NET_CBHUP 0x08 /* hangup before callback */ - #define ISDN_NET_CBOUT 0x10 /* remote machine does callback */ -+#if 0 -+/* Unused??? */ -+#define ISDN_NET_CLONE 0x08 /* clone a tmp interface when called */ -+#define ISDN_NET_TMP 0x10 /* tmp interface until getting an IP */ -+#define ISDN_NET_DYNAMIC 0x20 /* this link is dynamically allocated */ -+#endif - - #define ISDN_NET_MAGIC 0x49344C02 /* for paranoia-checking */ - -@@ -386,6 +456,38 @@ - char cisco_debserint; /* debugging flag of cisco hdlc with slarp */ - struct timer_list cisco_timer; - struct tq_struct tqueue; -+#ifdef CONFIG_ISDN_WITH_ABC -+ ulong dw_abc_flags; -+ ulong dw_abc_if_flags; -+ int dw_abc_inuse_secure; -+ ulong dw_abc_dialstart; -+ int dw_abc_old_onhtime; -+ int dw_abc_remote_version; -+ int dw_abc_bitlocks; -+#ifdef CONFIG_ISDN_WITH_ABC_OUTGOING_EAZ -+ char dw_out_msn[ISDN_MSNLEN]; /* eaz for outgoing call if *out_msn != 0 */ -+#endif -+#ifdef CONFIG_ISDN_WITH_ABC_LCR_SUPPORT -+ ulong dw_abc_lcr_callid; -+ ulong dw_abc_lcr_start_request; -+ ulong dw_abc_lcr_end_request; -+ isdn_ctrl *dw_abc_lcr_cmd; -+ struct ISDN_DWABC_LCR_IOCTL *dw_abc_lcr_io; -+#endif -+ ulong dw_abc_bchan_last_connect; -+#ifdef CONFIG_ISDN_WITH_ABC_CONN_ERROR -+ short dw_abc_bchan_errcnt; -+#endif -+#ifdef CONFIG_ISDN_WITH_ABC_RAWIPCOMPRESS -+ void *dw_abc_bsd_compressor; -+ void *dw_abc_bsd_stat_rx; -+ void *dw_abc_bsd_stat_tx; -+#endif -+ ulong dw_abc_bsd_snd; -+ ulong dw_abc_bsd_bsd_snd; -+ ulong dw_abc_bsd_rcv; -+ ulong dw_abc_bsd_bsd_rcv; -+#endif - } isdn_net_local; - - /* the interface itself */ -@@ -608,12 +710,13 @@ - int tflags; /* Timer-Flags: */ - /* see ISDN_TIMER_..defines */ - int global_flags; -- infostruct *infochain; /* List of open info-devs. */ -- wait_queue_head_t info_waitq; /* Wait-Queue for isdninfo */ - struct timer_list timer; /* Misc.-function Timer */ - int chanmap[ISDN_MAX_CHANNELS];/* Map minor->device-channel */ - int drvmap[ISDN_MAX_CHANNELS]; /* Map minor->driver-index */ - int usage[ISDN_MAX_CHANNELS]; /* Used by tty/ip/voice */ -+#ifdef CONFIG_ISDN_WITH_ABC_CH_EXTINUSE -+ ulong dwabc_chan_external_inuse[ISDN_MAX_CHANNELS]; -+#endif - char num[ISDN_MAX_CHANNELS][ISDN_MSNLEN]; - /* Remote number of active ch.*/ - int m_idx[ISDN_MAX_CHANNELS]; /* Index for mdm.... */ -@@ -631,6 +734,7 @@ - isdn_v110_stream *v110[ISDN_MAX_CHANNELS]; /* V.110 private data */ - struct semaphore sem; /* serialize list access*/ - unsigned long global_features; -+#ifdef HAVE_DEVFS_FS - #ifdef CONFIG_DEVFS_FS - devfs_handle_t devfs_handle_isdninfo; - devfs_handle_t devfs_handle_isdnctrl; -@@ -640,10 +744,41 @@ - devfs_handle_t devfs_handle_ipppX[ISDN_MAX_CHANNELS]; - #endif - #endif /* CONFIG_DEVFS_FS */ -+#endif /* HAVE_DEVFS_FS */ - } isdn_dev; - - extern isdn_dev *dev; - -+#ifdef CONFIG_ISDN_WITH_ABC -+extern int isdn_auto_dial_helper(isdn_net_local *,struct sk_buff *,int); -+extern void dwisdn_nfw_send(isdn_net_local *lp,int drop_only); -+extern void isdn_net_unreachable(struct net_device *,struct sk_buff *,char *); -+extern void isdn_net_log_skb_dwabc(struct sk_buff *,isdn_net_local *,char *); -+extern void isdn_net_hangup(struct net_device *d); -+extern void isdn_dw_clear_if(ulong pm,isdn_net_local *); -+extern void isdn_dwabc_test_phone(isdn_net_local *); -+extern void isdn_dw_abc_init_func(void); -+extern void isdn_dw_abc_release_func(void); -+extern int isdn_dw_abc_reset_interface(isdn_net_local *,int); -+extern int dwabc_bsd_init(isdn_net_local *lp); -+extern void dwabc_bsd_free(isdn_net_local *lp); -+extern struct sk_buff *dwabc_bsd_compress(isdn_net_local *,struct sk_buff *,struct net_device *); -+extern void dwabc_bsd_first_gen(isdn_net_local *); -+extern struct sk_buff *dwabc_bsd_rx_pkt(isdn_net_local *,struct sk_buff *,struct net_device *); -+#ifdef CONFIG_ISDN_WITH_ABC_LCR_SUPPORT -+extern size_t isdn_dw_abc_lcr_readstat(char *,size_t); -+extern ulong isdn_dw_abc_lcr_call_number(isdn_net_local *,isdn_ctrl *); -+extern void isdn_dw_abc_lcr_open(void); -+extern void isdn_dw_abc_lcr_close(void); -+extern int isdn_dw_abc_lcr_ioctl(ulong); -+extern void isdn_dw_abc_lcr_clear(isdn_net_local *); -+extern int isdn_dw_abc_lcr_lock(void); -+extern void isdn_dw_abc_lcr_ulock(void); -+#endif -+#ifdef CONFIG_ISDN_WITH_ABC_UDP_CHECK -+extern int dw_abc_udp_test(struct sk_buff *skb,struct net_device *ndev); -+#endif -+#endif - - #endif /* __KERNEL__ */ - -diff -Nur linux-2.4.32/include/linux/isdnif.h linux-2.4.32.patched/include/linux/isdnif.h ---- linux-2.4.32/include/linux/isdnif.h 2001-12-21 18:42:03.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdnif.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: isdnif.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id: isdnif.h,v 1.43 2002/02/09 21:19:11 keil Exp $ - * - * Linux ISDN subsystem - * Definition of the interface between the subsystem and its low-level drivers. -@@ -14,6 +14,7 @@ - #ifndef __ISDNIF_H__ - #define __ISDNIF_H__ - -+#include <linux/isdn_compat.h> - - /* - * Values for general protocol-selection -@@ -213,6 +214,8 @@ - #define ISDN_STAT_FAXIND 276 /* FAX indications from HL-driver */ - #define ISDN_STAT_AUDIO 277 /* DTMF, DSP indications */ - #define ISDN_STAT_DISCH 278 /* Disable/Enable channel usage */ -+#define ISDN_STAT_ALERT 279 /* Signal alerting */ -+#define ISDN_STAT_PROCEED 280 /* Signal proceeding */ - - /* - * Audio commands -diff -Nur linux-2.4.32/include/linux/isdn_lzscomp.h linux-2.4.32.patched/include/linux/isdn_lzscomp.h ---- linux-2.4.32/include/linux/isdn_lzscomp.h 2001-12-21 18:42:03.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/isdn_lzscomp.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,4 +1,4 @@ --/* $Id: isdn_lzscomp.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ -+/* $Id$ - * - * Header for isdn_lzscomp.c - * Concentrated here to not mess up half a dozen kernel headers with code -diff -Nur linux-2.4.32/include/linux/isdn_ppp.h linux-2.4.32.patched/include/linux/isdn_ppp.h ---- linux-2.4.32/include/linux/isdn_ppp.h 2003-08-25 13:44:44.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/isdn_ppp.h 2006-03-13 18:55:56.000000000 +0100 -@@ -8,6 +8,7 @@ - #ifndef _LINUX_ISDN_PPP_H - #define _LINUX_ISDN_PPP_H - -+#include <linux/isdn_compat.h> - - #define CALLTYPE_INCOMING 0x1 - #define CALLTYPE_OUTGOING 0x2 -@@ -33,6 +34,11 @@ - #define PPPIOCSCOMPRESSOR _IOW('t',135,int) - #define PPPIOCGIFNAME _IOR('t',136, char [IFNAMSIZ] ) - -+#ifdef COMPAT_NEED_MPPP_DEFS -+#define PPP_MP 0x003d -+#define PPP_COMPFRAG 0x00fb -+#define PPP_CCPFRAG 0x80fb -+#endif - - #define SC_MP_PROT 0x00000200 - #define SC_REJ_MP_PROT 0x00000400 -@@ -65,9 +71,6 @@ - - #include <linux/config.h> - --#ifdef CONFIG_IPPP_FILTER --#include <linux/filter.h> --#endif - - #define DECOMP_ERR_NOMEM (-10) - -@@ -226,10 +229,6 @@ - unsigned char *cbuf; - struct slcompress *slcomp; - #endif --#ifdef CONFIG_IPPP_FILTER -- struct sock_fprog pass_filter; /* filter for packets to pass */ -- struct sock_fprog active_filter; /* filter for pkts to reset idle */ --#endif - unsigned long debug; - struct isdn_ppp_compressor *compressor,*decompressor; - struct isdn_ppp_compressor *link_compressor,*link_decompressor; -diff -Nur linux-2.4.32/include/linux/kernelcapi.h linux-2.4.32.patched/include/linux/kernelcapi.h ---- linux-2.4.32/include/linux/kernelcapi.h 2002-02-25 20:38:13.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/kernelcapi.h 2006-03-13 18:55:56.000000000 +0100 -@@ -1,12 +1,10 @@ --/* $Id: kernelcapi.h,v 1.1.4.2 2002/01/28 18:25:10 kai Exp $ -+/* -+ * $Id: kernelcapi.h,v 1.9 2000/11/28 09:34:02 kai Exp $ - * - * Kernel CAPI 2.0 Interface for Linux - * - * (c) Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de) - * -- * This software may be used and distributed according to the terms -- * of the GNU General Public License, incorporated herein by reference. -- * - */ - - #ifndef __KERNELCAPI_H__ -diff -Nur linux-2.4.32/include/linux/modversions.h linux-2.4.32.patched/include/linux/modversions.h ---- linux-2.4.32/include/linux/modversions.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/modversions.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1 @@ -+#include <linux/modsetver.h> -diff -Nur linux-2.4.32/include/linux/nbd.h linux-2.4.32.patched/include/linux/nbd.h ---- linux-2.4.32/include/linux/nbd.h 2002-08-03 02:39:45.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/nbd.h 2006-03-13 18:57:13.000000000 +0100 -@@ -29,34 +29,6 @@ - - #include <linux/blk.h> - --#ifdef PARANOIA --extern int requests_in; --extern int requests_out; --#endif -- --static void --nbd_end_request(struct request *req) --{ -- struct buffer_head *bh; -- unsigned nsect; -- unsigned long flags; -- int uptodate = (req->errors == 0) ? 1 : 0; -- --#ifdef PARANOIA -- requests_out++; --#endif -- spin_lock_irqsave(&io_request_lock, flags); -- while((bh = req->bh) != NULL) { -- nsect = bh->b_size >> 9; -- blk_finished_io(nsect); -- req->bh = bh->b_reqnext; -- bh->b_reqnext = NULL; -- bh->b_end_io(bh, uptodate); -- } -- blkdev_release_request(req); -- spin_unlock_irqrestore(&io_request_lock, flags); --} -- - #define MAX_NBD 128 - - struct nbd_device { -diff -Nur linux-2.4.32/include/linux/netdevice.h linux-2.4.32.patched/include/linux/netdevice.h ---- linux-2.4.32/include/linux/netdevice.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netdevice.h 2006-03-13 18:57:13.000000000 +0100 -@@ -295,9 +295,11 @@ - - /* List of functions to handle Wireless Extensions (instead of ioctl). - * See <net/iw_handler.h> for details. Jean II */ -- struct iw_handler_def * wireless_handlers; -+ const struct iw_handler_def * wireless_handlers; -+ /* Instance data managed by the core of Wireless Extensions. */ -+ struct iw_public_data * wireless_data; -+ - -- struct ethtool_ops *ethtool_ops; - - /* - * This marks the end of the "visible" part of the structure. All -@@ -352,8 +354,8 @@ - - struct Qdisc *qdisc; - struct Qdisc *qdisc_sleeping; -+ struct Qdisc *qdisc_list; - struct Qdisc *qdisc_ingress; -- struct list_head qdisc_list; - unsigned long tx_queue_len; /* Max frames per queue allowed */ - - /* hard_start_xmit synchronizer */ -@@ -453,6 +455,7 @@ - /* this will get initialized at each interface type init routine */ - struct divert_blk *divert; - #endif /* CONFIG_NET_DIVERT */ -+ struct ethtool_ops *ethtool_ops; - }; - - /* 2.6 compatibility */ -diff -Nur linux-2.4.32/include/linux/netfilter_helpers.h linux-2.4.32.patched/include/linux/netfilter_helpers.h ---- linux-2.4.32/include/linux/netfilter_helpers.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_helpers.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,133 @@ -+/* -+ * Helpers for netfiler modules. This file provides implementations for basic -+ * functions such as strncasecmp(), etc. -+ * -+ * gcc will warn for defined but unused functions, so we only include the -+ * functions requested. The following macros are used: -+ * NF_NEED_STRNCASECMP nf_strncasecmp() -+ * NF_NEED_STRTOU16 nf_strtou16() -+ * NF_NEED_STRTOU32 nf_strtou32() -+ */ -+#ifndef _NETFILTER_HELPERS_H -+#define _NETFILTER_HELPERS_H -+ -+/* Only include these functions for kernel code. */ -+#ifdef __KERNEL__ -+ -+#include <linux/ctype.h> -+#define iseol(c) ( (c) == '\r' || (c) == '\n' ) -+ -+/* -+ * The standard strncasecmp() -+ */ -+#ifdef NF_NEED_STRNCASECMP -+static int -+nf_strncasecmp(const char* s1, const char* s2, u_int32_t len) -+{ -+ if (s1 == NULL || s2 == NULL) -+ { -+ if (s1 == NULL && s2 == NULL) -+ { -+ return 0; -+ } -+ return (s1 == NULL) ? -1 : 1; -+ } -+ while (len > 0 && tolower(*s1) == tolower(*s2)) -+ { -+ len--; -+ s1++; -+ s2++; -+ } -+ return ( (len == 0) ? 0 : (tolower(*s1) - tolower(*s2)) ); -+} -+#endif /* NF_NEED_STRNCASECMP */ -+ -+/* -+ * Parse a string containing a 16-bit unsigned integer. -+ * Returns the number of chars used, or zero if no number is found. -+ */ -+#ifdef NF_NEED_STRTOU16 -+static int -+nf_strtou16(const char* pbuf, u_int16_t* pval) -+{ -+ int n = 0; -+ -+ *pval = 0; -+ while (isdigit(pbuf[n])) -+ { -+ *pval = (*pval * 10) + (pbuf[n] - '0'); -+ n++; -+ } -+ -+ return n; -+} -+#endif /* NF_NEED_STRTOU16 */ -+ -+/* -+ * Parse a string containing a 32-bit unsigned integer. -+ * Returns the number of chars used, or zero if no number is found. -+ */ -+#ifdef NF_NEED_STRTOU32 -+static int -+nf_strtou32(const char* pbuf, u_int32_t* pval) -+{ -+ int n = 0; -+ -+ *pval = 0; -+ while (pbuf[n] >= '0' && pbuf[n] <= '9') -+ { -+ *pval = (*pval * 10) + (pbuf[n] - '0'); -+ n++; -+ } -+ -+ return n; -+} -+#endif /* NF_NEED_STRTOU32 */ -+ -+/* -+ * Given a buffer and length, advance to the next line and mark the current -+ * line. -+ */ -+#ifdef NF_NEED_NEXTLINE -+static int -+nf_nextline(char* p, uint len, uint* poff, uint* plineoff, uint* plinelen) -+{ -+ uint off = *poff; -+ uint physlen = 0; -+ -+ if (off >= len) -+ { -+ return 0; -+ } -+ -+ while (p[off] != '\n') -+ { -+ if (len-off <= 1) -+ { -+ return 0; -+ } -+ -+ physlen++; -+ off++; -+ } -+ -+ /* if we saw a crlf, physlen needs adjusted */ -+ if (physlen > 0 && p[off] == '\n' && p[off-1] == '\r') -+ { -+ physlen--; -+ } -+ -+ /* advance past the newline */ -+ off++; -+ -+ *plineoff = *poff; -+ *plinelen = physlen; -+ *poff = off; -+ -+ return 1; -+} -+#endif /* NF_NEED_NEXTLINE */ -+ -+#endif /* __KERNEL__ */ -+ -+#endif /* _NETFILTER_HELPERS_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack.h 2005-11-16 20:12:54.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack.h 2006-03-13 19:01:41.000000000 +0100 -@@ -50,16 +50,19 @@ - - #include <linux/netfilter_ipv4/ip_conntrack_tcp.h> - #include <linux/netfilter_ipv4/ip_conntrack_icmp.h> -+#include <linux/netfilter_ipv4/ip_conntrack_proto_gre.h> - - /* per conntrack: protocol private data */ - union ip_conntrack_proto { - /* insert conntrack proto private data here */ - struct ip_ct_tcp tcp; - struct ip_ct_icmp icmp; -+ struct ip_ct_gre gre; - }; - - union ip_conntrack_expect_proto { - /* insert expect proto private data here */ -+ struct ip_ct_gre_expect gre; - }; - - /* Add protocol helper include file here */ -@@ -67,6 +70,10 @@ - - #include <linux/netfilter_ipv4/ip_conntrack_ftp.h> - #include <linux/netfilter_ipv4/ip_conntrack_irc.h> -+#include <linux/netfilter_ipv4/ip_conntrack_pptp.h> -+#include <linux/netfilter_ipv4/ip_conntrack_h323.h> -+#include <linux/netfilter_ipv4/ip_conntrack_rtsp.h> -+#include <linux/netfilter_ipv4/ip_conntrack_mms.h> - - /* per expectation: application helper private data */ - union ip_conntrack_expect_help { -@@ -74,6 +81,10 @@ - struct ip_ct_amanda_expect exp_amanda_info; - struct ip_ct_ftp_expect exp_ftp_info; - struct ip_ct_irc_expect exp_irc_info; -+ struct ip_ct_pptp_expect exp_pptp_info; -+ struct ip_ct_h225_expect exp_h225_info; -+ struct ip_ct_rtsp_expect exp_rtsp_info; -+ struct ip_ct_mms_expect exp_mms_info; - - #ifdef CONFIG_IP_NF_NAT_NEEDED - union { -@@ -87,14 +98,20 @@ - /* insert conntrack helper private data (master) here */ - struct ip_ct_ftp_master ct_ftp_info; - struct ip_ct_irc_master ct_irc_info; -+ struct ip_ct_pptp_master ct_pptp_info; -+ struct ip_ct_h225_master ct_h225_info; -+ struct ip_ct_rtsp_master ct_rtsp_info; -+ struct ip_ct_mms_master ct_mms_info; - }; - - #ifdef CONFIG_IP_NF_NAT_NEEDED - #include <linux/netfilter_ipv4/ip_nat.h> -+#include <linux/netfilter_ipv4/ip_nat_pptp.h> - - /* per conntrack: nat application helper private data */ - union ip_conntrack_nat_help { - /* insert nat helper private data here */ -+ struct ip_nat_pptp nat_pptp_info; - }; - #endif - -@@ -156,6 +173,12 @@ - union ip_conntrack_expect_help help; - }; - -+struct ip_conntrack_counter -+{ -+ u_int64_t packets; -+ u_int64_t bytes; -+}; -+ - struct ip_conntrack_helper; - - struct ip_conntrack -@@ -173,6 +196,12 @@ - /* Timer function; drops refcnt when it goes off. */ - struct timer_list timeout; - -+#if defined(CONFIG_IP_NF_CT_ACCT) || \ -+ defined(CONFIG_IP_NF_CT_ACCT_MODULE) -+ /* Accounting Information (same cache line as other written members) */ -+ struct ip_conntrack_counter counters[IP_CT_DIR_MAX]; -+#endif -+ - /* If we're expecting another related connection, this will be - in expected linked list */ - struct list_head sibling_list; -@@ -207,6 +236,20 @@ - } nat; - #endif /* CONFIG_IP_NF_NAT_NEEDED */ - -+#if defined(CONFIG_IP_NF_MATCH_LAYER7) || defined(CONFIG_IP_NF_MATCH_LAYER7_MODULE) -+ struct { -+ unsigned int numpackets; /* surely this is kept track of somewhere else, right? I can't find it... */ -+ char * app_proto; /* "http", "ftp", etc. NULL if unclassifed */ -+ -+ /* the application layer data so far. NULL if ->numpackets > numpackets */ -+ char * app_data; -+ -+ unsigned int app_data_len; -+ } layer7; -+#endif -+#if defined(CONFIG_IP_NF_CONNTRACK_MARK) -+ unsigned long mark; -+#endif - }; - - /* get master conntrack via master expectation */ -@@ -242,8 +285,10 @@ - const struct ip_conntrack_tuple *orig); - - /* Refresh conntrack for this many jiffies */ --extern void ip_ct_refresh(struct ip_conntrack *ct, -- unsigned long extra_jiffies); -+extern void ip_ct_refresh_acct(struct ip_conntrack *ct, -+ enum ip_conntrack_info ctinfo, -+ const struct iphdr *iph, -+ unsigned long extra_jiffies); - - /* These are for NAT. Icky. */ - /* Call me when a conntrack is destroyed. */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_h323.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_h323.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_h323.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_h323.h 2006-03-13 19:01:41.000000000 +0100 -@@ -0,0 +1,30 @@ -+#ifndef _IP_CONNTRACK_H323_H -+#define _IP_CONNTRACK_H323_H -+/* H.323 connection tracking. */ -+ -+#ifdef __KERNEL__ -+/* Protects H.323 related data */ -+DECLARE_LOCK_EXTERN(ip_h323_lock); -+#endif -+ -+/* Default H.225 port */ -+#define H225_PORT 1720 -+ -+/* This structure is per expected connection */ -+struct ip_ct_h225_expect { -+ u_int16_t port; /* Port of the H.225 helper/RTCP/RTP channel */ -+ enum ip_conntrack_dir dir; /* Direction of the original connection */ -+ unsigned int offset; /* offset of the address in the payload */ -+}; -+ -+/* This structure exists only once per master */ -+struct ip_ct_h225_master { -+ int is_h225; /* H.225 or H.245 connection */ -+#ifdef CONFIG_IP_NF_NAT_NEEDED -+ enum ip_conntrack_dir dir; /* Direction of the original connection */ -+ u_int32_t seq[IP_CT_DIR_MAX]; /* Exceptional packet mangling for signal addressess... */ -+ unsigned int offset[IP_CT_DIR_MAX]; /* ...and the offset of the addresses in the payload */ -+#endif -+}; -+ -+#endif /* _IP_CONNTRACK_H323_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_mms.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_mms.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_mms.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_mms.h 2006-03-13 19:01:41.000000000 +0100 -@@ -0,0 +1,31 @@ -+#ifndef _IP_CONNTRACK_MMS_H -+#define _IP_CONNTRACK_MMS_H -+/* MMS tracking. */ -+ -+#ifdef __KERNEL__ -+#include <linux/netfilter_ipv4/lockhelp.h> -+ -+DECLARE_LOCK_EXTERN(ip_mms_lock); -+ -+#define MMS_PORT 1755 -+#define MMS_SRV_MSG_ID 196610 -+ -+#define MMS_SRV_MSG_OFFSET 36 -+#define MMS_SRV_UNICODE_STRING_OFFSET 60 -+#define MMS_SRV_CHUNKLENLV_OFFSET 16 -+#define MMS_SRV_CHUNKLENLM_OFFSET 32 -+#define MMS_SRV_MESSAGELENGTH_OFFSET 8 -+#endif -+ -+/* This structure is per expected connection */ -+struct ip_ct_mms_expect { -+ u_int32_t len; -+ u_int32_t padding; -+ u_int16_t port; -+}; -+ -+/* This structure exists only once per master */ -+struct ip_ct_mms_master { -+}; -+ -+#endif /* _IP_CONNTRACK_MMS_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_pptp.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_pptp.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_pptp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_pptp.h 2006-03-13 19:01:41.000000000 +0100 -@@ -0,0 +1,313 @@ -+/* PPTP constants and structs */ -+#ifndef _CONNTRACK_PPTP_H -+#define _CONNTRACK_PPTP_H -+ -+/* state of the control session */ -+enum pptp_ctrlsess_state { -+ PPTP_SESSION_NONE, /* no session present */ -+ PPTP_SESSION_ERROR, /* some session error */ -+ PPTP_SESSION_STOPREQ, /* stop_sess request seen */ -+ PPTP_SESSION_REQUESTED, /* start_sess request seen */ -+ PPTP_SESSION_CONFIRMED, /* session established */ -+}; -+ -+/* state of the call inside the control session */ -+enum pptp_ctrlcall_state { -+ PPTP_CALL_NONE, -+ PPTP_CALL_ERROR, -+ PPTP_CALL_OUT_REQ, -+ PPTP_CALL_OUT_CONF, -+ PPTP_CALL_IN_REQ, -+ PPTP_CALL_IN_REP, -+ PPTP_CALL_IN_CONF, -+ PPTP_CALL_CLEAR_REQ, -+}; -+ -+ -+/* conntrack private data */ -+struct ip_ct_pptp_master { -+ enum pptp_ctrlsess_state sstate; /* session state */ -+ -+ /* everything below is going to be per-expectation in newnat, -+ * since there could be more than one call within one session */ -+ enum pptp_ctrlcall_state cstate; /* call state */ -+ u_int16_t pac_call_id; /* call id of PAC, host byte order */ -+ u_int16_t pns_call_id; /* call id of PNS, host byte order */ -+}; -+ -+/* conntrack_expect private member */ -+struct ip_ct_pptp_expect { -+ enum pptp_ctrlcall_state cstate; /* call state */ -+ u_int16_t pac_call_id; /* call id of PAC */ -+ u_int16_t pns_call_id; /* call id of PNS */ -+}; -+ -+ -+#ifdef __KERNEL__ -+ -+#include <linux/netfilter_ipv4/lockhelp.h> -+DECLARE_LOCK_EXTERN(ip_pptp_lock); -+ -+#define IP_CONNTR_PPTP PPTP_CONTROL_PORT -+ -+union pptp_ctrl_union { -+ void *rawreq; -+ struct PptpStartSessionRequest *sreq; -+ struct PptpStartSessionReply *srep; -+ struct PptpStopSessionRequest *streq; -+ struct PptpStopSessionReply *strep; -+ struct PptpOutCallRequest *ocreq; -+ struct PptpOutCallReply *ocack; -+ struct PptpInCallRequest *icreq; -+ struct PptpInCallReply *icack; -+ struct PptpInCallConnected *iccon; -+ struct PptpClearCallRequest *clrreq; -+ struct PptpCallDisconnectNotify *disc; -+ struct PptpWanErrorNotify *wanerr; -+ struct PptpSetLinkInfo *setlink; -+}; -+ -+ -+ -+#define PPTP_CONTROL_PORT 1723 -+ -+#define PPTP_PACKET_CONTROL 1 -+#define PPTP_PACKET_MGMT 2 -+ -+#define PPTP_MAGIC_COOKIE 0x1a2b3c4d -+ -+struct pptp_pkt_hdr { -+ __u16 packetLength; -+ __u16 packetType; -+ __u32 magicCookie; -+}; -+ -+/* PptpControlMessageType values */ -+#define PPTP_START_SESSION_REQUEST 1 -+#define PPTP_START_SESSION_REPLY 2 -+#define PPTP_STOP_SESSION_REQUEST 3 -+#define PPTP_STOP_SESSION_REPLY 4 -+#define PPTP_ECHO_REQUEST 5 -+#define PPTP_ECHO_REPLY 6 -+#define PPTP_OUT_CALL_REQUEST 7 -+#define PPTP_OUT_CALL_REPLY 8 -+#define PPTP_IN_CALL_REQUEST 9 -+#define PPTP_IN_CALL_REPLY 10 -+#define PPTP_IN_CALL_CONNECT 11 -+#define PPTP_CALL_CLEAR_REQUEST 12 -+#define PPTP_CALL_DISCONNECT_NOTIFY 13 -+#define PPTP_WAN_ERROR_NOTIFY 14 -+#define PPTP_SET_LINK_INFO 15 -+ -+#define PPTP_MSG_MAX 15 -+ -+/* PptpGeneralError values */ -+#define PPTP_ERROR_CODE_NONE 0 -+#define PPTP_NOT_CONNECTED 1 -+#define PPTP_BAD_FORMAT 2 -+#define PPTP_BAD_VALUE 3 -+#define PPTP_NO_RESOURCE 4 -+#define PPTP_BAD_CALLID 5 -+#define PPTP_REMOVE_DEVICE_ERROR 6 -+ -+struct PptpControlHeader { -+ __u16 messageType; -+ __u16 reserved; -+}; -+ -+/* FramingCapability Bitmap Values */ -+#define PPTP_FRAME_CAP_ASYNC 0x1 -+#define PPTP_FRAME_CAP_SYNC 0x2 -+ -+/* BearerCapability Bitmap Values */ -+#define PPTP_BEARER_CAP_ANALOG 0x1 -+#define PPTP_BEARER_CAP_DIGITAL 0x2 -+ -+struct PptpStartSessionRequest { -+ __u16 protocolVersion; -+ __u8 reserved1; -+ __u8 reserved2; -+ __u32 framingCapability; -+ __u32 bearerCapability; -+ __u16 maxChannels; -+ __u16 firmwareRevision; -+ __u8 hostName[64]; -+ __u8 vendorString[64]; -+}; -+ -+/* PptpStartSessionResultCode Values */ -+#define PPTP_START_OK 1 -+#define PPTP_START_GENERAL_ERROR 2 -+#define PPTP_START_ALREADY_CONNECTED 3 -+#define PPTP_START_NOT_AUTHORIZED 4 -+#define PPTP_START_UNKNOWN_PROTOCOL 5 -+ -+struct PptpStartSessionReply { -+ __u16 protocolVersion; -+ __u8 resultCode; -+ __u8 generalErrorCode; -+ __u32 framingCapability; -+ __u32 bearerCapability; -+ __u16 maxChannels; -+ __u16 firmwareRevision; -+ __u8 hostName[64]; -+ __u8 vendorString[64]; -+}; -+ -+/* PptpStopReasons */ -+#define PPTP_STOP_NONE 1 -+#define PPTP_STOP_PROTOCOL 2 -+#define PPTP_STOP_LOCAL_SHUTDOWN 3 -+ -+struct PptpStopSessionRequest { -+ __u8 reason; -+}; -+ -+/* PptpStopSessionResultCode */ -+#define PPTP_STOP_OK 1 -+#define PPTP_STOP_GENERAL_ERROR 2 -+ -+struct PptpStopSessionReply { -+ __u8 resultCode; -+ __u8 generalErrorCode; -+}; -+ -+struct PptpEchoRequest { -+ __u32 identNumber; -+}; -+ -+/* PptpEchoReplyResultCode */ -+#define PPTP_ECHO_OK 1 -+#define PPTP_ECHO_GENERAL_ERROR 2 -+ -+struct PptpEchoReply { -+ __u32 identNumber; -+ __u8 resultCode; -+ __u8 generalErrorCode; -+ __u16 reserved; -+}; -+ -+/* PptpFramingType */ -+#define PPTP_ASYNC_FRAMING 1 -+#define PPTP_SYNC_FRAMING 2 -+#define PPTP_DONT_CARE_FRAMING 3 -+ -+/* PptpCallBearerType */ -+#define PPTP_ANALOG_TYPE 1 -+#define PPTP_DIGITAL_TYPE 2 -+#define PPTP_DONT_CARE_BEARER_TYPE 3 -+ -+struct PptpOutCallRequest { -+ __u16 callID; -+ __u16 callSerialNumber; -+ __u32 minBPS; -+ __u32 maxBPS; -+ __u32 bearerType; -+ __u32 framingType; -+ __u16 packetWindow; -+ __u16 packetProcDelay; -+ __u16 reserved1; -+ __u16 phoneNumberLength; -+ __u16 reserved2; -+ __u8 phoneNumber[64]; -+ __u8 subAddress[64]; -+}; -+ -+/* PptpCallResultCode */ -+#define PPTP_OUTCALL_CONNECT 1 -+#define PPTP_OUTCALL_GENERAL_ERROR 2 -+#define PPTP_OUTCALL_NO_CARRIER 3 -+#define PPTP_OUTCALL_BUSY 4 -+#define PPTP_OUTCALL_NO_DIAL_TONE 5 -+#define PPTP_OUTCALL_TIMEOUT 6 -+#define PPTP_OUTCALL_DONT_ACCEPT 7 -+ -+struct PptpOutCallReply { -+ __u16 callID; -+ __u16 peersCallID; -+ __u8 resultCode; -+ __u8 generalErrorCode; -+ __u16 causeCode; -+ __u32 connectSpeed; -+ __u16 packetWindow; -+ __u16 packetProcDelay; -+ __u32 physChannelID; -+}; -+ -+struct PptpInCallRequest { -+ __u16 callID; -+ __u16 callSerialNumber; -+ __u32 callBearerType; -+ __u32 physChannelID; -+ __u16 dialedNumberLength; -+ __u16 dialingNumberLength; -+ __u8 dialedNumber[64]; -+ __u8 dialingNumber[64]; -+ __u8 subAddress[64]; -+}; -+ -+/* PptpInCallResultCode */ -+#define PPTP_INCALL_ACCEPT 1 -+#define PPTP_INCALL_GENERAL_ERROR 2 -+#define PPTP_INCALL_DONT_ACCEPT 3 -+ -+struct PptpInCallReply { -+ __u16 callID; -+ __u16 peersCallID; -+ __u8 resultCode; -+ __u8 generalErrorCode; -+ __u16 packetWindow; -+ __u16 packetProcDelay; -+ __u16 reserved; -+}; -+ -+struct PptpInCallConnected { -+ __u16 peersCallID; -+ __u16 reserved; -+ __u32 connectSpeed; -+ __u16 packetWindow; -+ __u16 packetProcDelay; -+ __u32 callFramingType; -+}; -+ -+struct PptpClearCallRequest { -+ __u16 callID; -+ __u16 reserved; -+}; -+ -+struct PptpCallDisconnectNotify { -+ __u16 callID; -+ __u8 resultCode; -+ __u8 generalErrorCode; -+ __u16 causeCode; -+ __u16 reserved; -+ __u8 callStatistics[128]; -+}; -+ -+struct PptpWanErrorNotify { -+ __u16 peersCallID; -+ __u16 reserved; -+ __u32 crcErrors; -+ __u32 framingErrors; -+ __u32 hardwareOverRuns; -+ __u32 bufferOverRuns; -+ __u32 timeoutErrors; -+ __u32 alignmentErrors; -+}; -+ -+struct PptpSetLinkInfo { -+ __u16 peersCallID; -+ __u16 reserved; -+ __u32 sendAccm; -+ __u32 recvAccm; -+}; -+ -+ -+struct pptp_priv_data { -+ __u16 call_id; -+ __u16 mcall_id; -+ __u16 pcall_id; -+}; -+ -+#endif /* __KERNEL__ */ -+#endif /* _CONNTRACK_PPTP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_proto_gre.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_proto_gre.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_proto_gre.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_proto_gre.h 2006-03-13 19:01:41.000000000 +0100 -@@ -0,0 +1,123 @@ -+#ifndef _CONNTRACK_PROTO_GRE_H -+#define _CONNTRACK_PROTO_GRE_H -+#include <asm/byteorder.h> -+ -+/* GRE PROTOCOL HEADER */ -+ -+/* GRE Version field */ -+#define GRE_VERSION_1701 0x0 -+#define GRE_VERSION_PPTP 0x1 -+ -+/* GRE Protocol field */ -+#define GRE_PROTOCOL_PPTP 0x880B -+ -+/* GRE Flags */ -+#define GRE_FLAG_C 0x80 -+#define GRE_FLAG_R 0x40 -+#define GRE_FLAG_K 0x20 -+#define GRE_FLAG_S 0x10 -+#define GRE_FLAG_A 0x80 -+ -+#define GRE_IS_C(f) ((f)&GRE_FLAG_C) -+#define GRE_IS_R(f) ((f)&GRE_FLAG_R) -+#define GRE_IS_K(f) ((f)&GRE_FLAG_K) -+#define GRE_IS_S(f) ((f)&GRE_FLAG_S) -+#define GRE_IS_A(f) ((f)&GRE_FLAG_A) -+ -+/* GRE is a mess: Four different standards */ -+struct gre_hdr { -+#if defined(__LITTLE_ENDIAN_BITFIELD) -+ __u16 rec:3, -+ srr:1, -+ seq:1, -+ key:1, -+ routing:1, -+ csum:1, -+ version:3, -+ reserved:4, -+ ack:1; -+#elif defined(__BIG_ENDIAN_BITFIELD) -+ __u16 csum:1, -+ routing:1, -+ key:1, -+ seq:1, -+ srr:1, -+ rec:3, -+ ack:1, -+ reserved:4, -+ version:3; -+#else -+#error "Adjust your <asm/byteorder.h> defines" -+#endif -+ __u16 protocol; -+}; -+ -+/* modified GRE header for PPTP */ -+struct gre_hdr_pptp { -+ __u8 flags; /* bitfield */ -+ __u8 version; /* should be GRE_VERSION_PPTP */ -+ __u16 protocol; /* should be GRE_PROTOCOL_PPTP */ -+ __u16 payload_len; /* size of ppp payload, not inc. gre header */ -+ __u16 call_id; /* peer's call_id for this session */ -+ __u32 seq; /* sequence number. Present if S==1 */ -+ __u32 ack; /* seq number of highest packet recieved by */ -+ /* sender in this session */ -+}; -+ -+ -+/* this is part of ip_conntrack */ -+struct ip_ct_gre { -+ unsigned int stream_timeout; -+ unsigned int timeout; -+}; -+ -+/* this is part of ip_conntrack_expect */ -+struct ip_ct_gre_expect { -+ struct ip_ct_gre_keymap *keymap_orig, *keymap_reply; -+}; -+ -+#ifdef __KERNEL__ -+struct ip_conntrack_expect; -+ -+/* structure for original <-> reply keymap */ -+struct ip_ct_gre_keymap { -+ struct list_head list; -+ -+ struct ip_conntrack_tuple tuple; -+}; -+ -+ -+/* add new tuple->key_reply pair to keymap */ -+int ip_ct_gre_keymap_add(struct ip_conntrack_expect *exp, -+ struct ip_conntrack_tuple *t, -+ int reply); -+ -+/* change an existing keymap entry */ -+void ip_ct_gre_keymap_change(struct ip_ct_gre_keymap *km, -+ struct ip_conntrack_tuple *t); -+ -+/* delete keymap entries */ -+void ip_ct_gre_keymap_destroy(struct ip_conntrack_expect *exp); -+ -+ -+/* get pointer to gre key, if present */ -+static inline u_int32_t *gre_key(struct gre_hdr *greh) -+{ -+ if (!greh->key) -+ return NULL; -+ if (greh->csum || greh->routing) -+ return (u_int32_t *) (greh+sizeof(*greh)+4); -+ return (u_int32_t *) (greh+sizeof(*greh)); -+} -+ -+/* get pointer ot gre csum, if present */ -+static inline u_int16_t *gre_csum(struct gre_hdr *greh) -+{ -+ if (!greh->csum) -+ return NULL; -+ return (u_int16_t *) (greh+sizeof(*greh)); -+} -+ -+#endif /* __KERNEL__ */ -+ -+#endif /* _CONNTRACK_PROTO_GRE_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_rtsp.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_rtsp.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_rtsp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_rtsp.h 2006-03-13 19:01:41.000000000 +0100 -@@ -0,0 +1,68 @@ -+/* -+ * RTSP extension for IP connection tracking. -+ * (C) 2003 by Tom Marshall <tmarshall@real.com> -+ * based on ip_conntrack_irc.h -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it 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. -+ */ -+#ifndef _IP_CONNTRACK_RTSP_H -+#define _IP_CONNTRACK_RTSP_H -+ -+/* #define IP_NF_RTSP_DEBUG */ -+#define IP_NF_RTSP_VERSION "0.01" -+ -+/* port block types */ -+typedef enum { -+ pb_single, /* client_port=x */ -+ pb_range, /* client_port=x-y */ -+ pb_discon /* client_port=x/y (rtspbis) */ -+} portblock_t; -+ -+/* We record seq number and length of rtsp headers here, all in host order. */ -+ -+/* -+ * This structure is per expected connection. It is a member of struct -+ * ip_conntrack_expect. The TCP SEQ for the conntrack expect is stored -+ * there and we are expected to only store the length of the data which -+ * needs replaced. If a packet contains multiple RTSP messages, we create -+ * one expected connection per message. -+ * -+ * We use these variables to mark the entire header block. This may seem -+ * like overkill, but the nature of RTSP requires it. A header may appear -+ * multiple times in a message. We must treat two Transport headers the -+ * same as one Transport header with two entries. -+ */ -+struct ip_ct_rtsp_expect -+{ -+ u_int32_t len; /* length of header block */ -+ portblock_t pbtype; /* Type of port block that was requested */ -+ u_int16_t loport; /* Port that was requested, low or first */ -+ u_int16_t hiport; /* Port that was requested, high or second */ -+#if 0 -+ uint method; /* RTSP method */ -+ uint cseq; /* CSeq from request */ -+#endif -+}; -+ -+/* This structure exists only once per master */ -+struct ip_ct_rtsp_master -+{ -+ /* Empty (?) */ -+}; -+ -+ -+#ifdef __KERNEL__ -+ -+#include <linux/netfilter_ipv4/lockhelp.h> -+ -+#define RTSP_PORT 554 -+ -+/* Protects rtsp part of conntracks */ -+DECLARE_LOCK_EXTERN(ip_rtsp_lock); -+ -+#endif /* __KERNEL__ */ -+ -+#endif /* _IP_CONNTRACK_RTSP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_tuple.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_tuple.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_conntrack_tuple.h 2003-11-28 19:26:21.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_conntrack_tuple.h 2006-03-13 18:55:57.000000000 +0100 -@@ -14,7 +14,7 @@ - union ip_conntrack_manip_proto - { - /* Add other protocols here. */ -- u_int16_t all; -+ u_int32_t all; - - struct { - u_int16_t port; -@@ -25,6 +25,9 @@ - struct { - u_int16_t id; - } icmp; -+ struct { -+ u_int32_t key; -+ } gre; - }; - - /* The manipulable part of the tuple. */ -@@ -44,7 +47,7 @@ - u_int32_t ip; - union { - /* Add other protocols here. */ -- u_int16_t all; -+ u_int32_t all; - - struct { - u_int16_t port; -@@ -55,6 +58,9 @@ - struct { - u_int8_t type, code; - } icmp; -+ struct { -+ u_int32_t key; -+ } gre; - } u; - - /* The protocol. */ -@@ -80,10 +86,16 @@ - #ifdef __KERNEL__ - - #define DUMP_TUPLE(tp) \ --DEBUGP("tuple %p: %u %u.%u.%u.%u:%hu -> %u.%u.%u.%u:%hu\n", \ -+DEBUGP("tuple %p: %u %u.%u.%u.%u:%u -> %u.%u.%u.%u:%u\n", \ - (tp), (tp)->dst.protonum, \ -- NIPQUAD((tp)->src.ip), ntohs((tp)->src.u.all), \ -- NIPQUAD((tp)->dst.ip), ntohs((tp)->dst.u.all)) -+ NIPQUAD((tp)->src.ip), ntohl((tp)->src.u.all), \ -+ NIPQUAD((tp)->dst.ip), ntohl((tp)->dst.u.all)) -+ -+#define DUMP_TUPLE_RAW(x) \ -+ DEBUGP("tuple %p: %u %u.%u.%u.%u:0x%08x -> %u.%u.%u.%u:0x%08x\n",\ -+ (x), (x)->dst.protonum, \ -+ NIPQUAD((x)->src.ip), ntohl((x)->src.u.all), \ -+ NIPQUAD((x)->dst.ip), ntohl((x)->dst.u.all)) - - #define CTINFO2DIR(ctinfo) ((ctinfo) >= IP_CT_IS_REPLY ? IP_CT_DIR_REPLY : IP_CT_DIR_ORIGINAL) - -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_nat_pptp.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_nat_pptp.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_nat_pptp.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_nat_pptp.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,11 @@ -+/* PPTP constants and structs */ -+#ifndef _NAT_PPTP_H -+#define _NAT_PPTP_H -+ -+/* conntrack private data */ -+struct ip_nat_pptp { -+ u_int16_t pns_call_id; /* NAT'ed PNS call id */ -+ u_int16_t pac_call_id; /* NAT'ed PAC call id */ -+}; -+ -+#endif /* _NAT_PPTP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,489 @@ -+#ifndef _IP_SET_H -+#define _IP_SET_H -+ -+/* Copyright (C) 2000-2002 Joakim Axelsson <gozem@linux.nu> -+ * Patrick Schaaf <bof@bof.de> -+ * Martin Josefsson <gandalf@wlug.westbo.se> -+ * Copyright (C) 2003-2004 Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ */ -+ -+/* -+ * A sockopt of such quality has hardly ever been seen before on the open -+ * market! This little beauty, hardly ever used: above 64, so it's -+ * traditionally used for firewalling, not touched (even once!) by the -+ * 2.0, 2.2 and 2.4 kernels! -+ * -+ * Comes with its own certificate of authenticity, valid anywhere in the -+ * Free world! -+ * -+ * Rusty, 19.4.2000 -+ */ -+#define SO_IP_SET 83 -+ -+/* -+ * Heavily modify by Joakim Axelsson 08.03.2002 -+ * - Made it more modulebased -+ * -+ * Additional heavy modifications by Jozsef Kadlecsik 22.02.2004 -+ * - bindings added -+ * - in order to "deal with" backward compatibility, renamed to ipset -+ */ -+ -+/* -+ * Used so that the kernel module and ipset-binary can match their versions -+ */ -+#define IP_SET_PROTOCOL_VERSION 2 -+ -+#define IP_SET_MAXNAMELEN 32 /* set names and set typenames */ -+ -+/* Lets work with our own typedef for representing an IP address. -+ * We hope to make the code more portable, possibly to IPv6... -+ * -+ * The representation works in HOST byte order, because most set types -+ * will perform arithmetic operations and compare operations. -+ * -+ * For now the type is an uint32_t. -+ * -+ * Make sure to ONLY use the functions when translating and parsing -+ * in order to keep the host byte order and make it more portable: -+ * parse_ip() -+ * parse_mask() -+ * parse_ipandmask() -+ * ip_tostring() -+ * (Joakim: where are they???) -+ */ -+ -+typedef uint32_t ip_set_ip_t; -+ -+/* Sets are identified by an id in kernel space. Tweak with ip_set_id_t -+ * and IP_SET_INVALID_ID if you want to increase the max number of sets. -+ */ -+typedef uint16_t ip_set_id_t; -+ -+#define IP_SET_INVALID_ID 65535 -+ -+/* How deep we follow bindings */ -+#define IP_SET_MAX_BINDINGS 6 -+ -+/* -+ * Option flags for kernel operations (ipt_set_info) -+ */ -+#define IPSET_SRC 0x01 /* Source match/add */ -+#define IPSET_DST 0x02 /* Destination match/add */ -+#define IPSET_MATCH_INV 0x04 /* Inverse matching */ -+ -+/* -+ * Set types (flavours) -+ */ -+#define IPSET_TYPE_IP 0 /* IP address type of set */ -+#define IPSET_TYPE_PORT 1 /* Port type of set */ -+ -+/* Reserved keywords */ -+#define IPSET_TOKEN_DEFAULT ":default:" -+#define IPSET_TOKEN_ALL ":all:" -+ -+/* SO_IP_SET operation constants, and their request struct types. -+ * -+ * Operation ids: -+ * 0-99: commands with version checking -+ * 100-199: add/del/test/bind/unbind -+ * 200-299: list, save, restore -+ */ -+ -+/* Single shot operations: -+ * version, create, destroy, flush, rename and swap -+ * -+ * Sets are identified by name. -+ */ -+ -+#define IP_SET_REQ_STD \ -+ unsigned op; \ -+ unsigned version; \ -+ char name[IP_SET_MAXNAMELEN] -+ -+#define IP_SET_OP_CREATE 0x00000001 /* Create a new (empty) set */ -+struct ip_set_req_create { -+ IP_SET_REQ_STD; -+ char typename[IP_SET_MAXNAMELEN]; -+}; -+ -+#define IP_SET_OP_DESTROY 0x00000002 /* Remove a (empty) set */ -+struct ip_set_req_std { -+ IP_SET_REQ_STD; -+}; -+ -+#define IP_SET_OP_FLUSH 0x00000003 /* Remove all IPs in a set */ -+/* Uses ip_set_req_std */ -+ -+#define IP_SET_OP_RENAME 0x00000004 /* Rename a set */ -+/* Uses ip_set_req_create */ -+ -+#define IP_SET_OP_SWAP 0x00000005 /* Swap two sets */ -+/* Uses ip_set_req_create */ -+ -+union ip_set_name_index { -+ char name[IP_SET_MAXNAMELEN]; -+ ip_set_id_t index; -+}; -+ -+#define IP_SET_OP_GET_BYNAME 0x00000006 /* Get set index by name */ -+struct ip_set_req_get_set { -+ unsigned op; -+ unsigned version; -+ union ip_set_name_index set; -+}; -+ -+#define IP_SET_OP_GET_BYINDEX 0x00000007 /* Get set name by index */ -+/* Uses ip_set_req_get_set */ -+ -+#define IP_SET_OP_VERSION 0x00000100 /* Ask kernel version */ -+struct ip_set_req_version { -+ unsigned op; -+ unsigned version; -+}; -+ -+/* Double shots operations: -+ * add, del, test, bind and unbind. -+ * -+ * First we query the kernel to get the index and type of the target set, -+ * then issue the command. Validity of IP is checked in kernel in order -+ * to minimalize sockopt operations. -+ */ -+ -+/* Get minimal set data for add/del/test/bind/unbind IP */ -+#define IP_SET_OP_ADT_GET 0x00000010 /* Get set and type */ -+struct ip_set_req_adt_get { -+ unsigned op; -+ unsigned version; -+ union ip_set_name_index set; -+ char typename[IP_SET_MAXNAMELEN]; -+}; -+ -+#define IP_SET_REQ_BYINDEX \ -+ unsigned op; \ -+ ip_set_id_t index; -+ -+struct ip_set_req_adt { -+ IP_SET_REQ_BYINDEX; -+}; -+ -+#define IP_SET_OP_ADD_IP 0x00000101 /* Add an IP to a set */ -+/* Uses ip_set_req_adt, with type specific addage */ -+ -+#define IP_SET_OP_DEL_IP 0x00000102 /* Remove an IP from a set */ -+/* Uses ip_set_req_adt, with type specific addage */ -+ -+#define IP_SET_OP_TEST_IP 0x00000103 /* Test an IP in a set */ -+/* Uses ip_set_req_adt, with type specific addage */ -+ -+#define IP_SET_OP_BIND_SET 0x00000104 /* Bind an IP to a set */ -+/* Uses ip_set_req_bind, with type specific addage */ -+struct ip_set_req_bind { -+ IP_SET_REQ_BYINDEX; -+ char binding[IP_SET_MAXNAMELEN]; -+}; -+ -+#define IP_SET_OP_UNBIND_SET 0x00000105 /* Unbind an IP from a set */ -+/* Uses ip_set_req_bind, with type speficic addage -+ * index = 0 means unbinding for all sets */ -+ -+#define IP_SET_OP_TEST_BIND_SET 0x00000106 /* Test binding an IP to a set */ -+/* Uses ip_set_req_bind, with type specific addage */ -+ -+/* Multiple shots operations: list, save, restore. -+ * -+ * - check kernel version and query the max number of sets -+ * - get the basic information on all sets -+ * and size required for the next step -+ * - get actual set data: header, data, bindings -+ */ -+ -+/* Get max_sets and the index of a queried set -+ */ -+#define IP_SET_OP_MAX_SETS 0x00000020 -+struct ip_set_req_max_sets { -+ unsigned op; -+ unsigned version; -+ ip_set_id_t max_sets; /* max_sets */ -+ ip_set_id_t sets; /* real number of sets */ -+ union ip_set_name_index set; /* index of set if name used */ -+}; -+ -+/* Get the id and name of the sets plus size for next step */ -+#define IP_SET_OP_LIST_SIZE 0x00000201 -+#define IP_SET_OP_SAVE_SIZE 0x00000202 -+struct ip_set_req_setnames { -+ unsigned op; -+ ip_set_id_t index; /* set to list/save */ -+ size_t size; /* size to get setdata/bindings */ -+ /* followed by sets number of struct ip_set_name_list */ -+}; -+ -+struct ip_set_name_list { -+ char name[IP_SET_MAXNAMELEN]; -+ char typename[IP_SET_MAXNAMELEN]; -+ ip_set_id_t index; -+ ip_set_id_t id; -+}; -+ -+/* The actual list operation */ -+#define IP_SET_OP_LIST 0x00000203 -+struct ip_set_req_list { -+ IP_SET_REQ_BYINDEX; -+ /* sets number of struct ip_set_list in reply */ -+}; -+ -+struct ip_set_list { -+ ip_set_id_t index; -+ ip_set_id_t binding; -+ u_int32_t ref; -+ size_t header_size; /* Set header data of header_size */ -+ size_t members_size; /* Set members data of members_size */ -+ size_t bindings_size; /* Set bindings data of bindings_size */ -+}; -+ -+struct ip_set_hash_list { -+ ip_set_ip_t ip; -+ ip_set_id_t binding; -+}; -+ -+/* The save operation */ -+#define IP_SET_OP_SAVE 0x00000204 -+/* Uses ip_set_req_list, in the reply replaced by -+ * sets number of struct ip_set_save plus a marker -+ * ip_set_save followed by ip_set_hash_save structures. -+ */ -+struct ip_set_save { -+ ip_set_id_t index; -+ ip_set_id_t binding; -+ size_t header_size; /* Set header data of header_size */ -+ size_t members_size; /* Set members data of members_size */ -+}; -+ -+/* At restoring, ip == 0 means default binding for the given set: */ -+struct ip_set_hash_save { -+ ip_set_ip_t ip; -+ ip_set_id_t id; -+ ip_set_id_t binding; -+}; -+ -+/* The restore operation */ -+#define IP_SET_OP_RESTORE 0x00000205 -+/* Uses ip_set_req_setnames followed by ip_set_restore structures -+ * plus a marker ip_set_restore, followed by ip_set_hash_save -+ * structures. -+ */ -+struct ip_set_restore { -+ char name[IP_SET_MAXNAMELEN]; -+ char typename[IP_SET_MAXNAMELEN]; -+ ip_set_id_t index; -+ size_t header_size; /* Create data of header_size */ -+ size_t members_size; /* Set members data of members_size */ -+}; -+ -+static inline int bitmap_bytes(ip_set_ip_t a, ip_set_ip_t b) -+{ -+ return 4 * ((((b - a + 8) / 8) + 3) / 4); -+} -+ -+#ifdef __KERNEL__ -+ -+#define ip_set_printk(format, args...) \ -+ do { \ -+ printk("%s: %s: ", __FILE__, __FUNCTION__); \ -+ printk(format "\n" , ## args); \ -+ } while (0) -+ -+#if defined(IP_SET_DEBUG) -+#define DP(format, args...) \ -+ do { \ -+ printk("%s: %s (DBG): ", __FILE__, __FUNCTION__);\ -+ printk(format "\n" , ## args); \ -+ } while (0) -+#define IP_SET_ASSERT(x) \ -+ do { \ -+ if (!(x)) \ -+ printk("IP_SET_ASSERT: %s:%i(%s)\n", \ -+ __FILE__, __LINE__, __FUNCTION__); \ -+ } while (0) -+#else -+#define DP(format, args...) -+#define IP_SET_ASSERT(x) -+#endif -+ -+struct ip_set; -+ -+/* -+ * The ip_set_type definition - one per set type, e.g. "ipmap". -+ * -+ * Each individual set has a pointer, set->type, going to one -+ * of these structures. Function pointers inside the structure implement -+ * the real behaviour of the sets. -+ * -+ * If not mentioned differently, the implementation behind the function -+ * pointers of a set_type, is expected to return 0 if ok, and a negative -+ * errno (e.g. -EINVAL) on error. -+ */ -+struct ip_set_type { -+ struct list_head list; /* next in list of set types */ -+ -+ /* test for IP in set (kernel: iptables -m set src|dst) -+ * return 0 if not in set, 1 if in set. -+ */ -+ int (*testip_kernel) (struct ip_set *set, -+ const struct sk_buff * skb, -+ u_int32_t flags, -+ ip_set_ip_t *ip); -+ -+ /* test for IP in set (userspace: ipset -T set IP) -+ * return 0 if not in set, 1 if in set. -+ */ -+ int (*testip) (struct ip_set *set, -+ const void *data, size_t size, -+ ip_set_ip_t *ip); -+ -+ /* -+ * Size of the data structure passed by when -+ * adding/deletin/testing an entry. -+ */ -+ size_t reqsize; -+ -+ /* Add IP into set (userspace: ipset -A set IP) -+ * Return -EEXIST if the address is already in the set, -+ * and -ERANGE if the address lies outside the set bounds. -+ * If the address was not already in the set, 0 is returned. -+ */ -+ int (*addip) (struct ip_set *set, -+ const void *data, size_t size, -+ ip_set_ip_t *ip); -+ -+ /* Add IP into set (kernel: iptables ... -j SET set src|dst) -+ * Return -EEXIST if the address is already in the set, -+ * and -ERANGE if the address lies outside the set bounds. -+ * If the address was not already in the set, 0 is returned. -+ */ -+ int (*addip_kernel) (struct ip_set *set, -+ const struct sk_buff * skb, -+ u_int32_t flags, -+ ip_set_ip_t *ip); -+ -+ /* remove IP from set (userspace: ipset -D set --entry x) -+ * Return -EEXIST if the address is NOT in the set, -+ * and -ERANGE if the address lies outside the set bounds. -+ * If the address really was in the set, 0 is returned. -+ */ -+ int (*delip) (struct ip_set *set, -+ const void *data, size_t size, -+ ip_set_ip_t *ip); -+ -+ /* remove IP from set (kernel: iptables ... -j SET --entry x) -+ * Return -EEXIST if the address is NOT in the set, -+ * and -ERANGE if the address lies outside the set bounds. -+ * If the address really was in the set, 0 is returned. -+ */ -+ int (*delip_kernel) (struct ip_set *set, -+ const struct sk_buff * skb, -+ u_int32_t flags, -+ ip_set_ip_t *ip); -+ -+ /* new set creation - allocated type specific items -+ */ -+ int (*create) (struct ip_set *set, -+ const void *data, size_t size); -+ -+ /* retry the operation after successfully tweaking the set -+ */ -+ int (*retry) (struct ip_set *set); -+ -+ /* set destruction - free type specific items -+ * There is no return value. -+ * Can be called only when child sets are destroyed. -+ */ -+ void (*destroy) (struct ip_set *set); -+ -+ /* set flushing - reset all bits in the set, or something similar. -+ * There is no return value. -+ */ -+ void (*flush) (struct ip_set *set); -+ -+ /* Listing: size needed for header -+ */ -+ size_t header_size; -+ -+ /* Listing: Get the header -+ * -+ * Fill in the information in "data". -+ * This function is always run after list_header_size() under a -+ * writelock on the set. Therefor is the length of "data" always -+ * correct. -+ */ -+ void (*list_header) (const struct ip_set *set, -+ void *data); -+ -+ /* Listing: Get the size for the set members -+ */ -+ int (*list_members_size) (const struct ip_set *set); -+ -+ /* Listing: Get the set members -+ * -+ * Fill in the information in "data". -+ * This function is always run after list_member_size() under a -+ * writelock on the set. Therefor is the length of "data" always -+ * correct. -+ */ -+ void (*list_members) (const struct ip_set *set, -+ void *data); -+ -+ char typename[IP_SET_MAXNAMELEN]; -+ char typecode; -+ int protocol_version; -+ -+ /* Set this to THIS_MODULE if you are a module, otherwise NULL */ -+ struct module *me; -+}; -+ -+extern int ip_set_register_set_type(struct ip_set_type *set_type); -+extern void ip_set_unregister_set_type(struct ip_set_type *set_type); -+ -+/* A generic ipset */ -+struct ip_set { -+ char name[IP_SET_MAXNAMELEN]; /* the name of the set */ -+ rwlock_t lock; /* lock for concurrency control */ -+ ip_set_id_t id; /* set id for swapping */ -+ ip_set_id_t binding; /* default binding for the set */ -+ atomic_t ref; /* in kernel and in hash references */ -+ struct ip_set_type *type; /* the set types */ -+ void *data; /* pooltype specific data */ -+}; -+ -+/* Structure to bind set elements to sets */ -+struct ip_set_hash { -+ struct list_head list; /* list of clashing entries in hash */ -+ ip_set_ip_t ip; /* ip from set */ -+ ip_set_id_t id; /* set id */ -+ ip_set_id_t binding; /* set we bind the element to */ -+}; -+ -+/* register and unregister set references */ -+extern ip_set_id_t ip_set_get_byname(const char name[IP_SET_MAXNAMELEN]); -+extern ip_set_id_t ip_set_get_byindex(ip_set_id_t id); -+extern void ip_set_put(ip_set_id_t id); -+ -+/* API for iptables set match, and SET target */ -+extern void ip_set_addip_kernel(ip_set_id_t id, -+ const struct sk_buff *skb, -+ const u_int32_t *flags); -+extern void ip_set_delip_kernel(ip_set_id_t id, -+ const struct sk_buff *skb, -+ const u_int32_t *flags); -+extern int ip_set_testip_kernel(ip_set_id_t id, -+ const struct sk_buff *skb, -+ const u_int32_t *flags); -+ -+#endif /* __KERNEL__ */ -+ -+#endif /*_IP_SET_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_iphash.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_iphash.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_iphash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_iphash.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,30 @@ -+#ifndef __IP_SET_IPHASH_H -+#define __IP_SET_IPHASH_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "iphash" -+#define MAX_RANGE 0x0000FFFF -+ -+struct ip_set_iphash { -+ ip_set_ip_t *members; /* the iphash proper */ -+ uint32_t initval; /* initval for jhash_1word */ -+ uint32_t prime; /* prime for double hashing */ -+ uint32_t hashsize; /* hash size */ -+ uint16_t probes; /* max number of probes */ -+ uint16_t resize; /* resize factor in percent */ -+ ip_set_ip_t netmask; /* netmask */ -+}; -+ -+struct ip_set_req_iphash_create { -+ uint32_t hashsize; -+ uint16_t probes; -+ uint16_t resize; -+ ip_set_ip_t netmask; -+}; -+ -+struct ip_set_req_iphash { -+ ip_set_ip_t ip; -+}; -+ -+#endif /* __IP_SET_IPHASH_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_ipmap.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_ipmap.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_ipmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_ipmap.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,56 @@ -+#ifndef __IP_SET_IPMAP_H -+#define __IP_SET_IPMAP_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "ipmap" -+#define MAX_RANGE 0x0000FFFF -+ -+struct ip_set_ipmap { -+ void *members; /* the ipmap proper */ -+ ip_set_ip_t first_ip; /* host byte order, included in range */ -+ ip_set_ip_t last_ip; /* host byte order, included in range */ -+ ip_set_ip_t netmask; /* subnet netmask */ -+ ip_set_ip_t sizeid; /* size of set in IPs */ -+ u_int16_t hosts; /* number of hosts in a subnet */ -+}; -+ -+struct ip_set_req_ipmap_create { -+ ip_set_ip_t from; -+ ip_set_ip_t to; -+ ip_set_ip_t netmask; -+}; -+ -+struct ip_set_req_ipmap { -+ ip_set_ip_t ip; -+}; -+ -+unsigned int -+mask_to_bits(ip_set_ip_t mask) -+{ -+ unsigned int bits = 32; -+ ip_set_ip_t maskaddr; -+ -+ if (mask == 0xFFFFFFFF) -+ return bits; -+ -+ maskaddr = 0xFFFFFFFE; -+ while (--bits >= 0 && maskaddr != mask) -+ maskaddr <<= 1; -+ -+ return bits; -+} -+ -+ip_set_ip_t -+range_to_mask(ip_set_ip_t from, ip_set_ip_t to, unsigned int *bits) -+{ -+ ip_set_ip_t mask = 0xFFFFFFFE; -+ -+ *bits = 32; -+ while (--(*bits) >= 0 && mask && (to & mask) != from) -+ mask <<= 1; -+ -+ return mask; -+} -+ -+#endif /* __IP_SET_IPMAP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_iptree.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_iptree.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_iptree.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_iptree.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,39 @@ -+#ifndef __IP_SET_IPTREE_H -+#define __IP_SET_IPTREE_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "iptree" -+#define MAX_RANGE 0x0000FFFF -+ -+struct ip_set_iptreed { -+ unsigned long expires[255]; /* x.x.x.ADDR */ -+}; -+ -+struct ip_set_iptreec { -+ struct ip_set_iptreed *tree[255]; /* x.x.ADDR.* */ -+}; -+ -+struct ip_set_iptreeb { -+ struct ip_set_iptreec *tree[255]; /* x.ADDR.*.* */ -+}; -+ -+struct ip_set_iptree { -+ unsigned int timeout; -+ unsigned int gc_interval; -+#ifdef __KERNEL__ -+ struct timer_list gc; -+ struct ip_set_iptreeb *tree[255]; /* ADDR.*.*.* */ -+#endif -+}; -+ -+struct ip_set_req_iptree_create { -+ unsigned int timeout; -+}; -+ -+struct ip_set_req_iptree { -+ ip_set_ip_t ip; -+ unsigned int timeout; -+}; -+ -+#endif /* __IP_SET_IPTREE_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_jhash.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_jhash.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_jhash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_jhash.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,148 @@ -+#ifndef _LINUX_IPSET_JHASH_H -+#define _LINUX_IPSET_JHASH_H -+ -+/* This is a copy of linux/jhash.h but the types u32/u8 are changed -+ * to __u32/__u8 so that the header file can be included into -+ * userspace code as well. Jozsef Kadlecsik (kadlec@blackhole.kfki.hu) -+ */ -+ -+/* jhash.h: Jenkins hash support. -+ * -+ * Copyright (C) 1996 Bob Jenkins (bob_jenkins@burtleburtle.net) -+ * -+ * http://burtleburtle.net/bob/hash/ -+ * -+ * These are the credits from Bob's sources: -+ * -+ * lookup2.c, by Bob Jenkins, December 1996, Public Domain. -+ * hash(), hash2(), hash3, and mix() are externally useful functions. -+ * Routines to test the hash are included if SELF_TEST is defined. -+ * You can use this free for any purpose. It has no warranty. -+ * -+ * Copyright (C) 2003 David S. Miller (davem@redhat.com) -+ * -+ * I've modified Bob's hash to be useful in the Linux kernel, and -+ * any bugs present are surely my fault. -DaveM -+ */ -+ -+/* NOTE: Arguments are modified. */ -+#define __jhash_mix(a, b, c) \ -+{ \ -+ a -= b; a -= c; a ^= (c>>13); \ -+ b -= c; b -= a; b ^= (a<<8); \ -+ c -= a; c -= b; c ^= (b>>13); \ -+ a -= b; a -= c; a ^= (c>>12); \ -+ b -= c; b -= a; b ^= (a<<16); \ -+ c -= a; c -= b; c ^= (b>>5); \ -+ a -= b; a -= c; a ^= (c>>3); \ -+ b -= c; b -= a; b ^= (a<<10); \ -+ c -= a; c -= b; c ^= (b>>15); \ -+} -+ -+/* The golden ration: an arbitrary value */ -+#define JHASH_GOLDEN_RATIO 0x9e3779b9 -+ -+/* The most generic version, hashes an arbitrary sequence -+ * of bytes. No alignment or length assumptions are made about -+ * the input key. -+ */ -+static inline __u32 jhash(void *key, __u32 length, __u32 initval) -+{ -+ __u32 a, b, c, len; -+ __u8 *k = key; -+ -+ len = length; -+ a = b = JHASH_GOLDEN_RATIO; -+ c = initval; -+ -+ while (len >= 12) { -+ a += (k[0] +((__u32)k[1]<<8) +((__u32)k[2]<<16) +((__u32)k[3]<<24)); -+ b += (k[4] +((__u32)k[5]<<8) +((__u32)k[6]<<16) +((__u32)k[7]<<24)); -+ c += (k[8] +((__u32)k[9]<<8) +((__u32)k[10]<<16)+((__u32)k[11]<<24)); -+ -+ __jhash_mix(a,b,c); -+ -+ k += 12; -+ len -= 12; -+ } -+ -+ c += length; -+ switch (len) { -+ case 11: c += ((__u32)k[10]<<24); -+ case 10: c += ((__u32)k[9]<<16); -+ case 9 : c += ((__u32)k[8]<<8); -+ case 8 : b += ((__u32)k[7]<<24); -+ case 7 : b += ((__u32)k[6]<<16); -+ case 6 : b += ((__u32)k[5]<<8); -+ case 5 : b += k[4]; -+ case 4 : a += ((__u32)k[3]<<24); -+ case 3 : a += ((__u32)k[2]<<16); -+ case 2 : a += ((__u32)k[1]<<8); -+ case 1 : a += k[0]; -+ }; -+ -+ __jhash_mix(a,b,c); -+ -+ return c; -+} -+ -+/* A special optimized version that handles 1 or more of __u32s. -+ * The length parameter here is the number of __u32s in the key. -+ */ -+static inline __u32 jhash2(__u32 *k, __u32 length, __u32 initval) -+{ -+ __u32 a, b, c, len; -+ -+ a = b = JHASH_GOLDEN_RATIO; -+ c = initval; -+ len = length; -+ -+ while (len >= 3) { -+ a += k[0]; -+ b += k[1]; -+ c += k[2]; -+ __jhash_mix(a, b, c); -+ k += 3; len -= 3; -+ } -+ -+ c += length * 4; -+ -+ switch (len) { -+ case 2 : b += k[1]; -+ case 1 : a += k[0]; -+ }; -+ -+ __jhash_mix(a,b,c); -+ -+ return c; -+} -+ -+ -+/* A special ultra-optimized versions that knows they are hashing exactly -+ * 3, 2 or 1 word(s). -+ * -+ * NOTE: In partilar the "c += length; __jhash_mix(a,b,c);" normally -+ * done at the end is not done here. -+ */ -+static inline __u32 jhash_3words(__u32 a, __u32 b, __u32 c, __u32 initval) -+{ -+ a += JHASH_GOLDEN_RATIO; -+ b += JHASH_GOLDEN_RATIO; -+ c += initval; -+ -+ __jhash_mix(a, b, c); -+ -+ return c; -+} -+ -+static inline __u32 jhash_2words(__u32 a, __u32 b, __u32 initval) -+{ -+ return jhash_3words(a, b, 0, initval); -+} -+ -+static inline __u32 jhash_1word(__u32 a, __u32 initval) -+{ -+ return jhash_3words(a, 0, 0, initval); -+} -+ -+#endif /* _LINUX_IPSET_JHASH_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_macipmap.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_macipmap.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_macipmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_macipmap.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,38 @@ -+#ifndef __IP_SET_MACIPMAP_H -+#define __IP_SET_MACIPMAP_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "macipmap" -+#define MAX_RANGE 0x0000FFFF -+ -+/* general flags */ -+#define IPSET_MACIP_MATCHUNSET 1 -+ -+/* per ip flags */ -+#define IPSET_MACIP_ISSET 1 -+ -+struct ip_set_macipmap { -+ void *members; /* the macipmap proper */ -+ ip_set_ip_t first_ip; /* host byte order, included in range */ -+ ip_set_ip_t last_ip; /* host byte order, included in range */ -+ u_int32_t flags; -+}; -+ -+struct ip_set_req_macipmap_create { -+ ip_set_ip_t from; -+ ip_set_ip_t to; -+ u_int32_t flags; -+}; -+ -+struct ip_set_req_macipmap { -+ ip_set_ip_t ip; -+ unsigned char ethernet[ETH_ALEN]; -+}; -+ -+struct ip_set_macip { -+ unsigned short flags; -+ unsigned char ethernet[ETH_ALEN]; -+}; -+ -+#endif /* __IP_SET_MACIPMAP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_malloc.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_malloc.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_malloc.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_malloc.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,27 @@ -+#ifndef _IP_SET_MALLOC_H -+#define _IP_SET_MALLOC_H -+ -+#ifdef __KERNEL__ -+ -+/* Memory allocation and deallocation */ -+static size_t max_malloc_size = 131072; /* Guaranteed: slab.c */ -+ -+static inline void * ip_set_malloc(size_t bytes) -+{ -+ if (bytes > max_malloc_size) -+ return vmalloc(bytes); -+ else -+ return kmalloc(bytes, GFP_KERNEL); -+} -+ -+static inline void ip_set_free(void * data, size_t bytes) -+{ -+ if (bytes > max_malloc_size) -+ vfree(data); -+ else -+ kfree(data); -+} -+ -+#endif /* __KERNEL__ */ -+ -+#endif /*_IP_SET_MALLOC_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_nethash.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_nethash.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_nethash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_nethash.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,55 @@ -+#ifndef __IP_SET_NETHASH_H -+#define __IP_SET_NETHASH_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "nethash" -+#define MAX_RANGE 0x0000FFFF -+ -+struct ip_set_nethash { -+ ip_set_ip_t *members; /* the nethash proper */ -+ uint32_t initval; /* initval for jhash_1word */ -+ uint32_t prime; /* prime for double hashing */ -+ uint32_t hashsize; /* hash size */ -+ uint16_t probes; /* max number of probes */ -+ uint16_t resize; /* resize factor in percent */ -+ unsigned char cidr[30]; /* CIDR sizes */ -+}; -+ -+struct ip_set_req_nethash_create { -+ uint32_t hashsize; -+ uint16_t probes; -+ uint16_t resize; -+}; -+ -+struct ip_set_req_nethash { -+ ip_set_ip_t ip; -+ unsigned char cidr; -+}; -+ -+static unsigned char shifts[] = {255, 253, 249, 241, 225, 193, 129, 1}; -+ -+static inline ip_set_ip_t -+pack(ip_set_ip_t ip, unsigned char cidr) -+{ -+ ip_set_ip_t addr, *paddr = &addr; -+ unsigned char n, t, *a; -+ -+ addr = htonl(ip & (0xFFFFFFFF << (32 - (cidr)))); -+#ifdef __KERNEL__ -+ DP("ip:%u.%u.%u.%u/%u", NIPQUAD(addr), cidr); -+#endif -+ n = cidr / 8; -+ t = cidr % 8; -+ a = &((unsigned char *)paddr)[n]; -+ *a = *a /(1 << (8 - t)) + shifts[t]; -+#ifdef __KERNEL__ -+ DP("n: %u, t: %u, a: %u", n, t, *a); -+ DP("ip:%u.%u.%u.%u/%u, %u.%u.%u.%u", -+ HIPQUAD(ip), cidr, NIPQUAD(addr)); -+#endif -+ -+ return ntohl(addr); -+} -+ -+#endif /* __IP_SET_NETHASH_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_portmap.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_portmap.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_portmap.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_portmap.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,25 @@ -+#ifndef __IP_SET_PORTMAP_H -+#define __IP_SET_PORTMAP_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+#define SETTYPE_NAME "portmap" -+#define MAX_RANGE 0x0000FFFF -+#define INVALID_PORT (MAX_RANGE + 1) -+ -+struct ip_set_portmap { -+ void *members; /* the portmap proper */ -+ ip_set_ip_t first_port; /* host byte order, included in range */ -+ ip_set_ip_t last_port; /* host byte order, included in range */ -+}; -+ -+struct ip_set_req_portmap_create { -+ ip_set_ip_t from; -+ ip_set_ip_t to; -+}; -+ -+struct ip_set_req_portmap { -+ ip_set_ip_t port; -+}; -+ -+#endif /* __IP_SET_PORTMAP_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ip_set_prime.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_prime.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ip_set_prime.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ip_set_prime.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,34 @@ -+#ifndef __IP_SET_PRIME_H -+#define __IP_SET_PRIME_H -+ -+static inline unsigned make_prime_bound(unsigned nr) -+{ -+ unsigned long long nr64 = nr; -+ unsigned long long x = 1; -+ nr = 1; -+ while (x <= nr64) { x <<= 2; nr <<= 1; } -+ return nr; -+} -+ -+static inline int make_prime_check(unsigned nr) -+{ -+ unsigned x = 3; -+ unsigned b = make_prime_bound(nr); -+ while (x <= b) { -+ if (0 == (nr % x)) return 0; -+ x += 2; -+ } -+ return 1; -+} -+ -+static unsigned make_prime(unsigned nr) -+{ -+ if (0 == (nr & 1)) nr--; -+ while (nr > 1) { -+ if (make_prime_check(nr)) return nr; -+ nr -= 2; -+ } -+ return 2; -+} -+ -+#endif /* __IP_SET_PRIME_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_condition.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_condition.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_condition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_condition.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,11 @@ -+#ifndef __IPT_CONDITION_MATCH__ -+#define __IPT_CONDITION_MATCH__ -+ -+#define CONDITION_NAME_LEN 32 -+ -+struct condition_info { -+ char name[CONDITION_NAME_LEN]; -+ int invert; -+}; -+ -+#endif -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_connbytes.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_connbytes.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_connbytes.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_connbytes.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,25 @@ -+#ifndef _IPT_CONNBYTES_H -+#define _IPT_CONNBYTES_H -+enum ipt_connbytes_what { -+ IPT_CONNBYTES_PKTS, -+ IPT_CONNBYTES_BYTES, -+ IPT_CONNBYTES_AVGPKT, -+}; -+ -+enum ipt_connbytes_direction { -+ IPT_CONNBYTES_DIR_ORIGINAL, -+ IPT_CONNBYTES_DIR_REPLY, -+ IPT_CONNBYTES_DIR_BOTH, -+}; -+ -+struct ipt_connbytes_info -+{ -+ struct { -+ u_int64_t from; /* count to be matched */ -+ u_int64_t to; /* count to be matched */ -+ } count; -+ u_int8_t what; /* ipt_connbytes_what */ -+ u_int8_t direction; /* ipt_connbytes_direction */ -+}; -+ -+#endif -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_connmark.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_connmark.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_connmark.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_connmark.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,18 @@ -+#ifndef _IPT_CONNMARK_H -+#define _IPT_CONNMARK_H -+ -+/* Copyright (C) 2002,2004 MARA Systems AB <http://www.marasystems.com> -+ * by Henrik Nordstrom <hno@marasystems.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it 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. -+ */ -+ -+struct ipt_connmark_info { -+ unsigned long mark, mask; -+ u_int8_t invert; -+}; -+ -+#endif /*_IPT_CONNMARK_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_CONNMARK.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_CONNMARK.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_CONNMARK.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_CONNMARK.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,25 @@ -+#ifndef _IPT_CONNMARK_H_target -+#define _IPT_CONNMARK_H_target -+ -+/* Copyright (C) 2002,2004 MARA Systems AB <http://www.marasystems.com> -+ * by Henrik Nordstrom <hno@marasystems.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it 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. -+ */ -+ -+enum { -+ IPT_CONNMARK_SET = 0, -+ IPT_CONNMARK_SAVE, -+ IPT_CONNMARK_RESTORE -+}; -+ -+struct ipt_connmark_target_info { -+ unsigned long mark; -+ unsigned long mask; -+ u_int8_t mode; -+}; -+ -+#endif /*_IPT_CONNMARK_H_target*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_IMQ.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_IMQ.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_IMQ.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_IMQ.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,8 @@ -+#ifndef _IPT_IMQ_H -+#define _IPT_IMQ_H -+ -+struct ipt_imq_info { -+ unsigned int todev; /* target imq device */ -+}; -+ -+#endif /* _IPT_IMQ_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_ipp2p.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_ipp2p.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_ipp2p.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_ipp2p.h 2006-03-13 18:55:56.000000000 +0100 -@@ -0,0 +1,29 @@ -+#ifndef __IPT_IPP2P_H -+#define __IPT_IPP2P_H -+#define IPP2P_VERSION "0.7.4" -+ -+struct ipt_p2p_info { -+ int cmd; -+ int debug; -+}; -+ -+#endif //__IPT_IPP2P_H -+ -+#define SHORT_HAND_IPP2P 1 /* --ipp2p switch*/ -+#define SHORT_HAND_DATA 4 /* --ipp2p-data switch*/ -+#define SHORT_HAND_NONE 5 /* no short hand*/ -+ -+#define IPP2P_EDK 2 -+#define IPP2P_DATA_KAZAA 8 -+#define IPP2P_DATA_EDK 16 -+#define IPP2P_DATA_DC 32 -+#define IPP2P_DC 64 -+#define IPP2P_DATA_GNU 128 -+#define IPP2P_GNU 256 -+#define IPP2P_KAZAA 512 -+#define IPP2P_BIT 1024 -+#define IPP2P_APPLE 2048 -+#define IPP2P_SOUL 4096 -+#define IPP2P_WINMX 8192 -+#define IPP2P_ARES 16384 -+ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_layer7.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_layer7.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_layer7.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_layer7.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,27 @@ -+/* -+ By Matthew Strait <quadong@users.sf.net>, Dec 2003. -+ http://l7-filter.sf.net -+ -+ This program is free software; you can redistribute it and/or -+ modify it 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. -+ http://www.gnu.org/licenses/gpl.txt -+*/ -+ -+#ifndef _IPT_LAYER7_H -+#define _IPT_LAYER7_H -+ -+#define MAX_PATTERN_LEN 8192 -+#define MAX_PROTOCOL_LEN 256 -+ -+typedef char *(*proc_ipt_search) (char *, char, char *); -+ -+struct ipt_layer7_info { -+ char protocol[MAX_PROTOCOL_LEN]; -+ char invert:1; -+ char pattern[MAX_PATTERN_LEN]; -+ char pkt; -+}; -+ -+#endif /* _IPT_LAYER7_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_multiport.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_multiport.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_multiport.h 2000-12-11 22:31:30.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_multiport.h 2006-03-13 18:55:58.000000000 +0100 -@@ -11,11 +11,12 @@ - - #define IPT_MULTI_PORTS 15 - --/* Must fit inside union ipt_matchinfo: 16 bytes */ --struct ipt_multiport -+struct ipt_multiport_v1 - { - u_int8_t flags; /* Type of comparison */ - u_int8_t count; /* Number of ports */ - u_int16_t ports[IPT_MULTI_PORTS]; /* Ports */ -+ u_int8_t pflags[IPT_MULTI_PORTS]; /* Port flags */ -+ u_int8_t invert; /* Invert flag */ - }; - #endif /*_IPT_MULTIPORT_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_quota.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_quota.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_quota.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_quota.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,12 @@ -+#ifndef _IPT_QUOTA_H -+#define _IPT_QUOTA_H -+ -+/* print debug info in both kernel/netfilter module & iptable library */ -+//#define DEBUG_IPT_QUOTA -+ -+struct ipt_quota_info { -+ u_int64_t quota; -+ struct ipt_quota_info *master; -+}; -+ -+#endif /*_IPT_QUOTA_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_set.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_set.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_set.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_set.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,21 @@ -+#ifndef _IPT_SET_H -+#define _IPT_SET_H -+ -+#include <linux/netfilter_ipv4/ip_set.h> -+ -+struct ipt_set_info { -+ ip_set_id_t index; -+ u_int32_t flags[IP_SET_MAX_BINDINGS + 1]; -+}; -+ -+/* match info */ -+struct ipt_set_info_match { -+ struct ipt_set_info match_set; -+}; -+ -+struct ipt_set_info_target { -+ struct ipt_set_info add_set; -+ struct ipt_set_info del_set; -+}; -+ -+#endif /*_IPT_SET_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_string.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_string.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_string.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_string.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,18 @@ -+#ifndef _IPT_STRING_H -+#define _IPT_STRING_H -+ -+#define IPT_STRING_MAX_PATTERN_SIZE 128 -+#define IPT_STRING_MAX_ALGO_NAME_SIZE 16 -+ -+struct ipt_string_info -+{ -+ u_int16_t from_offset; -+ u_int16_t to_offset; -+ char algo[IPT_STRING_MAX_ALGO_NAME_SIZE]; -+ char pattern[IPT_STRING_MAX_PATTERN_SIZE]; -+ u_int8_t patlen; -+ u_int8_t invert; -+ struct ts_config __attribute__((aligned(8))) *config; -+}; -+ -+#endif /*_IPT_STRING_H*/ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_time.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_time.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_time.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_time.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,15 @@ -+#ifndef __ipt_time_h_included__ -+#define __ipt_time_h_included__ -+ -+ -+struct ipt_time_info { -+ u_int8_t days_match; /* 1 bit per day. -SMTWTFS */ -+ u_int16_t time_start; /* 0 < time_start < 23*60+59 = 1439 */ -+ u_int16_t time_stop; /* 0:0 < time_stat < 23:59 */ -+ u_int8_t kerneltime; /* ignore skb time (and use kerneltime) or not. */ -+ time_t date_start; -+ time_t date_stop; -+}; -+ -+ -+#endif /* __ipt_time_h_included__ */ -diff -Nur linux-2.4.32/include/linux/netfilter_ipv4/ipt_TTL.h linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_TTL.h ---- linux-2.4.32/include/linux/netfilter_ipv4/ipt_TTL.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv4/ipt_TTL.h 2006-03-13 18:55:57.000000000 +0100 -@@ -0,0 +1,21 @@ -+/* TTL modification module for IP tables -+ * (C) 2000 by Harald Welte <laforge@gnumonks.org> */ -+ -+#ifndef _IPT_TTL_H -+#define _IPT_TTL_H -+ -+enum { -+ IPT_TTL_SET = 0, -+ IPT_TTL_INC, -+ IPT_TTL_DEC -+}; -+ -+#define IPT_TTL_MAXMODE IPT_TTL_DEC -+ -+struct ipt_TTL_info { -+ u_int8_t mode; -+ u_int8_t ttl; -+}; -+ -+ -+#endif -diff -Nur linux-2.4.32/include/linux/netfilter_ipv6/ip6t_condition.h linux-2.4.32.patched/include/linux/netfilter_ipv6/ip6t_condition.h ---- linux-2.4.32/include/linux/netfilter_ipv6/ip6t_condition.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv6/ip6t_condition.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,11 @@ -+#ifndef __IP6T_CONDITION_MATCH__ -+#define __IP6T_CONDITION_MATCH__ -+ -+#define CONDITION6_NAME_LEN 32 -+ -+struct condition6_info { -+ char name[CONDITION6_NAME_LEN]; -+ int invert; -+}; -+ -+#endif -diff -Nur linux-2.4.32/include/linux/netfilter_ipv6/ip6t_IMQ.h linux-2.4.32.patched/include/linux/netfilter_ipv6/ip6t_IMQ.h ---- linux-2.4.32/include/linux/netfilter_ipv6/ip6t_IMQ.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_ipv6/ip6t_IMQ.h 2006-03-13 18:55:58.000000000 +0100 -@@ -0,0 +1,8 @@ -+#ifndef _IP6T_IMQ_H -+#define _IP6T_IMQ_H -+ -+struct ip6t_imq_info { -+ unsigned int todev; /* target imq device */ -+}; -+ -+#endif /* _IP6T_IMQ_H */ -diff -Nur linux-2.4.32/include/linux/netfilter_mime.h linux-2.4.32.patched/include/linux/netfilter_mime.h ---- linux-2.4.32/include/linux/netfilter_mime.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/netfilter_mime.h 2006-03-13 19:01:42.000000000 +0100 -@@ -0,0 +1,90 @@ -+/* -+ * MIME functions for netfilter modules. This file provides implementations -+ * for basic MIME parsing. MIME headers are used in many protocols, such as -+ * HTTP, RTSP, SIP, etc. -+ * -+ * gcc will warn for defined but unused functions, so we only include the -+ * functions requested. The following macros are used: -+ * NF_NEED_MIME_NEXTLINE nf_mime_nextline() -+ */ -+#ifndef _NETFILTER_MIME_H -+#define _NETFILTER_MIME_H -+ -+/* Only include these functions for kernel code. */ -+#ifdef __KERNEL__ -+ -+#include <linux/kernel.h> -+#include <linux/ctype.h> -+ -+/* -+ * Given a buffer and length, advance to the next line and mark the current -+ * line. If the current line is empty, *plinelen will be set to zero. If -+ * not, it will be set to the actual line length (including CRLF). -+ * -+ * 'line' in this context means logical line (includes LWS continuations). -+ * Returns 1 on success, 0 on failure. -+ */ -+#ifdef NF_NEED_MIME_NEXTLINE -+static int -+nf_mime_nextline(char* p, uint len, uint* poff, uint* plineoff, uint* plinelen) -+{ -+ uint off = *poff; -+ uint physlen = 0; -+ int is_first_line = 1; -+ -+ if (off >= len) -+ { -+ return 0; -+ } -+ -+ do -+ { -+ while (p[off] != '\n') -+ { -+ if (len-off <= 1) -+ { -+ return 0; -+ } -+ -+ physlen++; -+ off++; -+ } -+ -+ /* if we saw a crlf, physlen needs adjusted */ -+ if (physlen > 0 && p[off] == '\n' && p[off-1] == '\r') -+ { -+ physlen--; -+ } -+ -+ /* advance past the newline */ -+ off++; -+ -+ /* check for an empty line */ -+ if (physlen == 0) -+ { -+ break; -+ } -+ -+ /* check for colon on the first physical line */ -+ if (is_first_line) -+ { -+ is_first_line = 0; -+ if (memchr(p+(*poff), ':', physlen) == NULL) -+ { -+ return 0; -+ } -+ } -+ } -+ while (p[off] == ' ' || p[off] == '\t'); -+ -+ *plineoff = *poff; -+ *plinelen = (physlen == 0) ? 0 : (off - *poff); -+ *poff = off; -+ -+ return 1; -+} -+#endif /* NF_NEED_MIME_NEXTLINE */ -+ -+#endif /* __KERNEL__ */ -+ -+#endif /* _NETFILTER_MIME_H */ -diff -Nur linux-2.4.32/include/linux/pci_ids.h linux-2.4.32.patched/include/linux/pci_ids.h ---- linux-2.4.32/include/linux/pci_ids.h 2005-11-16 20:12:54.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/pci_ids.h 2006-03-13 18:55:59.000000000 +0100 -@@ -1741,6 +1741,7 @@ - #define PCI_DEVICE_ID_TIGON3_5901_2 0x170e - #define PCI_DEVICE_ID_BCM4401 0x4401 - #define PCI_DEVICE_ID_BCM4401B0 0x4402 -+#define PCI_DEVICE_ID_BCM4713 0x4713 - - #define PCI_VENDOR_ID_ENE 0x1524 - #define PCI_DEVICE_ID_ENE_1211 0x1211 -diff -Nur linux-2.4.32/include/linux/ppp-comp.h linux-2.4.32.patched/include/linux/ppp-comp.h ---- linux-2.4.32/include/linux/ppp-comp.h 1999-08-06 19:44:11.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/ppp-comp.h 2006-03-13 18:55:55.000000000 +0100 -@@ -28,7 +28,7 @@ - */ - - /* -- * ==FILEVERSION 980319== -+ * ==FILEVERSION 20040509== - * - * NOTE TO MAINTAINERS: - * If you modify this file at all, please set the above date. -@@ -78,7 +78,7 @@ - - /* Compress a packet */ - int (*compress) (void *state, unsigned char *rptr, -- unsigned char *obuf, int isize, int osize); -+ unsigned char *obuf, int isize, int osize); - - /* Return compression statistics */ - void (*comp_stat) (void *state, struct compstat *stats); -@@ -99,7 +99,7 @@ - - /* Decompress a packet. */ - int (*decompress) (void *state, unsigned char *ibuf, int isize, -- unsigned char *obuf, int osize); -+ unsigned char *obuf, int osize); - - /* Update state for an incompressible packet received */ - void (*incomp) (void *state, unsigned char *ibuf, int icnt); -@@ -187,6 +187,42 @@ - #define DEFLATE_CHK_SEQUENCE 0 - - /* -+ * Definitions for MPPE/MPPC. -+ */ -+ -+#define CI_MPPE 18 /* config option for MPPE */ -+#define CILEN_MPPE 6 /* length of config option */ -+ -+#define MPPE_OVHD 4 /* MPPE overhead */ -+#define MPPE_MAX_KEY_LEN 16 /* largest key length (128-bit) */ -+ -+#define MPPE_STATELESS 0x01 /* configuration bit H */ -+#define MPPE_40BIT 0x20 /* configuration bit L */ -+#define MPPE_56BIT 0x80 /* configuration bit M */ -+#define MPPE_128BIT 0x40 /* configuration bit S */ -+#define MPPE_MPPC 0x01 /* configuration bit C */ -+ -+/* -+ * Definitions for Stac LZS. -+ */ -+ -+#define CI_LZS 17 /* config option for Stac LZS */ -+#define CILEN_LZS 5 /* length of config option */ -+ -+#define LZS_OVHD 4 /* max. LZS overhead */ -+#define LZS_HIST_LEN 2048 /* LZS history size */ -+#define LZS_MAX_CCOUNT 0x0FFF /* max. coherency counter value */ -+ -+#define LZS_MODE_NONE 0 -+#define LZS_MODE_LCB 1 -+#define LZS_MODE_CRC 2 -+#define LZS_MODE_SEQ 3 -+#define LZS_MODE_EXT 4 -+ -+#define LZS_EXT_BIT_FLUSHED 0x80 /* bit A */ -+#define LZS_EXT_BIT_COMP 0x20 /* bit C */ -+ -+/* - * Definitions for other, as yet unsupported, compression methods. - */ - -diff -Nur linux-2.4.32/include/linux/sched.h linux-2.4.32.patched/include/linux/sched.h ---- linux-2.4.32/include/linux/sched.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/sched.h 2006-03-13 18:57:11.000000000 +0100 -@@ -617,6 +617,10 @@ - extern int in_group_p(gid_t); - extern int in_egroup_p(gid_t); - -+extern ATTRIB_NORET void cpu_idle(void); -+ -+extern void release_task(struct task_struct * p); -+ - extern void proc_caches_init(void); - extern void flush_signals(struct task_struct *); - extern void flush_signal_handlers(struct task_struct *); -diff -Nur linux-2.4.32/include/linux/serial.h linux-2.4.32.patched/include/linux/serial.h ---- linux-2.4.32/include/linux/serial.h 2002-08-03 02:39:45.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/serial.h 2006-03-13 18:57:18.000000000 +0100 -@@ -75,7 +75,8 @@ - #define PORT_16654 11 - #define PORT_16850 12 - #define PORT_RSA 13 /* RSA-DV II/S card */ --#define PORT_MAX 13 -+#define PORT_SB1250 14 -+#define PORT_MAX 14 - - #define SERIAL_IO_PORT 0 - #define SERIAL_IO_HUB6 1 -diff -Nur linux-2.4.32/include/linux/skbuff.h linux-2.4.32.patched/include/linux/skbuff.h ---- linux-2.4.32/include/linux/skbuff.h 2005-04-04 03:42:20.000000000 +0200 -+++ linux-2.4.32.patched/include/linux/skbuff.h 2006-03-13 18:57:13.000000000 +0100 -@@ -93,6 +93,9 @@ - struct nf_conntrack *master; - }; - #endif -+#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE) -+struct nf_info; -+#endif - - struct sk_buff_head { - /* These two members must be first. */ -@@ -135,10 +138,6 @@ - struct sock *sk; /* Socket we are owned by */ - struct timeval stamp; /* Time we arrived */ - struct net_device *dev; /* Device we arrived on/are leaving by */ -- struct net_device *real_dev; /* For support of point to point protocols -- (e.g. 802.3ad) over bonding, we must save the -- physical device that got the packet before -- replacing skb->dev with the virtual device. */ - - /* Transport layer header */ - union -@@ -182,7 +181,7 @@ - unsigned int len; /* Length of actual data */ - unsigned int data_len; - unsigned int csum; /* Checksum */ -- unsigned char __unused, /* Dead field, may be reused */ -+ unsigned char imq_flags, /* intermediate queueing device */ - cloned, /* head may be cloned (check refcnt to be sure). */ - pkt_type, /* Packet class */ - ip_summed; /* Driver fed us an IP checksum */ -@@ -219,6 +218,13 @@ - #ifdef CONFIG_NET_SCHED - __u32 tc_index; /* traffic control index */ - #endif -+#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE) -+ struct nf_info *nf_info; -+#endif -+ struct net_device *real_dev; /* For support of point to point protocols -+ (e.g. 802.3ad) over bonding, we must save the -+ physical device that got the packet before -+ replacing skb->dev with the virtual device. */ - }; - - #ifdef __KERNEL__ -diff -Nur linux-2.4.32/include/linux/squashfs_fs.h linux-2.4.32.patched/include/linux/squashfs_fs.h ---- linux-2.4.32/include/linux/squashfs_fs.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/squashfs_fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1,523 @@ -+#ifndef SQUASHFS_FS -+#define SQUASHFS_FS -+/* -+ * Squashfs -+ * -+ * Copyright (c) 2002, 2003, 2004, 2005 Phillip Lougher <phillip@lougher.demon.co.uk> -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version 2, -+ * or (at your option) any later version. -+ * -+ * This program 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 General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ * squashfs_fs.h -+ */ -+ -+#ifdef CONFIG_SQUASHFS_VMALLOC -+#define SQUASHFS_ALLOC(a) vmalloc(a) -+#define SQUASHFS_FREE(a) vfree(a) -+#else -+#define SQUASHFS_ALLOC(a) kmalloc(a, GFP_KERNEL) -+#define SQUASHFS_FREE(a) kfree(a) -+#endif -+#ifdef CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE -+#define SQUASHFS_CACHED_FRAGMENTS CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE -+#else -+#define SQUASHFS_CACHED_FRAGMENTS 3 -+#endif -+#define SQUASHFS_MAJOR 2 -+#define SQUASHFS_MINOR 1 -+#define SQUASHFS_MAGIC 0x73717368 -+#define SQUASHFS_MAGIC_SWAP 0x68737173 -+#define SQUASHFS_START 0 -+ -+/* size of metadata (inode and directory) blocks */ -+#define SQUASHFS_METADATA_SIZE 8192 -+#define SQUASHFS_METADATA_LOG 13 -+ -+/* default size of data blocks */ -+#define SQUASHFS_FILE_SIZE 65536 -+#define SQUASHFS_FILE_LOG 16 -+ -+#define SQUASHFS_FILE_MAX_SIZE 65536 -+ -+/* Max number of uids and gids */ -+#define SQUASHFS_UIDS 256 -+#define SQUASHFS_GUIDS 255 -+ -+/* Max length of filename (not 255) */ -+#define SQUASHFS_NAME_LEN 256 -+ -+#define SQUASHFS_INVALID ((long long) 0xffffffffffff) -+#define SQUASHFS_INVALID_BLK ((long long) 0xffffffff) -+#define SQUASHFS_USED_BLK ((long long) 0xfffffffe) -+ -+/* Filesystem flags */ -+#define SQUASHFS_NOI 0 -+#define SQUASHFS_NOD 1 -+#define SQUASHFS_CHECK 2 -+#define SQUASHFS_NOF 3 -+#define SQUASHFS_NO_FRAG 4 -+#define SQUASHFS_ALWAYS_FRAG 5 -+#define SQUASHFS_DUPLICATE 6 -+#define SQUASHFS_BIT(flag, bit) ((flag >> bit) & 1) -+#define SQUASHFS_UNCOMPRESSED_INODES(flags) SQUASHFS_BIT(flags, SQUASHFS_NOI) -+#define SQUASHFS_UNCOMPRESSED_DATA(flags) SQUASHFS_BIT(flags, SQUASHFS_NOD) -+#define SQUASHFS_UNCOMPRESSED_FRAGMENTS(flags) SQUASHFS_BIT(flags, SQUASHFS_NOF) -+#define SQUASHFS_NO_FRAGMENTS(flags) SQUASHFS_BIT(flags, SQUASHFS_NO_FRAG) -+#define SQUASHFS_ALWAYS_FRAGMENTS(flags) SQUASHFS_BIT(flags, SQUASHFS_ALWAYS_FRAG) -+#define SQUASHFS_DUPLICATES(flags) SQUASHFS_BIT(flags, SQUASHFS_DUPLICATE) -+#define SQUASHFS_CHECK_DATA(flags) SQUASHFS_BIT(flags, SQUASHFS_CHECK) -+#define SQUASHFS_MKFLAGS(noi, nod, check_data, nof, no_frag, always_frag, duplicate_checking) (noi | (nod << 1) | (check_data << 2) | (nof << 3) | (no_frag << 4) | (always_frag << 5) | (duplicate_checking << 6)) -+ -+/* Max number of types and file types */ -+#define SQUASHFS_DIR_TYPE 1 -+#define SQUASHFS_FILE_TYPE 2 -+#define SQUASHFS_SYMLINK_TYPE 3 -+#define SQUASHFS_BLKDEV_TYPE 4 -+#define SQUASHFS_CHRDEV_TYPE 5 -+#define SQUASHFS_FIFO_TYPE 6 -+#define SQUASHFS_SOCKET_TYPE 7 -+#define SQUASHFS_LDIR_TYPE 8 -+ -+/* 1.0 filesystem type definitions */ -+#define SQUASHFS_TYPES 5 -+#define SQUASHFS_IPC_TYPE 0 -+ -+/* Flag whether block is compressed or uncompressed, bit is set if block is uncompressed */ -+#define SQUASHFS_COMPRESSED_BIT (1 << 15) -+#define SQUASHFS_COMPRESSED_SIZE(B) (((B) & ~SQUASHFS_COMPRESSED_BIT) ? \ -+ (B) & ~SQUASHFS_COMPRESSED_BIT : SQUASHFS_COMPRESSED_BIT) -+ -+#define SQUASHFS_COMPRESSED(B) (!((B) & SQUASHFS_COMPRESSED_BIT)) -+ -+#define SQUASHFS_COMPRESSED_BIT_BLOCK (1 << 24) -+#define SQUASHFS_COMPRESSED_SIZE_BLOCK(B) (((B) & ~SQUASHFS_COMPRESSED_BIT_BLOCK) ? \ -+ (B) & ~SQUASHFS_COMPRESSED_BIT_BLOCK : SQUASHFS_COMPRESSED_BIT_BLOCK) -+ -+#define SQUASHFS_COMPRESSED_BLOCK(B) (!((B) & SQUASHFS_COMPRESSED_BIT_BLOCK)) -+ -+/* -+ * Inode number ops. Inodes consist of a compressed block number, and an uncompressed -+ * offset within that block -+ */ -+#define SQUASHFS_INODE_BLK(a) ((unsigned int) ((a) >> 16)) -+#define SQUASHFS_INODE_OFFSET(a) ((unsigned int) ((a) & 0xffff)) -+#define SQUASHFS_MKINODE(A, B) ((squashfs_inode)(((squashfs_inode) (A) << 16)\ -+ + (B))) -+ -+/* Compute 32 bit VFS inode number from squashfs inode number */ -+#define SQUASHFS_MK_VFS_INODE(a, b) ((unsigned int) (((a) << 8) + ((b) >> 2) + 1)) -+ -+/* Translate between VFS mode and squashfs mode */ -+#define SQUASHFS_MODE(a) ((a) & 0xfff) -+ -+/* fragment and fragment table defines */ -+typedef unsigned int squashfs_fragment_index; -+#define SQUASHFS_FRAGMENT_BYTES(A) (A * sizeof(squashfs_fragment_entry)) -+#define SQUASHFS_FRAGMENT_INDEX(A) (SQUASHFS_FRAGMENT_BYTES(A) / SQUASHFS_METADATA_SIZE) -+#define SQUASHFS_FRAGMENT_INDEX_OFFSET(A) (SQUASHFS_FRAGMENT_BYTES(A) % SQUASHFS_METADATA_SIZE) -+#define SQUASHFS_FRAGMENT_INDEXES(A) ((SQUASHFS_FRAGMENT_BYTES(A) + SQUASHFS_METADATA_SIZE - 1) / SQUASHFS_METADATA_SIZE) -+#define SQUASHFS_FRAGMENT_INDEX_BYTES(A) (SQUASHFS_FRAGMENT_INDEXES(A) * sizeof(squashfs_fragment_index)) -+ -+/* cached data constants for filesystem */ -+#define SQUASHFS_CACHED_BLKS 8 -+ -+#define SQUASHFS_MAX_FILE_SIZE_LOG 32 -+#define SQUASHFS_MAX_FILE_SIZE ((long long) 1 << (SQUASHFS_MAX_FILE_SIZE_LOG - 1)) -+ -+#define SQUASHFS_MARKER_BYTE 0xff -+ -+ -+/* -+ * definitions for structures on disk -+ */ -+ -+typedef unsigned int squashfs_block; -+typedef long long squashfs_inode; -+ -+typedef unsigned int squashfs_uid; -+ -+typedef struct squashfs_super_block { -+ unsigned int s_magic; -+ unsigned int inodes; -+ unsigned int bytes_used; -+ unsigned int uid_start; -+ unsigned int guid_start; -+ unsigned int inode_table_start; -+ unsigned int directory_table_start; -+ unsigned int s_major:16; -+ unsigned int s_minor:16; -+ unsigned int block_size_1:16; -+ unsigned int block_log:16; -+ unsigned int flags:8; -+ unsigned int no_uids:8; -+ unsigned int no_guids:8; -+ unsigned int mkfs_time /* time of filesystem creation */; -+ squashfs_inode root_inode; -+ unsigned int block_size; -+ unsigned int fragments; -+ unsigned int fragment_table_start; -+} __attribute__ ((packed)) squashfs_super_block; -+ -+typedef struct { -+ unsigned int index:27; -+ unsigned int start_block:29; -+ unsigned char size; -+ unsigned char name[0]; -+} __attribute__ ((packed)) squashfs_dir_index; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+} __attribute__ ((packed)) squashfs_base_inode_header; -+ -+typedef squashfs_base_inode_header squashfs_ipc_inode_header; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+ unsigned short rdev; -+} __attribute__ ((packed)) squashfs_dev_inode_header; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+ unsigned short symlink_size; -+ char symlink[0]; -+} __attribute__ ((packed)) squashfs_symlink_inode_header; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+ unsigned int mtime; -+ squashfs_block start_block; -+ unsigned int fragment; -+ unsigned int offset; -+ unsigned int file_size:SQUASHFS_MAX_FILE_SIZE_LOG; -+ unsigned short block_list[0]; -+} __attribute__ ((packed)) squashfs_reg_inode_header; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+ unsigned int file_size:19; -+ unsigned int offset:13; -+ unsigned int mtime; -+ unsigned int start_block:24; -+} __attribute__ ((packed)) squashfs_dir_inode_header; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:8; /* index into uid table */ -+ unsigned int guid:8; /* index into guid table */ -+ unsigned int file_size:27; -+ unsigned int offset:13; -+ unsigned int mtime; -+ unsigned int start_block:24; -+ unsigned int i_count:16; -+ squashfs_dir_index index[0]; -+} __attribute__ ((packed)) squashfs_ldir_inode_header; -+ -+typedef union { -+ squashfs_base_inode_header base; -+ squashfs_dev_inode_header dev; -+ squashfs_symlink_inode_header symlink; -+ squashfs_reg_inode_header reg; -+ squashfs_dir_inode_header dir; -+ squashfs_ldir_inode_header ldir; -+ squashfs_ipc_inode_header ipc; -+} squashfs_inode_header; -+ -+typedef struct { -+ unsigned int offset:13; -+ unsigned int type:3; -+ unsigned int size:8; -+ char name[0]; -+} __attribute__ ((packed)) squashfs_dir_entry; -+ -+typedef struct { -+ unsigned int count:8; -+ unsigned int start_block:24; -+} __attribute__ ((packed)) squashfs_dir_header; -+ -+typedef struct { -+ unsigned int start_block; -+ unsigned int size; -+} __attribute__ ((packed)) squashfs_fragment_entry; -+ -+extern int squashfs_uncompress_block(void *d, int dstlen, void *s, int srclen); -+extern int squashfs_uncompress_init(void); -+extern int squashfs_uncompress_exit(void); -+ -+/* -+ * macros to convert each packed bitfield structure from little endian to big -+ * endian and vice versa. These are needed when creating or using a filesystem on a -+ * machine with different byte ordering to the target architecture. -+ * -+ */ -+ -+#define SQUASHFS_SWAP_SUPER_BLOCK(s, d) {\ -+ SQUASHFS_MEMSET(s, d, sizeof(squashfs_super_block));\ -+ SQUASHFS_SWAP((s)->s_magic, d, 0, 32);\ -+ SQUASHFS_SWAP((s)->inodes, d, 32, 32);\ -+ SQUASHFS_SWAP((s)->bytes_used, d, 64, 32);\ -+ SQUASHFS_SWAP((s)->uid_start, d, 96, 32);\ -+ SQUASHFS_SWAP((s)->guid_start, d, 128, 32);\ -+ SQUASHFS_SWAP((s)->inode_table_start, d, 160, 32);\ -+ SQUASHFS_SWAP((s)->directory_table_start, d, 192, 32);\ -+ SQUASHFS_SWAP((s)->s_major, d, 224, 16);\ -+ SQUASHFS_SWAP((s)->s_minor, d, 240, 16);\ -+ SQUASHFS_SWAP((s)->block_size_1, d, 256, 16);\ -+ SQUASHFS_SWAP((s)->block_log, d, 272, 16);\ -+ SQUASHFS_SWAP((s)->flags, d, 288, 8);\ -+ SQUASHFS_SWAP((s)->no_uids, d, 296, 8);\ -+ SQUASHFS_SWAP((s)->no_guids, d, 304, 8);\ -+ SQUASHFS_SWAP((s)->mkfs_time, d, 312, 32);\ -+ SQUASHFS_SWAP((s)->root_inode, d, 344, 64);\ -+ SQUASHFS_SWAP((s)->block_size, d, 408, 32);\ -+ SQUASHFS_SWAP((s)->fragments, d, 440, 32);\ -+ SQUASHFS_SWAP((s)->fragment_table_start, d, 472, 32);\ -+} -+ -+#define SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, n) {\ -+ SQUASHFS_MEMSET(s, d, n);\ -+ SQUASHFS_SWAP((s)->inode_type, d, 0, 4);\ -+ SQUASHFS_SWAP((s)->mode, d, 4, 12);\ -+ SQUASHFS_SWAP((s)->uid, d, 16, 8);\ -+ SQUASHFS_SWAP((s)->guid, d, 24, 8);\ -+} -+ -+#define SQUASHFS_SWAP_IPC_INODE_HEADER(s, d) SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_ipc_inode_header)) -+ -+#define SQUASHFS_SWAP_DEV_INODE_HEADER(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_dev_inode_header));\ -+ SQUASHFS_SWAP((s)->rdev, d, 32, 16);\ -+} -+ -+#define SQUASHFS_SWAP_SYMLINK_INODE_HEADER(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_symlink_inode_header));\ -+ SQUASHFS_SWAP((s)->symlink_size, d, 32, 16);\ -+} -+ -+#define SQUASHFS_SWAP_REG_INODE_HEADER(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_reg_inode_header));\ -+ SQUASHFS_SWAP((s)->mtime, d, 32, 32);\ -+ SQUASHFS_SWAP((s)->start_block, d, 64, 32);\ -+ SQUASHFS_SWAP((s)->fragment, d, 96, 32);\ -+ SQUASHFS_SWAP((s)->offset, d, 128, 32);\ -+ SQUASHFS_SWAP((s)->file_size, d, 160, SQUASHFS_MAX_FILE_SIZE_LOG);\ -+} -+ -+#define SQUASHFS_SWAP_DIR_INODE_HEADER(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_dir_inode_header));\ -+ SQUASHFS_SWAP((s)->file_size, d, 32, 19);\ -+ SQUASHFS_SWAP((s)->offset, d, 51, 13);\ -+ SQUASHFS_SWAP((s)->mtime, d, 64, 32);\ -+ SQUASHFS_SWAP((s)->start_block, d, 96, 24);\ -+} -+ -+#define SQUASHFS_SWAP_LDIR_INODE_HEADER(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_ldir_inode_header));\ -+ SQUASHFS_SWAP((s)->file_size, d, 32, 27);\ -+ SQUASHFS_SWAP((s)->offset, d, 59, 13);\ -+ SQUASHFS_SWAP((s)->mtime, d, 72, 32);\ -+ SQUASHFS_SWAP((s)->start_block, d, 104, 24);\ -+ SQUASHFS_SWAP((s)->i_count, d, 128, 16);\ -+} -+ -+#define SQUASHFS_SWAP_DIR_INDEX(s, d) {\ -+ SQUASHFS_MEMSET(s, d, sizeof(squashfs_dir_index));\ -+ SQUASHFS_SWAP((s)->index, d, 0, 27);\ -+ SQUASHFS_SWAP((s)->start_block, d, 27, 29);\ -+ SQUASHFS_SWAP((s)->size, d, 56, 8);\ -+} -+ -+#define SQUASHFS_SWAP_DIR_HEADER(s, d) {\ -+ SQUASHFS_MEMSET(s, d, sizeof(squashfs_dir_header));\ -+ SQUASHFS_SWAP((s)->count, d, 0, 8);\ -+ SQUASHFS_SWAP((s)->start_block, d, 8, 24);\ -+} -+ -+#define SQUASHFS_SWAP_DIR_ENTRY(s, d) {\ -+ SQUASHFS_MEMSET(s, d, sizeof(squashfs_dir_entry));\ -+ SQUASHFS_SWAP((s)->offset, d, 0, 13);\ -+ SQUASHFS_SWAP((s)->type, d, 13, 3);\ -+ SQUASHFS_SWAP((s)->size, d, 16, 8);\ -+} -+ -+#define SQUASHFS_SWAP_FRAGMENT_ENTRY(s, d) {\ -+ SQUASHFS_MEMSET(s, d, sizeof(squashfs_fragment_entry));\ -+ SQUASHFS_SWAP((s)->start_block, d, 0, 32);\ -+ SQUASHFS_SWAP((s)->size, d, 32, 32);\ -+} -+ -+#define SQUASHFS_SWAP_SHORTS(s, d, n) {\ -+ int entry;\ -+ int bit_position;\ -+ SQUASHFS_MEMSET(s, d, n * 2);\ -+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += 16)\ -+ SQUASHFS_SWAP(s[entry], d, bit_position, 16);\ -+} -+ -+#define SQUASHFS_SWAP_INTS(s, d, n) {\ -+ int entry;\ -+ int bit_position;\ -+ SQUASHFS_MEMSET(s, d, n * 4);\ -+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += 32)\ -+ SQUASHFS_SWAP(s[entry], d, bit_position, 32);\ -+} -+ -+#define SQUASHFS_SWAP_DATA(s, d, n, bits) {\ -+ int entry;\ -+ int bit_position;\ -+ SQUASHFS_MEMSET(s, d, n * bits / 8);\ -+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += bits)\ -+ SQUASHFS_SWAP(s[entry], d, bit_position, bits);\ -+} -+ -+#define SQUASHFS_SWAP_FRAGMENT_INDEXES(s, d, n) SQUASHFS_SWAP_INTS(s, d, n) -+ -+#ifdef SQUASHFS_1_0_COMPATIBILITY -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+} __attribute__ ((packed)) squashfs_base_inode_header_1; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+ unsigned int type:4; -+ unsigned int offset:4; -+} __attribute__ ((packed)) squashfs_ipc_inode_header_1; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+ unsigned short rdev; -+} __attribute__ ((packed)) squashfs_dev_inode_header_1; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+ unsigned short symlink_size; -+ char symlink[0]; -+} __attribute__ ((packed)) squashfs_symlink_inode_header_1; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+ unsigned int mtime; -+ squashfs_block start_block; -+ unsigned int file_size:SQUASHFS_MAX_FILE_SIZE_LOG; -+ unsigned short block_list[0]; -+} __attribute__ ((packed)) squashfs_reg_inode_header_1; -+ -+typedef struct { -+ unsigned int inode_type:4; -+ unsigned int mode:12; /* protection */ -+ unsigned int uid:4; /* index into uid table */ -+ unsigned int guid:4; /* index into guid table */ -+ unsigned int file_size:19; -+ unsigned int offset:13; -+ unsigned int mtime; -+ unsigned int start_block:24; -+} __attribute__ ((packed)) squashfs_dir_inode_header_1; -+ -+#define SQUASHFS_SWAP_BASE_INODE_HEADER_1(s, d, n) {\ -+ SQUASHFS_MEMSET(s, d, n);\ -+ SQUASHFS_SWAP((s)->inode_type, d, 0, 4);\ -+ SQUASHFS_SWAP((s)->mode, d, 4, 12);\ -+ SQUASHFS_SWAP((s)->uid, d, 16, 4);\ -+ SQUASHFS_SWAP((s)->guid, d, 20, 4);\ -+} -+ -+#define SQUASHFS_SWAP_IPC_INODE_HEADER_1(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER_1(s, d, sizeof(squashfs_ipc_inode_header_1));\ -+ SQUASHFS_SWAP((s)->type, d, 24, 4);\ -+ SQUASHFS_SWAP((s)->offset, d, 28, 4);\ -+} -+ -+#define SQUASHFS_SWAP_DEV_INODE_HEADER_1(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER_1(s, d, sizeof(squashfs_dev_inode_header_1));\ -+ SQUASHFS_SWAP((s)->rdev, d, 24, 16);\ -+} -+ -+#define SQUASHFS_SWAP_SYMLINK_INODE_HEADER_1(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_symlink_inode_header_1));\ -+ SQUASHFS_SWAP((s)->symlink_size, d, 24, 16);\ -+} -+ -+#define SQUASHFS_SWAP_REG_INODE_HEADER_1(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_reg_inode_header_1));\ -+ SQUASHFS_SWAP((s)->mtime, d, 24, 32);\ -+ SQUASHFS_SWAP((s)->start_block, d, 56, 32);\ -+ SQUASHFS_SWAP((s)->file_size, d, 88, SQUASHFS_MAX_FILE_SIZE_LOG);\ -+} -+ -+#define SQUASHFS_SWAP_DIR_INODE_HEADER_1(s, d) {\ -+ SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, sizeof(squashfs_dir_inode_header_1));\ -+ SQUASHFS_SWAP((s)->file_size, d, 24, 19);\ -+ SQUASHFS_SWAP((s)->offset, d, 43, 13);\ -+ SQUASHFS_SWAP((s)->mtime, d, 56, 32);\ -+ SQUASHFS_SWAP((s)->start_block, d, 88, 24);\ -+} -+#endif -+ -+#ifdef __KERNEL__ -+/* -+ * macros used to swap each structure entry, taking into account -+ * bitfields and different bitfield placing conventions on differing architectures -+ */ -+#include <asm/byteorder.h> -+#ifdef __BIG_ENDIAN -+ /* convert from little endian to big endian */ -+#define SQUASHFS_SWAP(value, p, pos, tbits) _SQUASHFS_SWAP(value, p, pos, tbits, b_pos) -+#else -+ /* convert from big endian to little endian */ -+#define SQUASHFS_SWAP(value, p, pos, tbits) _SQUASHFS_SWAP(value, p, pos, tbits, 64 - tbits - b_pos) -+#endif -+ -+#define _SQUASHFS_SWAP(value, p, pos, tbits, SHIFT) {\ -+ int bits;\ -+ int b_pos = pos % 8;\ -+ unsigned long long val = 0;\ -+ unsigned char *s = (unsigned char *)p + (pos / 8);\ -+ unsigned char *d = ((unsigned char *) &val) + 7;\ -+ for(bits = 0; bits < (tbits + b_pos); bits += 8) \ -+ *d-- = *s++;\ -+ value = (val >> (SHIFT))/* & ((1 << tbits) - 1)*/;\ -+} -+#define SQUASHFS_MEMSET(s, d, n) memset(s, 0, n); -+#endif -+#endif -diff -Nur linux-2.4.32/include/linux/squashfs_fs_i.h linux-2.4.32.patched/include/linux/squashfs_fs_i.h ---- linux-2.4.32/include/linux/squashfs_fs_i.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/squashfs_fs_i.h 2006-03-13 18:55:54.000000000 +0100 -@@ -0,0 +1,42 @@ -+#ifndef SQUASHFS_FS_I -+#define SQUASHFS_FS_I -+/* -+ * Squashfs -+ * -+ * Copyright (c) 2002, 2003, 2004, 2005 Phillip Lougher <phillip@lougher.demon.co.uk> -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version 2, -+ * or (at your option) any later version. -+ * -+ * This program 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 General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ * squashfs_fs_i.h -+ */ -+ -+typedef struct squashfs_inode_info { -+ unsigned int start_block; -+ unsigned int block_list_start; -+ unsigned int offset; -+ union { -+ struct { -+ unsigned int fragment_start_block; -+ unsigned int fragment_size; -+ unsigned int fragment_offset; -+ } s1; -+ struct { -+ unsigned int directory_index_start; -+ unsigned int directory_index_offset; -+ unsigned int directory_index_count; -+ } s2; -+ } u; -+ } squashfs_inode_info; -+#endif -diff -Nur linux-2.4.32/include/linux/squashfs_fs_sb.h linux-2.4.32.patched/include/linux/squashfs_fs_sb.h ---- linux-2.4.32/include/linux/squashfs_fs_sb.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/squashfs_fs_sb.h 2006-03-13 18:57:11.000000000 +0100 -@@ -0,0 +1,65 @@ -+#ifndef SQUASHFS_FS_SB -+#define SQUASHFS_FS_SB -+/* -+ * Squashfs -+ * -+ * Copyright (c) 2002, 2003, 2004, 2005 Phillip Lougher <phillip@lougher.demon.co.uk> -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version 2, -+ * or (at your option) any later version. -+ * -+ * This program 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 General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ * squashfs_fs_sb.h -+ */ -+ -+#include <linux/squashfs_fs.h> -+ -+typedef struct { -+ unsigned int block; -+ int length; -+ unsigned int next_index; -+ char *data; -+ } squashfs_cache; -+ -+struct squashfs_fragment_cache { -+ unsigned int block; -+ int length; -+ unsigned int locked; -+ char *data; -+ }; -+ -+typedef struct squashfs_sb_info { -+ squashfs_super_block sBlk; -+ int devblksize; -+ int devblksize_log2; -+ int swap; -+ squashfs_cache *block_cache; -+ struct squashfs_fragment_cache *fragment; -+ int next_cache; -+ int next_fragment; -+ squashfs_uid *uid; -+ squashfs_uid *guid; -+ squashfs_fragment_index *fragment_index; -+ unsigned int read_size; -+ char *read_data; -+ char *read_page; -+ struct semaphore read_page_mutex; -+ struct semaphore block_cache_mutex; -+ struct semaphore fragment_mutex; -+ wait_queue_head_t waitq; -+ wait_queue_head_t fragment_wait_queue; -+ struct inode *(*iget)(struct super_block *s, squashfs_inode inode); -+ unsigned int (*read_blocklist)(struct inode *inode, int index, int readahead_blks, -+ char *block_list, unsigned short **block_p, unsigned int *bsize); -+ } squashfs_sb_info; -+#endif -diff -Nur linux-2.4.32/include/linux/swap.h linux-2.4.32.patched/include/linux/swap.h ---- linux-2.4.32/include/linux/swap.h 2005-01-19 15:10:12.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/swap.h 2006-03-13 18:57:11.000000000 +0100 -@@ -1,6 +1,12 @@ - #ifndef _LINUX_SWAP_H - #define _LINUX_SWAP_H - -+#include <linux/config.h> -+ -+#define MAX_SWAPFILES 32 -+ -+#ifdef __KERNEL__ -+ - #include <linux/spinlock.h> - #include <asm/page.h> - -@@ -8,8 +14,6 @@ - #define SWAP_FLAG_PRIO_MASK 0x7fff - #define SWAP_FLAG_PRIO_SHIFT 0 - --#define MAX_SWAPFILES 32 -- - /* - * Magic header for a swap area. The first part of the union is - * what the swap magic looks like for the old (limited to 128MB) -@@ -39,8 +43,6 @@ - } info; - }; - --#ifdef __KERNEL__ -- - /* - * Max bad pages in the new format.. - */ -diff -Nur linux-2.4.32/include/linux/textsearch.h linux-2.4.32.patched/include/linux/textsearch.h ---- linux-2.4.32/include/linux/textsearch.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/textsearch.h 2006-03-13 19:01:58.000000000 +0100 -@@ -0,0 +1,205 @@ -+#ifndef __LINUX_TEXTSEARCH_H -+#define __LINUX_TEXTSEARCH_H -+ -+#ifdef __KERNEL__ -+ -+#include <linux/types.h> -+#include <linux/list.h> -+#include <linux/kernel.h> -+#include <linux/module.h> -+#include <linux/slab.h> -+ -+#ifdef __CHECKER__ -+#define __bitwise__ __attribute__((bitwise)) -+#else -+#define __bitwise__ -+#endif -+#ifdef __CHECK_ENDIAN__ -+#define __bitwise __bitwise__ -+#else -+#define __bitwise -+#endif -+ -+typedef __u16 __bitwise __le16; -+typedef __u16 __bitwise __be16; -+typedef __u32 __bitwise __le32; -+typedef __u32 __bitwise __be32; -+#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -+typedef __u64 __bitwise __le64; -+typedef __u64 __bitwise __be64; -+#endif -+ -+#ifdef __KERNEL__ -+typedef unsigned __bitwise__ gfp_t; -+#endif -+ -+struct ts_config; -+ -+/** -+ * TS_AUTOLOAD - Automatically load textsearch modules when needed -+ */ -+#define TS_AUTOLOAD 1 -+ -+/** -+ * struct ts_state - search state -+ * @offset: offset for next match -+ * @cb: control buffer, for persistant variables of get_next_block() -+ */ -+struct ts_state -+{ -+ unsigned int offset; -+ char cb[40]; -+}; -+ -+/** -+ * struct ts_ops - search module operations -+ * @name: name of search algorithm -+ * @init: initialization function to prepare a search -+ * @find: find the next occurrence of the pattern -+ * @destroy: destroy algorithm specific parts of a search configuration -+ * @get_pattern: return head of pattern -+ * @get_pattern_len: return length of pattern -+ * @owner: module reference to algorithm -+ */ -+struct ts_ops -+{ -+ const char *name; -+ struct ts_config * (*init)(const void *, unsigned int, gfp_t); -+ unsigned int (*find)(struct ts_config *, -+ struct ts_state *); -+ void (*destroy)(struct ts_config *); -+ void * (*get_pattern)(struct ts_config *); -+ unsigned int (*get_pattern_len)(struct ts_config *); -+ struct module *owner; -+ struct list_head list; -+}; -+ -+/** -+ * struct ts_config - search configuration -+ * @ops: operations of chosen algorithm -+ * @get_next_block: callback to fetch the next block to search in -+ * @finish: callback to finalize a search -+ */ -+struct ts_config -+{ -+ struct ts_ops *ops; -+ -+ /** -+ * get_next_block - fetch next block of data -+ * @consumed: number of bytes consumed by the caller -+ * @dst: destination buffer -+ * @conf: search configuration -+ * @state: search state -+ * -+ * Called repeatedly until 0 is returned. Must assign the -+ * head of the next block of data to &*dst and return the length -+ * of the block or 0 if at the end. consumed == 0 indicates -+ * a new search. May store/read persistant values in state->cb. -+ */ -+ unsigned int (*get_next_block)(unsigned int consumed, -+ const u8 **dst, -+ struct ts_config *conf, -+ struct ts_state *state); -+ -+ /** -+ * finish - finalize/clean a series of get_next_block() calls -+ * @conf: search configuration -+ * @state: search state -+ * -+ * Called after the last use of get_next_block(), may be used -+ * to cleanup any leftovers. -+ */ -+ void (*finish)(struct ts_config *conf, -+ struct ts_state *state); -+}; -+ -+/** -+ * textsearch_next - continue searching for a pattern -+ * @conf: search configuration -+ * @state: search state -+ * -+ * Continues a search looking for more occurrences of the pattern. -+ * textsearch_find() must be called to find the first occurrence -+ * in order to reset the state. -+ * -+ * Returns the position of the next occurrence of the pattern or -+ * UINT_MAX if not match was found. -+ */ -+static inline unsigned int textsearch_next(struct ts_config *conf, -+ struct ts_state *state) -+{ -+ unsigned int ret = conf->ops->find(conf, state); -+ -+ if (conf->finish) -+ conf->finish(conf, state); -+ -+ return ret; -+} -+ -+/** -+ * textsearch_find - start searching for a pattern -+ * @conf: search configuration -+ * @state: search state -+ * -+ * Returns the position of first occurrence of the pattern or -+ * UINT_MAX if no match was found. -+ */ -+static inline unsigned int textsearch_find(struct ts_config *conf, -+ struct ts_state *state) -+{ -+ state->offset = 0; -+ return textsearch_next(conf, state); -+} -+ -+/** -+ * textsearch_get_pattern - return head of the pattern -+ * @conf: search configuration -+ */ -+static inline void *textsearch_get_pattern(struct ts_config *conf) -+{ -+ return conf->ops->get_pattern(conf); -+} -+ -+/** -+ * textsearch_get_pattern_len - return length of the pattern -+ * @conf: search configuration -+ */ -+static inline unsigned int textsearch_get_pattern_len(struct ts_config *conf) -+{ -+ return conf->ops->get_pattern_len(conf); -+} -+ -+extern int textsearch_register(struct ts_ops *); -+extern int textsearch_unregister(struct ts_ops *); -+extern struct ts_config *textsearch_prepare(const char *, const void *, -+ unsigned int, gfp_t, int); -+extern void textsearch_destroy(struct ts_config *conf); -+extern unsigned int textsearch_find_continuous(struct ts_config *, -+ struct ts_state *, -+ const void *, unsigned int); -+ -+ -+#define TS_PRIV_ALIGNTO 8 -+#define TS_PRIV_ALIGN(len) (((len) + TS_PRIV_ALIGNTO-1) & ~(TS_PRIV_ALIGNTO-1)) -+ -+static inline struct ts_config *alloc_ts_config(size_t payload, -+ gfp_t gfp_mask) -+{ -+ struct ts_config *conf; -+ -+ conf = kmalloc(TS_PRIV_ALIGN(sizeof(*conf)) + payload, gfp_mask); -+ if (conf == NULL) -+ return -ENOMEM; -+ -+ memset(conf, 0, TS_PRIV_ALIGN(sizeof(*conf)) + payload); -+ return conf; -+} -+ -+static inline void *ts_config_priv(struct ts_config *conf) -+{ -+ return ((u8 *) conf + TS_PRIV_ALIGN(sizeof(struct ts_config))); -+} -+ -+#endif /* __KERNEL__ */ -+ -+#endif -diff -Nur linux-2.4.32/include/linux/ufs_fs.h linux-2.4.32.patched/include/linux/ufs_fs.h ---- linux-2.4.32/include/linux/ufs_fs.h 2001-11-22 20:46:18.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/ufs_fs.h 2006-03-13 18:57:11.000000000 +0100 -@@ -555,7 +555,6 @@ - extern struct file_operations ufs_dir_operations; - - /* super.c */ --extern struct file_system_type ufs_fs_type; - extern void ufs_warning (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4))); - extern void ufs_error (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4))); - extern void ufs_panic (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4))); -diff -Nur linux-2.4.32/include/linux/usbdevice_fs.h linux-2.4.32.patched/include/linux/usbdevice_fs.h ---- linux-2.4.32/include/linux/usbdevice_fs.h 2003-11-28 19:26:21.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/usbdevice_fs.h 2006-03-13 18:58:17.000000000 +0100 -@@ -185,8 +185,6 @@ - extern struct file_operations usbdevfs_devices_fops; - extern struct file_operations usbdevfs_device_file_operations; - extern struct inode_operations usbdevfs_device_inode_operations; --extern struct inode_operations usbdevfs_bus_inode_operations; --extern struct file_operations usbdevfs_bus_file_operations; - extern void usbdevfs_conn_disc_event(void); - - #endif /* __KERNEL__ */ -diff -Nur linux-2.4.32/include/linux/version.h linux-2.4.32.patched/include/linux/version.h ---- linux-2.4.32/include/linux/version.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/version.h 2006-03-13 18:56:05.000000000 +0100 -@@ -0,0 +1,3 @@ -+#define UTS_RELEASE "2.4.32" -+#define LINUX_VERSION_CODE 132128 -+#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) -diff -Nur linux-2.4.32/include/linux/wireless.h linux-2.4.32.patched/include/linux/wireless.h ---- linux-2.4.32/include/linux/wireless.h 2003-11-28 19:26:21.000000000 +0100 -+++ linux-2.4.32.patched/include/linux/wireless.h 2006-03-13 18:55:55.000000000 +0100 -@@ -1,10 +1,10 @@ - /* - * This file define a set of standard wireless extensions - * -- * Version : 16 2.4.03 -+ * Version : 18 12.3.05 - * - * Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com> -- * Copyright (c) 1997-2002 Jean Tourrilhes, All Rights Reserved. -+ * Copyright (c) 1997-2005 Jean Tourrilhes, All Rights Reserved. - */ - - #ifndef _LINUX_WIRELESS_H -@@ -47,12 +47,12 @@ - * # include/net/iw_handler.h - * - * Note as well that /proc/net/wireless implementation has now moved in : -- * # include/linux/wireless.c -+ * # net/core/wireless.c - * - * Wireless Events (2002 -> onward) : - * -------------------------------- - * Events are defined at the end of this file, and implemented in : -- * # include/linux/wireless.c -+ * # net/core/wireless.c - * - * Other comments : - * -------------- -@@ -82,7 +82,7 @@ - * (there is some stuff that will be added in the future...) - * I just plan to increment with each new version. - */ --#define WIRELESS_EXT 16 -+#define WIRELESS_EXT 18 - - /* - * Changes : -@@ -175,6 +175,28 @@ - * - Remove IW_MAX_GET_SPY because conflict with enhanced spy support - * - Add SIOCSIWTHRSPY/SIOCGIWTHRSPY and "struct iw_thrspy" - * - Add IW_ENCODE_TEMP and iw_range->encoding_login_index -+ * -+ * V16 to V17 -+ * ---------- -+ * - Add flags to frequency -> auto/fixed -+ * - Document (struct iw_quality *)->updated, add new flags (INVALID) -+ * - Wireless Event capability in struct iw_range -+ * - Add support for relative TxPower (yick !) -+ * -+ * V17 to V18 (From Jouni Malinen <jkmaline@cc.hut.fi>) -+ * ---------- -+ * - Add support for WPA/WPA2 -+ * - Add extended encoding configuration (SIOCSIWENCODEEXT and -+ * SIOCGIWENCODEEXT) -+ * - Add SIOCSIWGENIE/SIOCGIWGENIE -+ * - Add SIOCSIWMLME -+ * - Add SIOCSIWPMKSA -+ * - Add struct iw_range bit field for supported encoding capabilities -+ * - Add optional scan request parameters for SIOCSIWSCAN -+ * - Add SIOCSIWAUTH/SIOCGIWAUTH for setting authentication and WPA -+ * related parameters (extensible up to 4096 parameter values) -+ * - Add wireless events: IWEVGENIE, IWEVMICHAELMICFAILURE, -+ * IWEVASSOCREQIE, IWEVASSOCRESPIE, IWEVPMKIDCAND - */ - - /**************************** CONSTANTS ****************************/ -@@ -249,9 +271,33 @@ - #define SIOCSIWPOWER 0x8B2C /* set Power Management settings */ - #define SIOCGIWPOWER 0x8B2D /* get Power Management settings */ - -+/* WPA : Generic IEEE 802.11 informatiom element (e.g., for WPA/RSN/WMM). -+ * This ioctl uses struct iw_point and data buffer that includes IE id and len -+ * fields. More than one IE may be included in the request. Setting the generic -+ * IE to empty buffer (len=0) removes the generic IE from the driver. Drivers -+ * are allowed to generate their own WPA/RSN IEs, but in these cases, drivers -+ * are required to report the used IE as a wireless event, e.g., when -+ * associating with an AP. */ -+#define SIOCSIWGENIE 0x8B30 /* set generic IE */ -+#define SIOCGIWGENIE 0x8B31 /* get generic IE */ -+ -+/* WPA : IEEE 802.11 MLME requests */ -+#define SIOCSIWMLME 0x8B16 /* request MLME operation; uses -+ * struct iw_mlme */ -+/* WPA : Authentication mode parameters */ -+#define SIOCSIWAUTH 0x8B32 /* set authentication mode params */ -+#define SIOCGIWAUTH 0x8B33 /* get authentication mode params */ -+ -+/* WPA : Extended version of encoding configuration */ -+#define SIOCSIWENCODEEXT 0x8B34 /* set encoding token & mode */ -+#define SIOCGIWENCODEEXT 0x8B35 /* get encoding token & mode */ -+ -+/* WPA2 : PMKSA cache management */ -+#define SIOCSIWPMKSA 0x8B36 /* PMKSA cache operation */ -+ - /* -------------------- DEV PRIVATE IOCTL LIST -------------------- */ - --/* These 16 ioctl are wireless device private. -+/* These 32 ioctl are wireless device private, for 16 commands. - * Each driver is free to use them for whatever purpose it chooses, - * however the driver *must* export the description of those ioctls - * with SIOCGIWPRIV and *must* use arguments as defined below. -@@ -266,8 +312,8 @@ - * We now have 32 commands, so a bit more space ;-). - * Also, all 'odd' commands are only usable by root and don't return the - * content of ifr/iwr to user (but you are not obliged to use the set/get -- * convention, just use every other two command). -- * And I repeat : you are not obliged to use them with iwspy, but you -+ * convention, just use every other two command). More details in iwpriv.c. -+ * And I repeat : you are not forced to use them with iwpriv, but you - * must be compliant with it. - */ - -@@ -290,6 +336,34 @@ - #define IWEVCUSTOM 0x8C02 /* Driver specific ascii string */ - #define IWEVREGISTERED 0x8C03 /* Discovered a new node (AP mode) */ - #define IWEVEXPIRED 0x8C04 /* Expired a node (AP mode) */ -+#define IWEVGENIE 0x8C05 /* Generic IE (WPA, RSN, WMM, ..) -+ * (scan results); This includes id and -+ * length fields. One IWEVGENIE may -+ * contain more than one IE. Scan -+ * results may contain one or more -+ * IWEVGENIE events. */ -+#define IWEVMICHAELMICFAILURE 0x8C06 /* Michael MIC failure -+ * (struct iw_michaelmicfailure) -+ */ -+#define IWEVASSOCREQIE 0x8C07 /* IEs used in (Re)Association Request. -+ * The data includes id and length -+ * fields and may contain more than one -+ * IE. This event is required in -+ * Managed mode if the driver -+ * generates its own WPA/RSN IE. This -+ * should be sent just before -+ * IWEVREGISTERED event for the -+ * association. */ -+#define IWEVASSOCRESPIE 0x8C08 /* IEs used in (Re)Association -+ * Response. The data includes id and -+ * length fields and may contain more -+ * than one IE. This may be sent -+ * between IWEVASSOCREQIE and -+ * IWEVREGISTERED events for the -+ * association. */ -+#define IWEVPMKIDCAND 0x8C09 /* PMKID candidate for RSN -+ * pre-authentication -+ * (struct iw_pmkid_cand) */ - - #define IWEVFIRST 0x8C00 - -@@ -352,6 +426,18 @@ - #define IW_MODE_SECOND 5 /* Secondary master/repeater (backup) */ - #define IW_MODE_MONITOR 6 /* Passive monitor (listen only) */ - -+/* Statistics flags (bitmask in updated) */ -+#define IW_QUAL_QUAL_UPDATED 0x1 /* Value was updated since last read */ -+#define IW_QUAL_LEVEL_UPDATED 0x2 -+#define IW_QUAL_NOISE_UPDATED 0x4 -+#define IW_QUAL_QUAL_INVALID 0x10 /* Driver doesn't provide value */ -+#define IW_QUAL_LEVEL_INVALID 0x20 -+#define IW_QUAL_NOISE_INVALID 0x40 -+ -+/* Frequency flags */ -+#define IW_FREQ_AUTO 0x00 /* Let the driver decides */ -+#define IW_FREQ_FIXED 0x01 /* Force a specific value */ -+ - /* Maximum number of size of encoding token available - * they are listed in the range structure */ - #define IW_MAX_ENCODING_SIZES 8 -@@ -390,6 +476,7 @@ - #define IW_TXPOW_TYPE 0x00FF /* Type of value */ - #define IW_TXPOW_DBM 0x0000 /* Value is in dBm */ - #define IW_TXPOW_MWATT 0x0001 /* Value is in mW */ -+#define IW_TXPOW_RELATIVE 0x0002 /* Value is in arbitrary units */ - #define IW_TXPOW_RANGE 0x1000 /* Range of value between min/max */ - - /* Retry limits and lifetime flags available */ -@@ -412,12 +499,113 @@ - #define IW_SCAN_THIS_MODE 0x0020 /* Scan only this Mode */ - #define IW_SCAN_ALL_RATE 0x0040 /* Scan all Bit-Rates */ - #define IW_SCAN_THIS_RATE 0x0080 /* Scan only this Bit-Rate */ -+/* struct iw_scan_req scan_type */ -+#define IW_SCAN_TYPE_ACTIVE 0 -+#define IW_SCAN_TYPE_PASSIVE 1 - /* Maximum size of returned data */ - #define IW_SCAN_MAX_DATA 4096 /* In bytes */ - - /* Max number of char in custom event - use multiple of them if needed */ - #define IW_CUSTOM_MAX 256 /* In bytes */ - -+/* Generic information element */ -+#define IW_GENERIC_IE_MAX 1024 -+ -+/* MLME requests (SIOCSIWMLME / struct iw_mlme) */ -+#define IW_MLME_DEAUTH 0 -+#define IW_MLME_DISASSOC 1 -+ -+/* SIOCSIWAUTH/SIOCGIWAUTH struct iw_param flags */ -+#define IW_AUTH_INDEX 0x0FFF -+#define IW_AUTH_FLAGS 0xF000 -+/* SIOCSIWAUTH/SIOCGIWAUTH parameters (0 .. 4095) -+ * (IW_AUTH_INDEX mask in struct iw_param flags; this is the index of the -+ * parameter that is being set/get to; value will be read/written to -+ * struct iw_param value field) */ -+#define IW_AUTH_WPA_VERSION 0 -+#define IW_AUTH_CIPHER_PAIRWISE 1 -+#define IW_AUTH_CIPHER_GROUP 2 -+#define IW_AUTH_KEY_MGMT 3 -+#define IW_AUTH_TKIP_COUNTERMEASURES 4 -+#define IW_AUTH_DROP_UNENCRYPTED 5 -+#define IW_AUTH_80211_AUTH_ALG 6 -+#define IW_AUTH_WPA_ENABLED 7 -+#define IW_AUTH_RX_UNENCRYPTED_EAPOL 8 -+#define IW_AUTH_ROAMING_CONTROL 9 -+#define IW_AUTH_PRIVACY_INVOKED 10 -+ -+/* IW_AUTH_WPA_VERSION values (bit field) */ -+#define IW_AUTH_WPA_VERSION_DISABLED 0x00000001 -+#define IW_AUTH_WPA_VERSION_WPA 0x00000002 -+#define IW_AUTH_WPA_VERSION_WPA2 0x00000004 -+ -+/* IW_AUTH_PAIRWISE_CIPHER and IW_AUTH_GROUP_CIPHER values (bit field) */ -+#define IW_AUTH_CIPHER_NONE 0x00000001 -+#define IW_AUTH_CIPHER_WEP40 0x00000002 -+#define IW_AUTH_CIPHER_TKIP 0x00000004 -+#define IW_AUTH_CIPHER_CCMP 0x00000008 -+#define IW_AUTH_CIPHER_WEP104 0x00000010 -+ -+/* IW_AUTH_KEY_MGMT values (bit field) */ -+#define IW_AUTH_KEY_MGMT_802_1X 1 -+#define IW_AUTH_KEY_MGMT_PSK 2 -+ -+/* IW_AUTH_80211_AUTH_ALG values (bit field) */ -+#define IW_AUTH_ALG_OPEN_SYSTEM 0x00000001 -+#define IW_AUTH_ALG_SHARED_KEY 0x00000002 -+#define IW_AUTH_ALG_LEAP 0x00000004 -+ -+/* IW_AUTH_ROAMING_CONTROL values */ -+#define IW_AUTH_ROAMING_ENABLE 0 /* driver/firmware based roaming */ -+#define IW_AUTH_ROAMING_DISABLE 1 /* user space program used for roaming -+ * control */ -+ -+/* SIOCSIWENCODEEXT definitions */ -+#define IW_ENCODE_SEQ_MAX_SIZE 8 -+/* struct iw_encode_ext ->alg */ -+#define IW_ENCODE_ALG_NONE 0 -+#define IW_ENCODE_ALG_WEP 1 -+#define IW_ENCODE_ALG_TKIP 2 -+#define IW_ENCODE_ALG_CCMP 3 -+/* struct iw_encode_ext ->ext_flags */ -+#define IW_ENCODE_EXT_TX_SEQ_VALID 0x00000001 -+#define IW_ENCODE_EXT_RX_SEQ_VALID 0x00000002 -+#define IW_ENCODE_EXT_GROUP_KEY 0x00000004 -+#define IW_ENCODE_EXT_SET_TX_KEY 0x00000008 -+ -+/* IWEVMICHAELMICFAILURE : struct iw_michaelmicfailure ->flags */ -+#define IW_MICFAILURE_KEY_ID 0x00000003 /* Key ID 0..3 */ -+#define IW_MICFAILURE_GROUP 0x00000004 -+#define IW_MICFAILURE_PAIRWISE 0x00000008 -+#define IW_MICFAILURE_STAKEY 0x00000010 -+#define IW_MICFAILURE_COUNT 0x00000060 /* 1 or 2 (0 = count not supported) -+ */ -+ -+/* Bit field values for enc_capa in struct iw_range */ -+#define IW_ENC_CAPA_WPA 0x00000001 -+#define IW_ENC_CAPA_WPA2 0x00000002 -+#define IW_ENC_CAPA_CIPHER_TKIP 0x00000004 -+#define IW_ENC_CAPA_CIPHER_CCMP 0x00000008 -+ -+/* Event capability macros - in (struct iw_range *)->event_capa -+ * Because we have more than 32 possible events, we use an array of -+ * 32 bit bitmasks. Note : 32 bits = 0x20 = 2^5. */ -+#define IW_EVENT_CAPA_BASE(cmd) ((cmd >= SIOCIWFIRSTPRIV) ? \ -+ (cmd - SIOCIWFIRSTPRIV + 0x60) : \ -+ (cmd - SIOCSIWCOMMIT)) -+#define IW_EVENT_CAPA_INDEX(cmd) (IW_EVENT_CAPA_BASE(cmd) >> 5) -+#define IW_EVENT_CAPA_MASK(cmd) (1 << (IW_EVENT_CAPA_BASE(cmd) & 0x1F)) -+/* Event capability constants - event autogenerated by the kernel -+ * This list is valid for most 802.11 devices, customise as needed... */ -+#define IW_EVENT_CAPA_K_0 (IW_EVENT_CAPA_MASK(0x8B04) | \ -+ IW_EVENT_CAPA_MASK(0x8B06) | \ -+ IW_EVENT_CAPA_MASK(0x8B1A)) -+#define IW_EVENT_CAPA_K_1 (IW_EVENT_CAPA_MASK(0x8B2A)) -+/* "Easy" macro to set events in iw_range (less efficient) */ -+#define IW_EVENT_CAPA_SET(event_capa, cmd) (event_capa[IW_EVENT_CAPA_INDEX(cmd)] |= IW_EVENT_CAPA_MASK(cmd)) -+#define IW_EVENT_CAPA_SET_KERNEL(event_capa) {event_capa[0] |= IW_EVENT_CAPA_K_0; event_capa[1] |= IW_EVENT_CAPA_K_1; } -+ -+ - /****************************** TYPES ******************************/ - - /* --------------------------- SUBTYPES --------------------------- */ -@@ -456,7 +644,7 @@ - __s32 m; /* Mantissa */ - __s16 e; /* Exponent */ - __u8 i; /* List index (when in range struct) */ -- __u8 pad; /* Unused - just for alignement */ -+ __u8 flags; /* Flags (fixed/auto) */ - }; - - /* -@@ -507,6 +695,132 @@ - struct iw_quality high; /* High threshold */ - }; - -+/* -+ * Optional data for scan request -+ * -+ * Note: these optional parameters are controlling parameters for the -+ * scanning behavior, these do not apply to getting scan results -+ * (SIOCGIWSCAN). Drivers are expected to keep a local BSS table and -+ * provide a merged results with all BSSes even if the previous scan -+ * request limited scanning to a subset, e.g., by specifying an SSID. -+ * Especially, scan results are required to include an entry for the -+ * current BSS if the driver is in Managed mode and associated with an AP. -+ */ -+struct iw_scan_req -+{ -+ __u8 scan_type; /* IW_SCAN_TYPE_{ACTIVE,PASSIVE} */ -+ __u8 essid_len; -+ __u8 num_channels; /* num entries in channel_list; -+ * 0 = scan all allowed channels */ -+ __u8 flags; /* reserved as padding; use zero, this may -+ * be used in the future for adding flags -+ * to request different scan behavior */ -+ struct sockaddr bssid; /* ff:ff:ff:ff:ff:ff for broadcast BSSID or -+ * individual address of a specific BSS */ -+ -+ /* -+ * Use this ESSID if IW_SCAN_THIS_ESSID flag is used instead of using -+ * the current ESSID. This allows scan requests for specific ESSID -+ * without having to change the current ESSID and potentially breaking -+ * the current association. -+ */ -+ __u8 essid[IW_ESSID_MAX_SIZE]; -+ -+ /* -+ * Optional parameters for changing the default scanning behavior. -+ * These are based on the MLME-SCAN.request from IEEE Std 802.11. -+ * TU is 1.024 ms. If these are set to 0, driver is expected to use -+ * reasonable default values. min_channel_time defines the time that -+ * will be used to wait for the first reply on each channel. If no -+ * replies are received, next channel will be scanned after this. If -+ * replies are received, total time waited on the channel is defined by -+ * max_channel_time. -+ */ -+ __u32 min_channel_time; /* in TU */ -+ __u32 max_channel_time; /* in TU */ -+ -+ struct iw_freq channel_list[IW_MAX_FREQUENCIES]; -+}; -+ -+/* ------------------------- WPA SUPPORT ------------------------- */ -+ -+/* -+ * Extended data structure for get/set encoding (this is used with -+ * SIOCSIWENCODEEXT/SIOCGIWENCODEEXT. struct iw_point and IW_ENCODE_* -+ * flags are used in the same way as with SIOCSIWENCODE/SIOCGIWENCODE and -+ * only the data contents changes (key data -> this structure, including -+ * key data). -+ * -+ * If the new key is the first group key, it will be set as the default -+ * TX key. Otherwise, default TX key index is only changed if -+ * IW_ENCODE_EXT_SET_TX_KEY flag is set. -+ * -+ * Key will be changed with SIOCSIWENCODEEXT in all cases except for -+ * special "change TX key index" operation which is indicated by setting -+ * key_len = 0 and ext_flags |= IW_ENCODE_EXT_SET_TX_KEY. -+ * -+ * tx_seq/rx_seq are only used when respective -+ * IW_ENCODE_EXT_{TX,RX}_SEQ_VALID flag is set in ext_flags. Normal -+ * TKIP/CCMP operation is to set RX seq with SIOCSIWENCODEEXT and start -+ * TX seq from zero whenever key is changed. SIOCGIWENCODEEXT is normally -+ * used only by an Authenticator (AP or an IBSS station) to get the -+ * current TX sequence number. Using TX_SEQ_VALID for SIOCSIWENCODEEXT and -+ * RX_SEQ_VALID for SIOCGIWENCODEEXT are optional, but can be useful for -+ * debugging/testing. -+ */ -+struct iw_encode_ext -+{ -+ __u32 ext_flags; /* IW_ENCODE_EXT_* */ -+ __u8 tx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ -+ __u8 rx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ -+ struct sockaddr addr; /* ff:ff:ff:ff:ff:ff for broadcast/multicast -+ * (group) keys or unicast address for -+ * individual keys */ -+ __u16 alg; /* IW_ENCODE_ALG_* */ -+ __u16 key_len; -+ __u8 key[0]; -+}; -+ -+/* SIOCSIWMLME data */ -+struct iw_mlme -+{ -+ __u16 cmd; /* IW_MLME_* */ -+ __u16 reason_code; -+ struct sockaddr addr; -+}; -+ -+/* SIOCSIWPMKSA data */ -+#define IW_PMKSA_ADD 1 -+#define IW_PMKSA_REMOVE 2 -+#define IW_PMKSA_FLUSH 3 -+ -+#define IW_PMKID_LEN 16 -+ -+struct iw_pmksa -+{ -+ __u32 cmd; /* IW_PMKSA_* */ -+ struct sockaddr bssid; -+ __u8 pmkid[IW_PMKID_LEN]; -+}; -+ -+/* IWEVMICHAELMICFAILURE data */ -+struct iw_michaelmicfailure -+{ -+ __u32 flags; -+ struct sockaddr src_addr; -+ __u8 tsc[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ -+}; -+ -+/* IWEVPMKIDCAND data */ -+#define IW_PMKID_CAND_PREAUTH 0x00000001 /* RNS pre-authentication enabled */ -+struct iw_pmkid_cand -+{ -+ __u32 flags; /* IW_PMKID_CAND_* */ -+ __u32 index; /* the smaller the index, the higher the -+ * priority */ -+ struct sockaddr bssid; -+}; -+ - /* ------------------------ WIRELESS STATS ------------------------ */ - /* - * Wireless statistics (used for /proc/net/wireless) -@@ -610,11 +924,12 @@ - /* Old Frequency (backward compat - moved lower ) */ - __u16 old_num_channels; - __u8 old_num_frequency; -- /* Filler to keep "version" at the same offset */ -- __s32 old_freq[6]; -+ -+ /* Wireless event capability bitmasks */ -+ __u32 event_capa[6]; - - /* signal level threshold range */ -- __s32 sensitivity; -+ __s32 sensitivity; - - /* Quality of link & SNR stuff */ - /* Quality range (link, level, noise) -@@ -685,6 +1000,8 @@ - struct iw_freq freq[IW_MAX_FREQUENCIES]; /* list */ - /* Note : this frequency list doesn't need to fit channel numbers, - * because each entry contain its channel index */ -+ -+ __u32 enc_capa; /* IW_ENC_CAPA_* bit field */ - }; - - /* -diff -Nur linux-2.4.32/include/net/icmp.h linux-2.4.32.patched/include/net/icmp.h ---- linux-2.4.32/include/net/icmp.h 2001-11-22 20:47:15.000000000 +0100 -+++ linux-2.4.32.patched/include/net/icmp.h 2006-03-13 18:57:38.000000000 +0100 -@@ -23,6 +23,7 @@ - - #include <net/sock.h> - #include <net/protocol.h> -+#include <net/snmp.h> - - struct icmp_err { - int errno; -diff -Nur linux-2.4.32/include/net/ipv6.h linux-2.4.32.patched/include/net/ipv6.h ---- linux-2.4.32/include/net/ipv6.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/net/ipv6.h 2006-03-13 19:01:26.000000000 +0100 -@@ -101,6 +101,7 @@ - #ifdef __KERNEL__ - - #include <net/sock.h> -+#include <net/snmp.h> - - /* sysctls */ - extern int sysctl_ipv6_bindv6only; -diff -Nur linux-2.4.32/include/net/irda/irlan_event.h linux-2.4.32.patched/include/net/irda/irlan_event.h ---- linux-2.4.32/include/net/irda/irlan_event.h 2000-12-11 22:33:09.000000000 +0100 -+++ linux-2.4.32.patched/include/net/irda/irlan_event.h 2006-03-13 18:55:55.000000000 +0100 -@@ -67,8 +67,6 @@ - IRLAN_WATCHDOG_TIMEOUT, - } IRLAN_EVENT; - --extern char *irlan_state[]; -- - void irlan_do_client_event(struct irlan_cb *self, IRLAN_EVENT event, - struct sk_buff *skb); - -diff -Nur linux-2.4.32/include/net/irda/irttp.h linux-2.4.32.patched/include/net/irda/irttp.h ---- linux-2.4.32/include/net/irda/irttp.h 2003-06-13 16:51:39.000000000 +0200 -+++ linux-2.4.32.patched/include/net/irda/irttp.h 2006-03-13 18:55:55.000000000 +0100 -@@ -209,6 +209,4 @@ - return(irlap_is_primary(self->lsap->lap->irlap)); - } - --extern struct irttp_cb *irttp; -- - #endif /* IRTTP_H */ -diff -Nur linux-2.4.32/include/net/irda/qos.h linux-2.4.32.patched/include/net/irda/qos.h ---- linux-2.4.32/include/net/irda/qos.h 2001-11-22 20:47:11.000000000 +0100 -+++ linux-2.4.32.patched/include/net/irda/qos.h 2006-03-13 18:57:13.000000000 +0100 -@@ -83,7 +83,6 @@ - extern int sysctl_max_baud_rate; - extern int sysctl_max_inactive_time; - --extern __u32 baud_rates[]; - extern __u32 data_sizes[]; - extern __u32 min_turn_times[]; - extern __u32 add_bofs[]; -diff -Nur linux-2.4.32/include/net/iw_handler.h linux-2.4.32.patched/include/net/iw_handler.h ---- linux-2.4.32/include/net/iw_handler.h 2003-11-28 19:26:21.000000000 +0100 -+++ linux-2.4.32.patched/include/net/iw_handler.h 2006-03-13 18:55:55.000000000 +0100 -@@ -1,10 +1,10 @@ - /* - * This file define the new driver API for Wireless Extensions - * -- * Version : 5 4.12.02 -+ * Version : 6 21.6.04 - * - * Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com> -- * Copyright (c) 2001-2002 Jean Tourrilhes, All Rights Reserved. -+ * Copyright (c) 2001-2004 Jean Tourrilhes, All Rights Reserved. - */ - - #ifndef _IW_HANDLER_H -@@ -206,7 +206,7 @@ - * will be needed... - * I just plan to increment with each new version. - */ --#define IW_HANDLER_VERSION 5 -+#define IW_HANDLER_VERSION 6 - - /* - * Changes : -@@ -224,11 +224,18 @@ - * V4 to V5 - * -------- - * - Add new spy support : struct iw_spy_data & prototypes -+ * -+ * V5 to V6 -+ * -------- -+ * - Change the way we get to spy_data method for added safety -+ * - Remove spy #ifdef, they are always on -> cleaner code -+ * - Add IW_DESCR_FLAG_NOMAX flag for very large requests -+ * - Start migrating get_wireless_stats to struct iw_handler_def - */ - - /**************************** CONSTANTS ****************************/ - --/* Enable enhanced spy support. Disable to reduce footprint */ -+/* Enhanced spy support available */ - #define IW_WIRELESS_SPY - #define IW_WIRELESS_THRSPY - -@@ -258,6 +265,7 @@ - #define IW_DESCR_FLAG_EVENT 0x0002 /* Generate an event on SET */ - #define IW_DESCR_FLAG_RESTRICT 0x0004 /* GET : request is ROOT only */ - /* SET : Omit payload from generated iwevent */ -+#define IW_DESCR_FLAG_NOMAX 0x0008 /* GET : no limit on request size */ - /* Driver level flags */ - #define IW_DESCR_FLAG_WAIT 0x0100 /* Wait for driver event */ - -@@ -311,23 +319,25 @@ - /* Array of handlers for standard ioctls - * We will call dev->wireless_handlers->standard[ioctl - SIOCSIWNAME] - */ -- iw_handler * standard; -+ const iw_handler * standard; - - /* Array of handlers for private ioctls - * Will call dev->wireless_handlers->private[ioctl - SIOCIWFIRSTPRIV] - */ -- iw_handler * private; -+ const iw_handler * private; - - /* Arguments of private handler. This one is just a list, so you - * can put it in any order you want and should not leave holes... - * We will automatically export that to user space... */ -- struct iw_priv_args * private_args; -+ const struct iw_priv_args * private_args; - -- /* Driver enhanced spy support */ -- long spy_offset; /* Spy data offset */ -+ /* This field will be *removed* in the next version of WE */ -+ long spy_offset; /* DO NOT USE */ - -- /* In the long term, get_wireless_stats will move from -- * 'struct net_device' to here, to minimise bloat. */ -+ /* New location of get_wireless_stats, to de-bloat struct net_device. -+ * The old pointer in struct net_device will be gradually phased -+ * out, and drivers are encouraged to use this one... */ -+ struct iw_statistics* (*get_wireless_stats)(struct net_device *dev); - }; - - /* ---------------------- IOCTL DESCRIPTION ---------------------- */ -@@ -374,18 +384,29 @@ - */ - struct iw_spy_data - { --#ifdef IW_WIRELESS_SPY - /* --- Standard spy support --- */ - int spy_number; - u_char spy_address[IW_MAX_SPY][ETH_ALEN]; - struct iw_quality spy_stat[IW_MAX_SPY]; --#ifdef IW_WIRELESS_THRSPY - /* --- Enhanced spy support (event) */ - struct iw_quality spy_thr_low; /* Low threshold */ - struct iw_quality spy_thr_high; /* High threshold */ - u_char spy_thr_under[IW_MAX_SPY]; --#endif /* IW_WIRELESS_THRSPY */ --#endif /* IW_WIRELESS_SPY */ -+}; -+ -+/* --------------------- DEVICE WIRELESS DATA --------------------- */ -+/* -+ * This is all the wireless data specific to a device instance that -+ * is managed by the core of Wireless Extensions. -+ * We only keep pointer to those structures, so that a driver is free -+ * to share them between instances. -+ * This structure should be initialised before registering the device. -+ * Access to this data follow the same rules as any other struct net_device -+ * data (i.e. valid as long as struct net_device exist, same locking rules). -+ */ -+struct iw_public_data { -+ /* Driver enhanced spy support */ -+ struct iw_spy_data * spy_data; - }; - - /**************************** PROTOTYPES ****************************/ -diff -Nur linux-2.4.32/include/net/pkt_sched.h linux-2.4.32.patched/include/net/pkt_sched.h ---- linux-2.4.32/include/net/pkt_sched.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/net/pkt_sched.h 2006-03-13 18:57:46.000000000 +0100 -@@ -5,7 +5,11 @@ - #define PSCHED_JIFFIES 2 - #define PSCHED_CPU 3 - -+#ifdef __mips__ -+#define PSCHED_CLOCK_SOURCE PSCHED_CPU -+#else - #define PSCHED_CLOCK_SOURCE PSCHED_JIFFIES -+#endif - - #include <linux/config.h> - #include <linux/types.h> -@@ -59,8 +63,11 @@ - int (*enqueue)(struct sk_buff *, struct Qdisc *); - struct sk_buff * (*dequeue)(struct Qdisc *); - int (*requeue)(struct sk_buff *, struct Qdisc *); -- unsigned int (*drop)(struct Qdisc *); -- -+#ifdef CONFIG_BCM4710 -+ int (*drop)(struct Qdisc *); -+#else -+ unsigned int (*drop)(struct Qdisc *); -+#endif - int (*init)(struct Qdisc *, struct rtattr *arg); - void (*reset)(struct Qdisc *); - void (*destroy)(struct Qdisc *); -@@ -80,12 +87,19 @@ - #define TCQ_F_THROTTLED 2 - #define TCQ_F_INGRESS 4 - struct Qdisc_ops *ops; -+#ifdef CONFIG_BCM4710 -+ struct Qdisc *next; -+#endif - u32 handle; -- u32 parent; -+#ifndef CONFIG_BCM4710 -+ u32 parent; -+#endif - atomic_t refcnt; - struct sk_buff_head q; - struct net_device *dev; -- struct list_head list; -+#ifndef CONFIG_BCM4710 -+ struct list_head list; -+#endif - - struct tc_stats stats; - int (*reshape_fail)(struct sk_buff *skb, struct Qdisc *q); -@@ -261,7 +275,7 @@ - #define PSCHED_US2JIFFIE(delay) (((delay)+psched_clock_per_hz-1)/psched_clock_per_hz) - #define PSCHED_JIFFIE2US(delay) ((delay)*psched_clock_per_hz) - --#ifdef CONFIG_X86_TSC -+#if defined(CONFIG_X86_TSC) || defined(__mips__) - - #define PSCHED_GET_TIME(stamp) \ - ({ u64 __cur; \ -diff -Nur linux-2.4.32/include/net/sock.h linux-2.4.32.patched/include/net/sock.h ---- linux-2.4.32/include/net/sock.h 2004-11-17 12:54:22.000000000 +0100 -+++ linux-2.4.32.patched/include/net/sock.h 2006-03-13 18:57:13.000000000 +0100 -@@ -488,7 +488,13 @@ - } bictcp; - }; - -- -+#if 1 -+#define UDP_OPT_IN_SOCK 1 -+struct udp_opt { -+ __u32 esp_in_udp; -+}; -+#endif -+ - /* - * This structure really needs to be cleaned up. - * Most of it is for TCP, and not used by any of -@@ -655,6 +661,9 @@ - #if defined(CONFIG_SPX) || defined (CONFIG_SPX_MODULE) - struct spx_opt af_spx; - #endif /* CONFIG_SPX */ -+#if 1 -+ struct udp_opt af_udp; -+#endif - - } tp_pinfo; - -diff -Nur linux-2.4.32/include/net/udp.h linux-2.4.32.patched/include/net/udp.h ---- linux-2.4.32/include/net/udp.h 2005-01-19 15:10:13.000000000 +0100 -+++ linux-2.4.32.patched/include/net/udp.h 2006-03-13 19:01:28.000000000 +0100 -@@ -25,6 +25,7 @@ - #include <linux/udp.h> - #include <linux/poll.h> - #include <net/sock.h> -+#include <net/snmp.h> - - #define UDP_HTABLE_SIZE 128 - -diff -Nur linux-2.4.32/include/video/newport.h linux-2.4.32.patched/include/video/newport.h ---- linux-2.4.32/include/video/newport.h 2001-04-12 21:20:31.000000000 +0200 -+++ linux-2.4.32.patched/include/video/newport.h 2006-03-13 18:55:54.000000000 +0100 -@@ -291,8 +291,6 @@ - unsigned int _unused2[0x1ef]; - struct newport_cregs cgo; - }; --extern struct newport_regs *npregs; -- - - typedef struct { - unsigned int drawmode1; -@@ -450,38 +448,26 @@ - - /* Miscellaneous NEWPORT routines. */ - #define BUSY_TIMEOUT 100000 --static __inline__ int newport_wait(void) -+static __inline__ int newport_wait(struct newport_regs *regs) - { -- int i = 0; -+ int t = BUSY_TIMEOUT; - -- while(i < BUSY_TIMEOUT) -- if(!(npregs->cset.status & NPORT_STAT_GBUSY)) -+ while (t--) -+ if (!(regs->cset.status & NPORT_STAT_GBUSY)) - break; -- if(i == BUSY_TIMEOUT) -- return 1; -- return 0; -+ return !t; - } - --static __inline__ int newport_bfwait(void) -+static __inline__ int newport_bfwait(struct newport_regs *regs) - { -- int i = 0; -+ int t = BUSY_TIMEOUT; - -- while(i < BUSY_TIMEOUT) -- if(!(npregs->cset.status & NPORT_STAT_BBUSY)) -+ while (t--) -+ if(!(regs->cset.status & NPORT_STAT_BBUSY)) - break; -- if(i == BUSY_TIMEOUT) -- return 1; -- return 0; -+ return !t; - } - --/* newport.c and cons_newport.c routines */ --extern struct graphics_ops *newport_probe (int, const char **); -- --void newport_save (void *); --void newport_restore (void *); --void newport_reset (void); --int newport_ioctl (int card, int cmd, unsigned long arg); -- - /* - * DCBMODE register defines: - */ -@@ -564,7 +550,7 @@ - { - rex->set.dcbmode = DCB_XMAP0 | XM9_CRS_FIFO_AVAIL | - DCB_DATAWIDTH_1 | R_DCB_XMAP9_PROTOCOL; -- newport_bfwait (); -+ newport_bfwait (rex); - - while ((rex->set.dcbdata0.bybytes.b3 & 3) != XM9_FIFO_EMPTY) - ; diff --git a/openwrt/toolchain/libnotimpl/Makefile b/openwrt/toolchain/libnotimpl/Makefile deleted file mode 100644 index f68346c371..0000000000 --- a/openwrt/toolchain/libnotimpl/Makefile +++ /dev/null @@ -1,30 +0,0 @@ -include $(TOPDIR)/rules.mk - -LIBNOTIMPL_DIR:=$(TOOL_BUILD_DIR)/libnotimpl - -LIBNOTIMPL_SRCS+=./files/math.c -LIBNOTIMPL_OBJS:=$(patsubst ./files/%.c,$(LIBNOTIMPL_DIR)/%.o,$(LIBNOTIMPL_SRCS)) - -$(LIBNOTIMPL_DIR)/.prepared: - mkdir -p $(LIBNOTIMPL_DIR) - touch $@ - -$(LIBNOTIMPL_OBJS): $(LIBNOTIMPL_DIR)/%.o : ./files/%.c - $(TARGET_CC) $(TARGET_CFLAGS) -c $< -o $@ - -$(LIBNOTIMPL_DIR)/libnotimpl.a: $(LIBNOTIMPL_OBJS) - $(TARGET_CROSS)ar rc $(LIBNOTIMPL_DIR)/libnotimpl.a $(LIBNOTIMPL_OBJS) - -$(STAGING_DIR)/usr/lib/libnotimpl.a: $(LIBNOTIMPL_DIR)/libnotimpl.a - mkdir -p $(STAGING_DIR)/usr/lib - $(CP) $< $@ - touch -c $@ - -source: -prepare: $(LIBNOTIMPL_DIR)/.prepared -compile: $(LIBNOTIMPL_DIR)/libnotimpl.a -install: $(STAGING_DIR)/usr/lib/libnotimpl.a -clean: - rm -rf \ - $(STAGING_DIR)/usr/lib/libnotimpl.a \ - $(LIBNOTIMPL_DIR) \ diff --git a/openwrt/toolchain/libnotimpl/files/math.c b/openwrt/toolchain/libnotimpl/files/math.c deleted file mode 100644 index 7333a36a25..0000000000 --- a/openwrt/toolchain/libnotimpl/files/math.c +++ /dev/null @@ -1,68 +0,0 @@ -/* vi: set sw=4 ts=4: */ - -#include "math.h" - - -/* cosf for uClibc - * - * wrapper for cos(x) - */ - -#ifdef __STDC__ - float cosf(float x) -#else - float cosf(x) - float x; -#endif -{ - return (float) cos( (double)x ); -} - - -/* sinf for uClibc - * - * wrapper for sin(x) - */ - -#ifdef __STDC__ - float sinf(float x) -#else - float sinf(x) - float x; -#endif -{ - return (float) sin( (double)x ); -} - - -/* ceilf for uClibc - * - * wrapper for ceil(x) - */ - -#ifdef __STDC__ - float ceilf(float x) -#else - float ceilf(x) - float x; -#endif -{ - return (float) ceil( (double)x ); -} - - -/* rintf for uClibc - * - * wrapper for rint(x) - */ - -#ifdef __STDC__ - float rintf(float x) -#else - float rintf(x) - float x; -#endif -{ - return (float) rint( (double)x ); -} - diff --git a/openwrt/toolchain/sed/Makefile b/openwrt/toolchain/sed/Makefile deleted file mode 100644 index 637bc6597b..0000000000 --- a/openwrt/toolchain/sed/Makefile +++ /dev/null @@ -1,75 +0,0 @@ -include $(TOPDIR)/rules.mk - -############################################################# -# -# sed -# -############################################################# -SED_VER:=4.1.2 -SED_SOURCE:=sed-$(SED_VER).tar.gz -SED_SITE:=ftp://ftp.gnu.org/gnu/sed -SED_CAT:=zcat -SED_DIR1:=$(TOOL_BUILD_DIR)/sed-$(SED_VER) -SED_DIR2:=$(BUILD_DIR)/sed-$(SED_VER) -SED_BINARY:=sed/sed -SED_TARGET_BINARY:=bin/sed -ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true) -SED_CPPFLAGS=-D_FILE_OFFSET_BITS=64 -endif -HOST_SED_TARGET=$(shell ./sedcheck.sh) - -$(DL_DIR)/$(SED_SOURCE): - mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(SED_SOURCE) x $(SED_SITE) - -############################################################# -# -# build sed for use on the host system -# -############################################################# - -$(SED_DIR1)/.unpacked: $(DL_DIR)/$(SED_SOURCE) - mkdir -p $(TOOL_BUILD_DIR) - mkdir -p $(STAGING_DIR)/bin; - $(SED_CAT) $(DL_DIR)/$(SED_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - touch $(SED_DIR1)/.unpacked - -$(SED_DIR1)/.configured: $(SED_DIR1)/.unpacked - (cd $(SED_DIR1); rm -rf config.cache; \ - ./configure \ - --prefix=$(STAGING_DIR) \ - --prefix=/usr \ - ); - touch $(SED_DIR1)/.configured - -$(SED_DIR1)/$(SED_BINARY): $(SED_DIR1)/.configured - $(MAKE) -C $(SED_DIR1) - -# This stuff is needed to work around GNU make deficiencies -build-sed-host-binary: $(SED_DIR1)/$(SED_BINARY) - @if [ -L $(STAGING_DIR)/$(SED_TARGET_BINARY) ] ; then \ - rm -f $(STAGING_DIR)/$(SED_TARGET_BINARY); fi; - @if [ ! -f $(STAGING_DIR)/$(SED_TARGET_BINARY) -o $(STAGING_DIR)/$(SED_TARGET_BINARY) \ - -ot $(SED_DIR1)/$(SED_BINARY) ] ; then \ - set -x; \ - mkdir -p $(STAGING_DIR)/bin; \ - $(MAKE) DESTDIR=$(STAGING_DIR) -C $(SED_DIR1) install; \ - mv $(STAGING_DIR)/usr/bin/sed $(STAGING_DIR)/bin/; \ - rm -rf $(STAGING_DIR)/share/locale $(STAGING_DIR)/usr/info \ - $(STAGING_DIR)/usr/man $(STAGING_DIR)/usr/share/doc; fi - -use-sed-host-binary: - @if [ -x /usr/bin/sed ]; then SED="/usr/bin/sed"; else \ - if [ -x /bin/sed ]; then SED="/bin/sed"; fi; fi; \ - mkdir -p $(STAGING_DIR)/bin; \ - rm -f $(STAGING_DIR)/$(SED_TARGET_BINARY); \ - ln -s $$SED $(STAGING_DIR)/$(SED_TARGET_BINARY) - -source: -prepare: -compile: -install: $(HOST_SED_TARGET) -clean: - rm -rf $(SED_DIR1) - rm -f $(STAGING_DIR)/$(SED_TARGET_BINARY) - diff --git a/openwrt/toolchain/sed/sedcheck.sh b/openwrt/toolchain/sed/sedcheck.sh deleted file mode 100755 index 4d645b6ab0..0000000000 --- a/openwrt/toolchain/sed/sedcheck.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -if [ -x /usr/bin/sed ]; then - SED="/usr/bin/sed"; -else - if [ -x /bin/sed ]; then - SED="/bin/sed"; - fi; -fi; - -echo "HELLO" > .sedtest -$SED -i -e "s/HELLO/GOODBYE/" .sedtest >/dev/null 2>&1 - -if [ $? != 0 ] ; then - echo build-sed-host-binary -else - echo use-sed-host-binary -fi; -rm -f .sedtest - - diff --git a/openwrt/toolchain/uClibc/Config.in b/openwrt/toolchain/uClibc/Config.in deleted file mode 100644 index 4b016c951f..0000000000 --- a/openwrt/toolchain/uClibc/Config.in +++ /dev/null @@ -1,18 +0,0 @@ -# Choose uClibc options -# -if CONFIG_DEVEL - comment "uClibc Options" -endif - -config BR2_UCLIBC_VERSION_SNAPSHOT - bool - prompt "Use the daily snapshot of uClibc?" if CONFIG_DEVEL - default n - help - Would you like to use the latest daily snapshot? - -config BR2_USE_UCLIBC_SNAPSHOT - string - default "snapshot" - depends on BR2_UCLIBC_VERSION_SNAPSHOT - diff --git a/openwrt/toolchain/uClibc/Makefile b/openwrt/toolchain/uClibc/Makefile deleted file mode 100644 index d77f554a12..0000000000 --- a/openwrt/toolchain/uClibc/Makefile +++ /dev/null @@ -1,103 +0,0 @@ -include $(TOPDIR)/rules.mk - -############################################################# -# -# uClibc (the C library) -# -############################################################# - -ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y) -# Be aware that this changes daily.... -UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc -UCLIBC_SOURCE:=uClibc-$(strip $(subst ",, $(BR2_USE_UCLIBC_SNAPSHOT))).tar.bz2 -#" -UCLIBC_SITE:=http://www.uclibc.org/downloads/snapshots -UCLIBC_VER:=PKG_VERSION:=0.${shell date +"%G%m%d"} -else -UCLIBC_VER:=0.9.28 -UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-$(UCLIBC_VER) -UCLIBC_SOURCE:=uClibc-$(UCLIBC_VER).tar.bz2 -UCLIBC_SITE:=http://www.uclibc.org/downloads -endif - -UCLIBC_TARGET_ARCH:=$(shell echo $(ARCH) | sed -e s'/-.*//' \ - -e 's/i.86/i386/' \ - -e 's/sparc.*/sparc/' \ - -e 's/arm.*/arm/g' \ - -e 's/m68k.*/m68k/' \ - -e 's/ppc/powerpc/g' \ - -e 's/v850.*/v850/g' \ - -e 's/sh64/sh/' \ - -e 's/sh[234].*/sh/' \ - -e 's/mips.*/mips/' \ - -e 's/mipsel.*/mips/' \ - -e 's/cris.*/cris/' \ -) - - -$(DL_DIR)/$(UCLIBC_SOURCE): - mkdir -p $(DL_DIR) - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(UCLIBC_SOURCE) x $(UCLIBC_SITE) - -$(UCLIBC_DIR)/.unpacked: $(DL_DIR)/$(UCLIBC_SOURCE) - mkdir -p $(TOOL_BUILD_DIR) - bzcat $(DL_DIR)/$(UCLIBC_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - $(PATCH) $(UCLIBC_DIR) ./patches - touch $(UCLIBC_DIR)/.unpacked - -$(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.unpacked - $(SED) 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(UCLIBC_DIR)/Rules.mak - $(CP) ./files/config.$(ARCH) $(UCLIBC_DIR)/.config - $(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \ - $(UCLIBC_DIR)/.config -ifeq ($(BR2_LARGEFILE),y) - $(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=y,g' $(UCLIBC_DIR)/.config -else - $(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=n,g' $(UCLIBC_DIR)/.config -endif - $(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.config -ifeq ($(BR2_SOFT_FLOAT),y) - $(SED) 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' $(UCLIBC_DIR)/.config -endif - mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/include - mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/lib - mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/lib - $(MAKE1) -C $(UCLIBC_DIR) \ - PREFIX=$(TOOL_BUILD_DIR)/uClibc_dev/ \ - DEVEL_PREFIX=/usr/ \ - RUNTIME_PREFIX=$(TOOL_BUILD_DIR)/uClibc_dev/ \ - HOSTCC="$(HOSTCC)" \ - CPU_CFLAGS="$(TARGET_CFLAGS)" \ - pregen install_dev; - touch $(UCLIBC_DIR)/.configured - -$(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured $(LIBFLOAT_TARGET) - $(MAKE1) -C $(UCLIBC_DIR) \ - PREFIX= \ - DEVEL_PREFIX=/ \ - RUNTIME_PREFIX=/ \ - HOSTCC="$(HOSTCC)" \ - CPU_CFLAGS="$(TARGET_CFLAGS)" \ - all - touch -c $(UCLIBC_DIR)/lib/libc.a - -$(STAGING_DIR)/lib/libc.a: $(UCLIBC_DIR)/lib/libc.a - $(MAKE1) -C $(UCLIBC_DIR) \ - PREFIX=$(STAGING_DIR)/ \ - DEVEL_PREFIX=/ \ - RUNTIME_PREFIX=/ \ - install_runtime - $(MAKE1) -C $(UCLIBC_DIR) \ - PREFIX=$(STAGING_DIR)/ \ - DEVEL_PREFIX=/ \ - RUNTIME_PREFIX=/ \ - install_dev - echo $(UCLIBC_VER) > $(STAGING_DIR)/uclibc_version - touch -c $(STAGING_DIR)/lib/libc.a - -source: $(DL_DIR)/$(UCLIBC_SOURCE) -prepare: $(UCLIBC_DIR)/.configured -compile: $(UCLIBC_DIR)/lib/libc.a -install: $(STAGING_DIR)/lib/libc.a $(UCLIBC_TARGETS) -clean: - rm -rf $(UCLIBC_DIR) $(TOOL_BUILD_DIR)/uClibc_dev diff --git a/openwrt/toolchain/uClibc/files/config.armeb b/openwrt/toolchain/uClibc/files/config.armeb deleted file mode 100644 index ad01dc6ccd..0000000000 --- a/openwrt/toolchain/uClibc/files/config.armeb +++ /dev/null @@ -1,168 +0,0 @@ -# -# Automatically generated make config: don't edit -# -# TARGET_alpha is not set -TARGET_arm=y -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_x86_64 is not set - -# -# Target Architecture Features and Options -# -HAVE_ELF=y -ARCH_SUPPORTS_LITTLE_ENDIAN=y -TARGET_ARCH="arm" -ARCH_SUPPORTS_BIG_ENDIAN=y -# CONFIG_GENERIC_ARM is not set -# CONFIG_ARM610 is not set -# CONFIG_ARM710 is not set -# CONFIG_ARM720T is not set -# CONFIG_ARM920T is not set -# CONFIG_ARM922T is not set -# CONFIG_ARM926T is not set -# CONFIG_ARM1136JF_S is not set -# CONFIG_ARM_SA110 is not set -# CONFIG_ARM_SA1100 is not set -CONFIG_ARM_XSCALE=y -# ARCH_LITTLE_ENDIAN is not set -ARCH_BIG_ENDIAN=y -# ARCH_HAS_NO_MMU is not set -ARCH_HAS_MMU=y -UCLIBC_HAS_FLOATS=y -# HAS_FPU is not set -UCLIBC_HAS_SOFT_FLOAT=y -# DO_C99_MATH is not set -KERNEL_SOURCE="./toolchain_build_armeb/linux" -C_SYMBOL_PREFIX="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# HAVE_NO_SHARED is not set -HAVE_SHARED=y -# ARCH_HAS_NO_LDSO is not set -BUILD_UCLIBC_LDSO=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_RUNPATH is not set -# DL_FINI_CRT_COMPAT is not set -UCLIBC_CTOR_DTOR=y -# HAS_NO_THREADS is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_LFS=y -# UCLIBC_STATIC_LDCONFIG is not set -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -HAS_SHADOW=y -# UNIX98PTY_ONLY is not set -ASSUME_DEVPTS=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" - -# -# Networking Support -# -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y - -# -# Library Installation Options -# -SHARED_LIB_LOADER_PREFIX="/lib" -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" - -# -# uClibc security related options -# -# UCLIBC_SECURITY is not set - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -WARNINGS="-Wall" -# UCLIBC_MJN3_ONLY is not set diff --git a/openwrt/toolchain/uClibc/files/config.i386 b/openwrt/toolchain/uClibc/files/config.i386 deleted file mode 100644 index b1a9ec3a1c..0000000000 --- a/openwrt/toolchain/uClibc/files/config.i386 +++ /dev/null @@ -1,178 +0,0 @@ -# -# Automatically generated make config: don't edit -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -TARGET_i386=y -# TARGET_i960 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_x86_64 is not set - -# -# Target Architecture Features and Options -# -HAVE_ELF=y -ARCH_SUPPORTS_LITTLE_ENDIAN=y -TARGET_ARCH="i386" -# CONFIG_GENERIC_386 is not set -# CONFIG_386 is not set -CONFIG_486=y -# CONFIG_586 is not set -# CONFIG_586MMX is not set -# CONFIG_686 is not set -# CONFIG_PENTIUMII is not set -# CONFIG_PENTIUMIII is not set -# CONFIG_PENTIUM4 is not set -# CONFIG_K6 is not set -# CONFIG_K7 is not set -# CONFIG_ELAN is not set -# CONFIG_CRUSOE is not set -# CONFIG_WINCHIPC6 is not set -# CONFIG_WINCHIP2 is not set -# CONFIG_CYRIXIII is not set -# CONFIG_NEHEMIAH is not set -# CONFIG_MIPS_ISA_1 is not set -# CONFIG_MIPS_ISA_2 is not set -# CONFIG_MIPS_ISA_3 is not set -# CONFIG_MIPS_ISA_4 is not set -# CONFIG_MIPS_ISA_MIPS32 is not set -# CONFIG_MIPS_ISA_MIPS64 is not set -ARCH_LITTLE_ENDIAN=y -# ARCH_BIG_ENDIAN is not set -# ARCH_HAS_NO_MMU is not set -ARCH_HAS_MMU=y -UCLIBC_HAS_FLOATS=y -HAS_FPU=y -# DO_C99_MATH is not set -KERNEL_SOURCE="./toolchain_build_i386/linux" -C_SYMBOL_PREFIX="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# HAVE_NO_SHARED is not set -HAVE_SHARED=y -# ARCH_HAS_NO_LDSO is not set -BUILD_UCLIBC_LDSO=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_RUNPATH is not set -# DL_FINI_CRT_COMPAT is not set -UCLIBC_CTOR_DTOR=y -# HAS_NO_THREADS is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_LFS=y -# UCLIBC_STATIC_LDCONFIG is not set -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -HAS_SHADOW=y -# UNIX98PTY_ONLY is not set -ASSUME_DEVPTS=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" - -# -# Networking Support -# -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y - -# -# Library Installation Options -# -SHARED_LIB_LOADER_PREFIX="/lib" -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" - -# -# uClibc security related options -# -# UCLIBC_SECURITY is not set - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -WARNINGS="-Wall" -# UCLIBC_MJN3_ONLY is not set diff --git a/openwrt/toolchain/uClibc/files/config.mips b/openwrt/toolchain/uClibc/files/config.mips deleted file mode 100644 index 06c3d829b6..0000000000 --- a/openwrt/toolchain/uClibc/files/config.mips +++ /dev/null @@ -1,163 +0,0 @@ -# -# Automatically generated make config: don't edit -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -TARGET_mips=y -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_x86_64 is not set - -# -# Target Architecture Features and Options -# -HAVE_ELF=y -ARCH_SUPPORTS_LITTLE_ENDIAN=y -TARGET_ARCH="mips" -ARCH_CFLAGS="-mno-split-addresses" -ARCH_SUPPORTS_BIG_ENDIAN=y -# CONFIG_MIPS_ISA_1 is not set -# CONFIG_MIPS_ISA_2 is not set -# CONFIG_MIPS_ISA_3 is not set -# CONFIG_MIPS_ISA_4 is not set -CONFIG_MIPS_ISA_MIPS32=y -# CONFIG_MIPS_ISA_MIPS64 is not set -# ARCH_LITTLE_ENDIAN is not set -ARCH_BIG_ENDIAN=y -# ARCH_HAS_NO_MMU is not set -ARCH_HAS_MMU=y -UCLIBC_HAS_FLOATS=y -HAS_FPU=y -# DO_C99_MATH is not set -KERNEL_SOURCE="./toolchain_build_mips/linux" -C_SYMBOL_PREFIX="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# HAVE_NO_SHARED is not set -HAVE_SHARED=y -# ARCH_HAS_NO_LDSO is not set -BUILD_UCLIBC_LDSO=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_RUNPATH is not set -DL_FINI_CRT_COMPAT=y -UCLIBC_CTOR_DTOR=y -# HAS_NO_THREADS is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_LFS=y -# UCLIBC_STATIC_LDCONFIG is not set -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -HAS_SHADOW=y -# UNIX98PTY_ONLY is not set -ASSUME_DEVPTS=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" - -# -# Networking Support -# -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y - -# -# Library Installation Options -# -SHARED_LIB_LOADER_PREFIX="/lib" -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" - -# -# uClibc security related options -# -# UCLIBC_SECURITY is not set - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -WARNINGS="-Wall" -# UCLIBC_MJN3_ONLY is not set diff --git a/openwrt/toolchain/uClibc/files/config.mipsel b/openwrt/toolchain/uClibc/files/config.mipsel deleted file mode 100644 index 8a7db1a3dc..0000000000 --- a/openwrt/toolchain/uClibc/files/config.mipsel +++ /dev/null @@ -1,163 +0,0 @@ -# -# Automatically generated make config: don't edit -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -TARGET_mips=y -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_x86_64 is not set - -# -# Target Architecture Features and Options -# -HAVE_ELF=y -ARCH_SUPPORTS_LITTLE_ENDIAN=y -TARGET_ARCH="mips" -ARCH_CFLAGS="-mno-split-addresses" -ARCH_SUPPORTS_BIG_ENDIAN=y -# CONFIG_MIPS_ISA_1 is not set -# CONFIG_MIPS_ISA_2 is not set -# CONFIG_MIPS_ISA_3 is not set -# CONFIG_MIPS_ISA_4 is not set -CONFIG_MIPS_ISA_MIPS32=y -# CONFIG_MIPS_ISA_MIPS64 is not set -ARCH_LITTLE_ENDIAN=y -# ARCH_BIG_ENDIAN is not set -# ARCH_HAS_NO_MMU is not set -ARCH_HAS_MMU=y -UCLIBC_HAS_FLOATS=y -HAS_FPU=y -# DO_C99_MATH is not set -KERNEL_SOURCE="./toolchain_build_mipsel/linux" -C_SYMBOL_PREFIX="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# HAVE_NO_SHARED is not set -HAVE_SHARED=y -# ARCH_HAS_NO_LDSO is not set -BUILD_UCLIBC_LDSO=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_RUNPATH is not set -DL_FINI_CRT_COMPAT=y -UCLIBC_CTOR_DTOR=y -# HAS_NO_THREADS is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_LFS=y -# UCLIBC_STATIC_LDCONFIG is not set -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -HAS_SHADOW=y -# UNIX98PTY_ONLY is not set -ASSUME_DEVPTS=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" - -# -# Networking Support -# -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y - -# -# Library Installation Options -# -SHARED_LIB_LOADER_PREFIX="/lib" -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" - -# -# uClibc security related options -# -# UCLIBC_SECURITY is not set - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -WARNINGS="-Wall" -# UCLIBC_MJN3_ONLY is not set diff --git a/openwrt/toolchain/uClibc/files/config.powerpc b/openwrt/toolchain/uClibc/files/config.powerpc deleted file mode 100644 index 457c7d5e53..0000000000 --- a/openwrt/toolchain/uClibc/files/config.powerpc +++ /dev/null @@ -1,161 +0,0 @@ -# -# Automatically generated make config: don't edit -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -TARGET_powerpc=y -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_x86_64 is not set - -# -# Target Architecture Features and Options -# -HAVE_ELF=y -TARGET_ARCH="powerpc" -ARCH_SUPPORTS_BIG_ENDIAN=y -# CONFIG_MIPS_ISA_1 is not set -# CONFIG_MIPS_ISA_2 is not set -# CONFIG_MIPS_ISA_3 is not set -# CONFIG_MIPS_ISA_4 is not set -# CONFIG_MIPS_ISA_MIPS32 is not set -# CONFIG_MIPS_ISA_MIPS64 is not set -# ARCH_LITTLE_ENDIAN is not set -ARCH_BIG_ENDIAN=y -# ARCH_HAS_NO_MMU is not set -ARCH_HAS_MMU=y -UCLIBC_HAS_FLOATS=y -HAS_FPU=y -# DO_C99_MATH is not set -KERNEL_SOURCE="./toolchain_build_powerpc/linux" -C_SYMBOL_PREFIX="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# HAVE_NO_SHARED is not set -HAVE_SHARED=y -# ARCH_HAS_NO_LDSO is not set -BUILD_UCLIBC_LDSO=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_RUNPATH is not set -DL_FINI_CRT_COMPAT=y -UCLIBC_CTOR_DTOR=y -# HAS_NO_THREADS is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_LFS=y -# UCLIBC_STATIC_LDCONFIG is not set -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -HAS_SHADOW=y -# UNIX98PTY_ONLY is not set -ASSUME_DEVPTS=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" - -# -# Networking Support -# -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y - -# -# Library Installation Options -# -SHARED_LIB_LOADER_PREFIX="/lib" -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" - -# -# uClibc security related options -# -# UCLIBC_SECURITY is not set - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -WARNINGS="-Wall" -# UCLIBC_MJN3_ONLY is not set diff --git a/openwrt/toolchain/uClibc/patches/100-signal_handler_crash_workaround.patch b/openwrt/toolchain/uClibc/patches/100-signal_handler_crash_workaround.patch deleted file mode 100644 index 72cdb7212e..0000000000 --- a/openwrt/toolchain/uClibc/patches/100-signal_handler_crash_workaround.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur uClibc-0.9.28/libc/sysdeps/linux/mips/sigaction.c uClibc-0.9.28.openwrt/libc/sysdeps/linux/mips/sigaction.c ---- uClibc-0.9.28/libc/sysdeps/linux/mips/sigaction.c 2005-08-18 00:49:44.000000000 +0200 -+++ uClibc-0.9.28.openwrt/libc/sysdeps/linux/mips/sigaction.c 2005-10-20 13:19:05.000000000 +0200 -@@ -49,7 +49,8 @@ - memcpy (&kact.sa_mask, &act->sa_mask, sizeof (kact.sa_mask)); - kact.sa_flags = act->sa_flags; - -- kact.sa_flags = act->sa_flags | SA_RESTORER; -+/* http://bugs.uclibc.org/view.php?id=480 -+ kact.sa_flags = act->sa_flags | SA_RESTORER; */ - #ifdef HAVE_SA_RESTORER - kact.sa_restorer = act->sa_restorer; - #endif diff --git a/openwrt/toolchain/uClibc/patches/110-mips_pipe.patch b/openwrt/toolchain/uClibc/patches/110-mips_pipe.patch deleted file mode 100644 index 734310f07e..0000000000 --- a/openwrt/toolchain/uClibc/patches/110-mips_pipe.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -ur uClibc-0.9.28/libc/sysdeps/linux/mips/pipe.S uClibc-0.9.28.openwrt/libc/sysdeps/linux/mips/pipe.S ---- uClibc-0.9.28/libc/sysdeps/linux/mips/pipe.S 2005-08-18 00:49:44.000000000 +0200 -+++ uClibc-0.9.28.openwrt/libc/sysdeps/linux/mips/pipe.S 2005-10-20 12:34:52.000000000 +0200 -@@ -10,22 +10,17 @@ - .globl pipe - .ent pipe, 0 - pipe: -- addiu sp,sp,-24 -- sw a0,16(sp) - li v0,__NR_pipe - syscall - beqz a3, 1f -- la t3, errno -- sw v0, (t3) -+ sw v0, errno - li v0, -1 - b 2f - 1: -- lw a0, 16(sp) - sw v0, 0(a0) - sw v1, 4(a0) - li v0, 0 - 2: -- addiu sp,sp,24 - j ra - .end pipe - .size pipe,.-pipe diff --git a/openwrt/toolchain/uClibc/patches/120-more_standard_math.patch b/openwrt/toolchain/uClibc/patches/120-more_standard_math.patch deleted file mode 100644 index f7d626ac03..0000000000 --- a/openwrt/toolchain/uClibc/patches/120-more_standard_math.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN uClibc.old/libm/Makefile uClibc.dev/libm/Makefile ---- uClibc.old/libm/Makefile 2005-08-18 00:49:41.000000000 +0200 -+++ uClibc.dev/libm/Makefile 2005-10-22 00:56:03.106683500 +0200 -@@ -81,6 +81,8 @@ - w_cosh.c w_exp.c s_fabs.c s_floor.c w_fmod.c s_frexp.c \ - s_ldexp.c w_log.c w_log10.c s_modf.c w_pow.c s_sin.c \ - w_sinh.c w_sqrt.c s_tan.c s_tanh.c -+# extra stuff required for some apps -+CSRC+= fpmacros.c nan.c s_rint.c e_hypot.c w_hypot.c - CSRC+= s_expm1.c s_scalbn.c s_copysign.c e_acos.c e_asin.c e_atan2.c \ - k_cos.c e_cosh.c e_exp.c e_fmod.c e_log.c e_log10.c e_pow.c \ - k_sin.c e_sinh.c e_sqrt.c k_tan.c e_rem_pio2.c k_rem_pio2.c \ diff --git a/openwrt/toolchain/uClibc/patches/140-uclibc_do_div_ldso.patch b/openwrt/toolchain/uClibc/patches/140-uclibc_do_div_ldso.patch deleted file mode 100644 index b19d55f592..0000000000 --- a/openwrt/toolchain/uClibc/patches/140-uclibc_do_div_ldso.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -ur uClibc-0.9.28/ldso/include/dl-string.h uClibc-0.9.28.openwrt/ldso/include/dl-string.h ---- uClibc-0.9.28/ldso/include/dl-string.h 2005-08-18 00:49:41.000000000 +0200 -+++ uClibc-0.9.28.openwrt/ldso/include/dl-string.h 2006-04-12 11:07:49.000000000 +0200 -@@ -4,6 +4,14 @@ - #include <dl-sysdep.h> // for do_rem - #include <features.h> - -+/* provide some sane defaults */ -+#ifndef do_rem -+# define do_rem(result, n, base) ((result) = (n) % (base)) -+#endif -+#ifndef do_div_10 -+# define do_div_10(result, remain) ((result) /= 10) -+#endif -+ - static size_t _dl_strlen(const char * str); - static char *_dl_strcat(char *dst, const char *src); - static char * _dl_strcpy(char * dst,const char *src); -@@ -228,7 +236,7 @@ - char temp; - do_rem(temp, i, 10); - *--p = '0' + temp; -- i /= 10; -+ do_div_10(i, temp); - } while (i > 0); - return p; - } -@@ -318,7 +326,7 @@ - do { \ - do_rem(v, (X), 10); \ - *--tmp2 = '0' + v; \ -- (X) /= 10; \ -+ do_div_10((X), v); \ - } while ((X) > 0); \ - _dl_write(2, tmp2, tmp1 - tmp2 + sizeof(tmp) - 1); \ - } -diff -ur uClibc-0.9.28/ldso/ldso/arm/dl-sysdep.h uClibc-0.9.28.openwrt/ldso/ldso/arm/dl-sysdep.h ---- uClibc-0.9.28/ldso/ldso/arm/dl-sysdep.h 2005-08-18 00:49:41.000000000 +0200 -+++ uClibc-0.9.28.openwrt/ldso/ldso/arm/dl-sysdep.h 2006-04-12 11:31:58.000000000 +0200 -@@ -43,6 +43,7 @@ - return m; - } - #define do_rem(result, n, base) ((result) = arm_modulus(n, base)) -+#define do_div_10(result, remain) ((result) = (((result) - (remain)) / 2) * -(-1ul / 5ul)) - - /* Here we define the magic numbers that this dynamic loader should accept */ - #define MAGIC1 EM_ARM diff --git a/openwrt/toolchain/uClibc/patches/ipv6_missing_sockopts.patch b/openwrt/toolchain/uClibc/patches/ipv6_missing_sockopts.patch deleted file mode 100644 index 8aed08125f..0000000000 --- a/openwrt/toolchain/uClibc/patches/ipv6_missing_sockopts.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- uClibc-0.9.27-old/libc/sysdeps/linux/common/bits/in.h 2005-01-12 08:59:21.000000000 +0100 -+++ uClibc-0.9.27-new/libc/sysdeps/linux/common/bits/in.h 2005-08-23 02:12:47.000000000 +0200 -@@ -115,6 +115,9 @@ - #define IPV6_MTU_DISCOVER 23 - #define IPV6_MTU 24 - #define IPV6_RECVERR 25 -+#define IPV6_V6ONLY 26 -+#define IPV6_JOIN_ANYCAST 27 -+#define IPV6_LEAVE_ANYCAST 28 - - #define SCM_SRCRT IPV6_RXSRCRT - diff --git a/openwrt/toolchain/utils/Makefile b/openwrt/toolchain/utils/Makefile deleted file mode 100644 index 2af6b139df..0000000000 --- a/openwrt/toolchain/utils/Makefile +++ /dev/null @@ -1,26 +0,0 @@ -include $(TOPDIR)/rules.mk - -TARGETS:=sstrip -UTILS_BUILD_DIR:=$(TOOL_BUILD_DIR)/utils - -OS:=$(shell uname) -ifeq ($(OS),Darwin) -CFLAGS += -I./include -endif - -prepare: $(UTILS_BUILD_DIR) -compile: prepare $(patsubst %,$(UTILS_BUILD_DIR)/%,$(TARGETS)) -install: compile - mkdir -p $(STAGING_DIR)/bin - $(CP) $(UTILS_BUILD_DIR)/* $(STAGING_DIR)/bin/ -package: -clean: - rm -rf $(UTILS_BUILD_DIR) - -$(UTILS_BUILD_DIR): - mkdir -p $(UTILS_BUILD_DIR) - -$(UTILS_BUILD_DIR)/%: src/%.c - $(CC) $(CFLAGS) -o $@ $(patsubst $(UTILS_BUILD_DIR)/%,src/%.c,$@) - chmod 755 $@ - diff --git a/openwrt/toolchain/utils/include/elf.h b/openwrt/toolchain/utils/include/elf.h deleted file mode 100644 index eae96d0003..0000000000 --- a/openwrt/toolchain/utils/include/elf.h +++ /dev/null @@ -1,2445 +0,0 @@ -/* This file defines standard ELF types, structures, and macros. - Copyright (C) 1995-1999,2000,2001,2002,2003 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. */ - -#ifndef _ELF_H -#define _ELF_H 1 - -__BEGIN_DECLS - -/* Standard ELF types. */ - -#include <stdint.h> - -/* Type for a 16-bit quantity. */ -typedef uint16_t Elf32_Half; -typedef uint16_t Elf64_Half; - -/* Types for signed and unsigned 32-bit quantities. */ -typedef uint32_t Elf32_Word; -typedef int32_t Elf32_Sword; -typedef uint32_t Elf64_Word; -typedef int32_t Elf64_Sword; - -/* Types for signed and unsigned 64-bit quantities. */ -typedef uint64_t Elf32_Xword; -typedef int64_t Elf32_Sxword; -typedef uint64_t Elf64_Xword; -typedef int64_t Elf64_Sxword; - -/* Type of addresses. */ -typedef uint32_t Elf32_Addr; -typedef uint64_t Elf64_Addr; - -/* Type of file offsets. */ -typedef uint32_t Elf32_Off; -typedef uint64_t Elf64_Off; - -/* Type for section indices, which are 16-bit quantities. */ -typedef uint16_t Elf32_Section; -typedef uint16_t Elf64_Section; - -/* Type for version symbol information. */ -typedef Elf32_Half Elf32_Versym; -typedef Elf64_Half Elf64_Versym; - - -/* The ELF file header. This appears at the start of every ELF file. */ - -#define EI_NIDENT (16) - -typedef struct -{ - unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ - Elf32_Half e_type; /* Object file type */ - Elf32_Half e_machine; /* Architecture */ - Elf32_Word e_version; /* Object file version */ - Elf32_Addr e_entry; /* Entry point virtual address */ - Elf32_Off e_phoff; /* Program header table file offset */ - Elf32_Off e_shoff; /* Section header table file offset */ - Elf32_Word e_flags; /* Processor-specific flags */ - Elf32_Half e_ehsize; /* ELF header size in bytes */ - Elf32_Half e_phentsize; /* Program header table entry size */ - Elf32_Half e_phnum; /* Program header table entry count */ - Elf32_Half e_shentsize; /* Section header table entry size */ - Elf32_Half e_shnum; /* Section header table entry count */ - Elf32_Half e_shstrndx; /* Section header string table index */ -} Elf32_Ehdr; - -typedef struct -{ - unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ - Elf64_Half e_type; /* Object file type */ - Elf64_Half e_machine; /* Architecture */ - Elf64_Word e_version; /* Object file version */ - Elf64_Addr e_entry; /* Entry point virtual address */ - Elf64_Off e_phoff; /* Program header table file offset */ - Elf64_Off e_shoff; /* Section header table file offset */ - Elf64_Word e_flags; /* Processor-specific flags */ - Elf64_Half e_ehsize; /* ELF header size in bytes */ - Elf64_Half e_phentsize; /* Program header table entry size */ - Elf64_Half e_phnum; /* Program header table entry count */ - Elf64_Half e_shentsize; /* Section header table entry size */ - Elf64_Half e_shnum; /* Section header table entry count */ - Elf64_Half e_shstrndx; /* Section header string table index */ -} Elf64_Ehdr; - -/* Fields in the e_ident array. The EI_* macros are indices into the - array. The macros under each EI_* macro are the values the byte - may have. */ - -#define EI_MAG0 0 /* File identification byte 0 index */ -#define ELFMAG0 0x7f /* Magic number byte 0 */ - -#define EI_MAG1 1 /* File identification byte 1 index */ -#define ELFMAG1 'E' /* Magic number byte 1 */ - -#define EI_MAG2 2 /* File identification byte 2 index */ -#define ELFMAG2 'L' /* Magic number byte 2 */ - -#define EI_MAG3 3 /* File identification byte 3 index */ -#define ELFMAG3 'F' /* Magic number byte 3 */ - -/* Conglomeration of the identification bytes, for easy testing as a word. */ -#define ELFMAG "\177ELF" -#define SELFMAG 4 - -#define EI_CLASS 4 /* File class byte index */ -#define ELFCLASSNONE 0 /* Invalid class */ -#define ELFCLASS32 1 /* 32-bit objects */ -#define ELFCLASS64 2 /* 64-bit objects */ -#define ELFCLASSNUM 3 - -#define EI_DATA 5 /* Data encoding byte index */ -#define ELFDATANONE 0 /* Invalid data encoding */ -#define ELFDATA2LSB 1 /* 2's complement, little endian */ -#define ELFDATA2MSB 2 /* 2's complement, big endian */ -#define ELFDATANUM 3 - -#define EI_VERSION 6 /* File version byte index */ - /* Value must be EV_CURRENT */ - -#define EI_OSABI 7 /* OS ABI identification */ -#define ELFOSABI_NONE 0 /* UNIX System V ABI */ -#define ELFOSABI_SYSV 0 /* Alias. */ -#define ELFOSABI_HPUX 1 /* HP-UX */ -#define ELFOSABI_NETBSD 2 /* NetBSD. */ -#define ELFOSABI_LINUX 3 /* Linux. */ -#define ELFOSABI_SOLARIS 6 /* Sun Solaris. */ -#define ELFOSABI_AIX 7 /* IBM AIX. */ -#define ELFOSABI_IRIX 8 /* SGI Irix. */ -#define ELFOSABI_FREEBSD 9 /* FreeBSD. */ -#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX. */ -#define ELFOSABI_MODESTO 11 /* Novell Modesto. */ -#define ELFOSABI_OPENBSD 12 /* OpenBSD. */ -#define ELFOSABI_ARM 97 /* ARM */ -#define ELFOSABI_STANDALONE 255 /* Standalone (embedded) application */ - -#define EI_ABIVERSION 8 /* ABI version */ - -#define EI_PAD 9 /* Byte index of padding bytes */ - -/* Legal values for e_type (object file type). */ - -#define ET_NONE 0 /* No file type */ -#define ET_REL 1 /* Relocatable file */ -#define ET_EXEC 2 /* Executable file */ -#define ET_DYN 3 /* Shared object file */ -#define ET_CORE 4 /* Core file */ -#define ET_NUM 5 /* Number of defined types */ -#define ET_LOOS 0xfe00 /* OS-specific range start */ -#define ET_HIOS 0xfeff /* OS-specific range end */ -#define ET_LOPROC 0xff00 /* Processor-specific range start */ -#define ET_HIPROC 0xffff /* Processor-specific range end */ - -/* Legal values for e_machine (architecture). */ - -#define EM_NONE 0 /* No machine */ -#define EM_M32 1 /* AT&T WE 32100 */ -#define EM_SPARC 2 /* SUN SPARC */ -#define EM_386 3 /* Intel 80386 */ -#define EM_68K 4 /* Motorola m68k family */ -#define EM_88K 5 /* Motorola m88k family */ -#define EM_860 7 /* Intel 80860 */ -#define EM_MIPS 8 /* MIPS R3000 big-endian */ -#define EM_S370 9 /* IBM System/370 */ -#define EM_MIPS_RS3_LE 10 /* MIPS R3000 little-endian */ - -#define EM_PARISC 15 /* HPPA */ -#define EM_VPP500 17 /* Fujitsu VPP500 */ -#define EM_SPARC32PLUS 18 /* Sun's "v8plus" */ -#define EM_960 19 /* Intel 80960 */ -#define EM_PPC 20 /* PowerPC */ -#define EM_PPC64 21 /* PowerPC 64-bit */ -#define EM_S390 22 /* IBM S390 */ - -#define EM_V800 36 /* NEC V800 series */ -#define EM_FR20 37 /* Fujitsu FR20 */ -#define EM_RH32 38 /* TRW RH-32 */ -#define EM_RCE 39 /* Motorola RCE */ -#define EM_ARM 40 /* ARM */ -#define EM_FAKE_ALPHA 41 /* Digital Alpha */ -#define EM_SH 42 /* Hitachi SH */ -#define EM_SPARCV9 43 /* SPARC v9 64-bit */ -#define EM_TRICORE 44 /* Siemens Tricore */ -#define EM_ARC 45 /* Argonaut RISC Core */ -#define EM_H8_300 46 /* Hitachi H8/300 */ -#define EM_H8_300H 47 /* Hitachi H8/300H */ -#define EM_H8S 48 /* Hitachi H8S */ -#define EM_H8_500 49 /* Hitachi H8/500 */ -#define EM_IA_64 50 /* Intel Merced */ -#define EM_MIPS_X 51 /* Stanford MIPS-X */ -#define EM_COLDFIRE 52 /* Motorola Coldfire */ -#define EM_68HC12 53 /* Motorola M68HC12 */ -#define EM_MMA 54 /* Fujitsu MMA Multimedia Accelerator*/ -#define EM_PCP 55 /* Siemens PCP */ -#define EM_NCPU 56 /* Sony nCPU embeeded RISC */ -#define EM_NDR1 57 /* Denso NDR1 microprocessor */ -#define EM_STARCORE 58 /* Motorola Start*Core processor */ -#define EM_ME16 59 /* Toyota ME16 processor */ -#define EM_ST100 60 /* STMicroelectronic ST100 processor */ -#define EM_TINYJ 61 /* Advanced Logic Corp. Tinyj emb.fam*/ -#define EM_X86_64 62 /* AMD x86-64 architecture */ -#define EM_PDSP 63 /* Sony DSP Processor */ - -#define EM_FX66 66 /* Siemens FX66 microcontroller */ -#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 mc */ -#define EM_ST7 68 /* STmicroelectronics ST7 8 bit mc */ -#define EM_68HC16 69 /* Motorola MC68HC16 microcontroller */ -#define EM_68HC11 70 /* Motorola MC68HC11 microcontroller */ -#define EM_68HC08 71 /* Motorola MC68HC08 microcontroller */ -#define EM_68HC05 72 /* Motorola MC68HC05 microcontroller */ -#define EM_SVX 73 /* Silicon Graphics SVx */ -#define EM_ST19 74 /* STMicroelectronics ST19 8 bit mc */ -#define EM_VAX 75 /* Digital VAX */ -#define EM_CRIS 76 /* Axis Communications 32-bit embedded processor */ -#define EM_JAVELIN 77 /* Infineon Technologies 32-bit embedded processor */ -#define EM_FIREPATH 78 /* Element 14 64-bit DSP Processor */ -#define EM_ZSP 79 /* LSI Logic 16-bit DSP Processor */ -#define EM_MMIX 80 /* Donald Knuth's educational 64-bit processor */ -#define EM_HUANY 81 /* Harvard University machine-independent object files */ -#define EM_PRISM 82 /* SiTera Prism */ -#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */ -#define EM_FR30 84 /* Fujitsu FR30 */ -#define EM_D10V 85 /* Mitsubishi D10V */ -#define EM_D30V 86 /* Mitsubishi D30V */ -#define EM_V850 87 /* NEC v850 */ -#define EM_M32R 88 /* Mitsubishi M32R */ -#define EM_MN10300 89 /* Matsushita MN10300 */ -#define EM_MN10200 90 /* Matsushita MN10200 */ -#define EM_PJ 91 /* picoJava */ -#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */ -#define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */ -#define EM_XTENSA 94 /* Tensilica Xtensa Architecture */ -#define EM_NUM 95 - -/* If it is necessary to assign new unofficial EM_* values, please - pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the - chances of collision with official or non-GNU unofficial values. */ - -#define EM_ALPHA 0x9026 - -/* Legal values for e_version (version). */ - -#define EV_NONE 0 /* Invalid ELF version */ -#define EV_CURRENT 1 /* Current version */ -#define EV_NUM 2 - -/* Section header. */ - -typedef struct -{ - Elf32_Word sh_name; /* Section name (string tbl index) */ - Elf32_Word sh_type; /* Section type */ - Elf32_Word sh_flags; /* Section flags */ - Elf32_Addr sh_addr; /* Section virtual addr at execution */ - Elf32_Off sh_offset; /* Section file offset */ - Elf32_Word sh_size; /* Section size in bytes */ - Elf32_Word sh_link; /* Link to another section */ - Elf32_Word sh_info; /* Additional section information */ - Elf32_Word sh_addralign; /* Section alignment */ - Elf32_Word sh_entsize; /* Entry size if section holds table */ -} Elf32_Shdr; - -typedef struct -{ - Elf64_Word sh_name; /* Section name (string tbl index) */ - Elf64_Word sh_type; /* Section type */ - Elf64_Xword sh_flags; /* Section flags */ - Elf64_Addr sh_addr; /* Section virtual addr at execution */ - Elf64_Off sh_offset; /* Section file offset */ - Elf64_Xword sh_size; /* Section size in bytes */ - Elf64_Word sh_link; /* Link to another section */ - Elf64_Word sh_info; /* Additional section information */ - Elf64_Xword sh_addralign; /* Section alignment */ - Elf64_Xword sh_entsize; /* Entry size if section holds table */ -} Elf64_Shdr; - -/* Special section indices. */ - -#define SHN_UNDEF 0 /* Undefined section */ -#define SHN_LORESERVE 0xff00 /* Start of reserved indices */ -#define SHN_LOPROC 0xff00 /* Start of processor-specific */ -#define SHN_HIPROC 0xff1f /* End of processor-specific */ -#define SHN_LOOS 0xff20 /* Start of OS-specific */ -#define SHN_HIOS 0xff3f /* End of OS-specific */ -#define SHN_ABS 0xfff1 /* Associated symbol is absolute */ -#define SHN_COMMON 0xfff2 /* Associated symbol is common */ -#define SHN_XINDEX 0xffff /* Index is in extra table. */ -#define SHN_HIRESERVE 0xffff /* End of reserved indices */ - -/* Legal values for sh_type (section type). */ - -#define SHT_NULL 0 /* Section header table entry unused */ -#define SHT_PROGBITS 1 /* Program data */ -#define SHT_SYMTAB 2 /* Symbol table */ -#define SHT_STRTAB 3 /* String table */ -#define SHT_RELA 4 /* Relocation entries with addends */ -#define SHT_HASH 5 /* Symbol hash table */ -#define SHT_DYNAMIC 6 /* Dynamic linking information */ -#define SHT_NOTE 7 /* Notes */ -#define SHT_NOBITS 8 /* Program space with no data (bss) */ -#define SHT_REL 9 /* Relocation entries, no addends */ -#define SHT_SHLIB 10 /* Reserved */ -#define SHT_DYNSYM 11 /* Dynamic linker symbol table */ -#define SHT_INIT_ARRAY 14 /* Array of constructors */ -#define SHT_FINI_ARRAY 15 /* Array of destructors */ -#define SHT_PREINIT_ARRAY 16 /* Array of pre-constructors */ -#define SHT_GROUP 17 /* Section group */ -#define SHT_SYMTAB_SHNDX 18 /* Extended section indeces */ -#define SHT_NUM 19 /* Number of defined types. */ -#define SHT_LOOS 0x60000000 /* Start OS-specific */ -#define SHT_GNU_LIBLIST 0x6ffffff7 /* Prelink library list */ -#define SHT_CHECKSUM 0x6ffffff8 /* Checksum for DSO content. */ -#define SHT_LOSUNW 0x6ffffffa /* Sun-specific low bound. */ -#define SHT_SUNW_move 0x6ffffffa -#define SHT_SUNW_COMDAT 0x6ffffffb -#define SHT_SUNW_syminfo 0x6ffffffc -#define SHT_GNU_verdef 0x6ffffffd /* Version definition section. */ -#define SHT_GNU_verneed 0x6ffffffe /* Version needs section. */ -#define SHT_GNU_versym 0x6fffffff /* Version symbol table. */ -#define SHT_HISUNW 0x6fffffff /* Sun-specific high bound. */ -#define SHT_HIOS 0x6fffffff /* End OS-specific type */ -#define SHT_LOPROC 0x70000000 /* Start of processor-specific */ -#define SHT_HIPROC 0x7fffffff /* End of processor-specific */ -#define SHT_LOUSER 0x80000000 /* Start of application-specific */ -#define SHT_HIUSER 0x8fffffff /* End of application-specific */ - -/* Legal values for sh_flags (section flags). */ - -#define SHF_WRITE (1 << 0) /* Writable */ -#define SHF_ALLOC (1 << 1) /* Occupies memory during execution */ -#define SHF_EXECINSTR (1 << 2) /* Executable */ -#define SHF_MERGE (1 << 4) /* Might be merged */ -#define SHF_STRINGS (1 << 5) /* Contains nul-terminated strings */ -#define SHF_INFO_LINK (1 << 6) /* `sh_info' contains SHT index */ -#define SHF_LINK_ORDER (1 << 7) /* Preserve order after combining */ -#define SHF_OS_NONCONFORMING (1 << 8) /* Non-standard OS specific handling - required */ -#define SHF_GROUP (1 << 9) /* Section is member of a group. */ -#define SHF_TLS (1 << 10) /* Section hold thread-local data. */ -#define SHF_MASKOS 0x0ff00000 /* OS-specific. */ -#define SHF_MASKPROC 0xf0000000 /* Processor-specific */ - -/* Section group handling. */ -#define GRP_COMDAT 0x1 /* Mark group as COMDAT. */ - -/* Symbol table entry. */ - -typedef struct -{ - Elf32_Word st_name; /* Symbol name (string tbl index) */ - Elf32_Addr st_value; /* Symbol value */ - Elf32_Word st_size; /* Symbol size */ - unsigned char st_info; /* Symbol type and binding */ - unsigned char st_other; /* Symbol visibility */ - Elf32_Section st_shndx; /* Section index */ -} Elf32_Sym; - -typedef struct -{ - Elf64_Word st_name; /* Symbol name (string tbl index) */ - unsigned char st_info; /* Symbol type and binding */ - unsigned char st_other; /* Symbol visibility */ - Elf64_Section st_shndx; /* Section index */ - Elf64_Addr st_value; /* Symbol value */ - Elf64_Xword st_size; /* Symbol size */ -} Elf64_Sym; - -/* The syminfo section if available contains additional information about - every dynamic symbol. */ - -typedef struct -{ - Elf32_Half si_boundto; /* Direct bindings, symbol bound to */ - Elf32_Half si_flags; /* Per symbol flags */ -} Elf32_Syminfo; - -typedef struct -{ - Elf64_Half si_boundto; /* Direct bindings, symbol bound to */ - Elf64_Half si_flags; /* Per symbol flags */ -} Elf64_Syminfo; - -/* Possible values for si_boundto. */ -#define SYMINFO_BT_SELF 0xffff /* Symbol bound to self */ -#define SYMINFO_BT_PARENT 0xfffe /* Symbol bound to parent */ -#define SYMINFO_BT_LOWRESERVE 0xff00 /* Beginning of reserved entries */ - -/* Possible bitmasks for si_flags. */ -#define SYMINFO_FLG_DIRECT 0x0001 /* Direct bound symbol */ -#define SYMINFO_FLG_PASSTHRU 0x0002 /* Pass-thru symbol for translator */ -#define SYMINFO_FLG_COPY 0x0004 /* Symbol is a copy-reloc */ -#define SYMINFO_FLG_LAZYLOAD 0x0008 /* Symbol bound to object to be lazy - loaded */ -/* Syminfo version values. */ -#define SYMINFO_NONE 0 -#define SYMINFO_CURRENT 1 -#define SYMINFO_NUM 2 - - -/* How to extract and insert information held in the st_info field. */ - -#define ELF32_ST_BIND(val) (((unsigned char) (val)) >> 4) -#define ELF32_ST_TYPE(val) ((val) & 0xf) -#define ELF32_ST_INFO(bind, type) (((bind) << 4) + ((type) & 0xf)) - -/* Both Elf32_Sym and Elf64_Sym use the same one-byte st_info field. */ -#define ELF64_ST_BIND(val) ELF32_ST_BIND (val) -#define ELF64_ST_TYPE(val) ELF32_ST_TYPE (val) -#define ELF64_ST_INFO(bind, type) ELF32_ST_INFO ((bind), (type)) - -/* Legal values for ST_BIND subfield of st_info (symbol binding). */ - -#define STB_LOCAL 0 /* Local symbol */ -#define STB_GLOBAL 1 /* Global symbol */ -#define STB_WEAK 2 /* Weak symbol */ -#define STB_NUM 3 /* Number of defined types. */ -#define STB_LOOS 10 /* Start of OS-specific */ -#define STB_HIOS 12 /* End of OS-specific */ -#define STB_LOPROC 13 /* Start of processor-specific */ -#define STB_HIPROC 15 /* End of processor-specific */ - -/* Legal values for ST_TYPE subfield of st_info (symbol type). */ - -#define STT_NOTYPE 0 /* Symbol type is unspecified */ -#define STT_OBJECT 1 /* Symbol is a data object */ -#define STT_FUNC 2 /* Symbol is a code object */ -#define STT_SECTION 3 /* Symbol associated with a section */ -#define STT_FILE 4 /* Symbol's name is file name */ -#define STT_COMMON 5 /* Symbol is a common data object */ -#define STT_TLS 6 /* Symbol is thread-local data object*/ -#define STT_NUM 7 /* Number of defined types. */ -#define STT_LOOS 10 /* Start of OS-specific */ -#define STT_HIOS 12 /* End of OS-specific */ -#define STT_LOPROC 13 /* Start of processor-specific */ -#define STT_HIPROC 15 /* End of processor-specific */ - - -/* Symbol table indices are found in the hash buckets and chain table - of a symbol hash table section. This special index value indicates - the end of a chain, meaning no further symbols are found in that bucket. */ - -#define STN_UNDEF 0 /* End of a chain. */ - - -/* How to extract and insert information held in the st_other field. */ - -#define ELF32_ST_VISIBILITY(o) ((o) & 0x03) - -/* For ELF64 the definitions are the same. */ -#define ELF64_ST_VISIBILITY(o) ELF32_ST_VISIBILITY (o) - -/* Symbol visibility specification encoded in the st_other field. */ -#define STV_DEFAULT 0 /* Default symbol visibility rules */ -#define STV_INTERNAL 1 /* Processor specific hidden class */ -#define STV_HIDDEN 2 /* Sym unavailable in other modules */ -#define STV_PROTECTED 3 /* Not preemptible, not exported */ - - -/* Relocation table entry without addend (in section of type SHT_REL). */ - -typedef struct -{ - Elf32_Addr r_offset; /* Address */ - Elf32_Word r_info; /* Relocation type and symbol index */ -} Elf32_Rel; - -/* I have seen two different definitions of the Elf64_Rel and - Elf64_Rela structures, so we'll leave them out until Novell (or - whoever) gets their act together. */ -/* The following, at least, is used on Sparc v9, MIPS, and Alpha. */ - -typedef struct -{ - Elf64_Addr r_offset; /* Address */ - Elf64_Xword r_info; /* Relocation type and symbol index */ -} Elf64_Rel; - -/* Relocation table entry with addend (in section of type SHT_RELA). */ - -typedef struct -{ - Elf32_Addr r_offset; /* Address */ - Elf32_Word r_info; /* Relocation type and symbol index */ - Elf32_Sword r_addend; /* Addend */ -} Elf32_Rela; - -typedef struct -{ - Elf64_Addr r_offset; /* Address */ - Elf64_Xword r_info; /* Relocation type and symbol index */ - Elf64_Sxword r_addend; /* Addend */ -} Elf64_Rela; - -/* How to extract and insert information held in the r_info field. */ - -#define ELF32_R_SYM(val) ((val) >> 8) -#define ELF32_R_TYPE(val) ((val) & 0xff) -#define ELF32_R_INFO(sym, type) (((sym) << 8) + ((type) & 0xff)) - -#define ELF64_R_SYM(i) ((i) >> 32) -#define ELF64_R_TYPE(i) ((i) & 0xffffffff) -#define ELF64_R_INFO(sym,type) ((((Elf64_Xword) (sym)) << 32) + (type)) - -/* Program segment header. */ - -typedef struct -{ - Elf32_Word p_type; /* Segment type */ - Elf32_Off p_offset; /* Segment file offset */ - Elf32_Addr p_vaddr; /* Segment virtual address */ - Elf32_Addr p_paddr; /* Segment physical address */ - Elf32_Word p_filesz; /* Segment size in file */ - Elf32_Word p_memsz; /* Segment size in memory */ - Elf32_Word p_flags; /* Segment flags */ - Elf32_Word p_align; /* Segment alignment */ -} Elf32_Phdr; - -typedef struct -{ - Elf64_Word p_type; /* Segment type */ - Elf64_Word p_flags; /* Segment flags */ - Elf64_Off p_offset; /* Segment file offset */ - Elf64_Addr p_vaddr; /* Segment virtual address */ - Elf64_Addr p_paddr; /* Segment physical address */ - Elf64_Xword p_filesz; /* Segment size in file */ - Elf64_Xword p_memsz; /* Segment size in memory */ - Elf64_Xword p_align; /* Segment alignment */ -} Elf64_Phdr; - -/* Legal values for p_type (segment type). */ - -#define PT_NULL 0 /* Program header table entry unused */ -#define PT_LOAD 1 /* Loadable program segment */ -#define PT_DYNAMIC 2 /* Dynamic linking information */ -#define PT_INTERP 3 /* Program interpreter */ -#define PT_NOTE 4 /* Auxiliary information */ -#define PT_SHLIB 5 /* Reserved */ -#define PT_PHDR 6 /* Entry for header table itself */ -#define PT_TLS 7 /* Thread-local storage segment */ -#define PT_NUM 8 /* Number of defined types */ -#define PT_LOOS 0x60000000 /* Start of OS-specific */ -#define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ -#define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ -#define PT_LOSUNW 0x6ffffffa -#define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ -#define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -#define PT_HISUNW 0x6fffffff -#define PT_HIOS 0x6fffffff /* End of OS-specific */ -#define PT_LOPROC 0x70000000 /* Start of processor-specific */ -#define PT_HIPROC 0x7fffffff /* End of processor-specific */ - -/* Legal values for p_flags (segment flags). */ - -#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_MASKOS 0x0ff00000 /* OS-specific */ -#define PF_MASKPROC 0xf0000000 /* Processor-specific */ - -/* Legal values for note segment descriptor types for core files. */ - -#define NT_PRSTATUS 1 /* Contains copy of prstatus struct */ -#define NT_FPREGSET 2 /* Contains copy of fpregset struct */ -#define NT_PRPSINFO 3 /* Contains copy of prpsinfo struct */ -#define NT_PRXREG 4 /* Contains copy of prxregset struct */ -#define NT_TASKSTRUCT 4 /* Contains copy of task structure */ -#define NT_PLATFORM 5 /* String from sysinfo(SI_PLATFORM) */ -#define NT_AUXV 6 /* Contains copy of auxv array */ -#define NT_GWINDOWS 7 /* Contains copy of gwindows struct */ -#define NT_ASRS 8 /* Contains copy of asrset struct */ -#define NT_PSTATUS 10 /* Contains copy of pstatus struct */ -#define NT_PSINFO 13 /* Contains copy of psinfo struct */ -#define NT_PRCRED 14 /* Contains copy of prcred struct */ -#define NT_UTSNAME 15 /* Contains copy of utsname struct */ -#define NT_LWPSTATUS 16 /* Contains copy of lwpstatus struct */ -#define NT_LWPSINFO 17 /* Contains copy of lwpinfo struct */ -#define NT_PRFPXREG 20 /* Contains copy of fprxregset struct*/ - -/* Legal values for the note segment descriptor types for object files. */ - -#define NT_VERSION 1 /* Contains a version string. */ - - -/* Dynamic section entry. */ - -typedef struct -{ - Elf32_Sword d_tag; /* Dynamic entry type */ - union - { - Elf32_Word d_val; /* Integer value */ - Elf32_Addr d_ptr; /* Address value */ - } d_un; -} Elf32_Dyn; - -typedef struct -{ - Elf64_Sxword d_tag; /* Dynamic entry type */ - union - { - Elf64_Xword d_val; /* Integer value */ - Elf64_Addr d_ptr; /* Address value */ - } d_un; -} Elf64_Dyn; - -/* Legal values for d_tag (dynamic entry type). */ - -#define DT_NULL 0 /* Marks end of dynamic section */ -#define DT_NEEDED 1 /* Name of needed library */ -#define DT_PLTRELSZ 2 /* Size in bytes of PLT relocs */ -#define DT_PLTGOT 3 /* Processor defined value */ -#define DT_HASH 4 /* Address of symbol hash table */ -#define DT_STRTAB 5 /* Address of string table */ -#define DT_SYMTAB 6 /* Address of symbol table */ -#define DT_RELA 7 /* Address of Rela relocs */ -#define DT_RELASZ 8 /* Total size of Rela relocs */ -#define DT_RELAENT 9 /* Size of one Rela reloc */ -#define DT_STRSZ 10 /* Size of string table */ -#define DT_SYMENT 11 /* Size of one symbol table entry */ -#define DT_INIT 12 /* Address of init function */ -#define DT_FINI 13 /* Address of termination function */ -#define DT_SONAME 14 /* Name of shared object */ -#define DT_RPATH 15 /* Library search path (deprecated) */ -#define DT_SYMBOLIC 16 /* Start symbol search here */ -#define DT_REL 17 /* Address of Rel relocs */ -#define DT_RELSZ 18 /* Total size of Rel relocs */ -#define DT_RELENT 19 /* Size of one Rel reloc */ -#define DT_PLTREL 20 /* Type of reloc in PLT */ -#define DT_DEBUG 21 /* For debugging; unspecified */ -#define DT_TEXTREL 22 /* Reloc might modify .text */ -#define DT_JMPREL 23 /* Address of PLT relocs */ -#define DT_BIND_NOW 24 /* Process relocations of object */ -#define DT_INIT_ARRAY 25 /* Array with addresses of init fct */ -#define DT_FINI_ARRAY 26 /* Array with addresses of fini fct */ -#define DT_INIT_ARRAYSZ 27 /* Size in bytes of DT_INIT_ARRAY */ -#define DT_FINI_ARRAYSZ 28 /* Size in bytes of DT_FINI_ARRAY */ -#define DT_RUNPATH 29 /* Library search path */ -#define DT_FLAGS 30 /* Flags for the object being loaded */ -#define DT_ENCODING 32 /* Start of encoded range */ -#define DT_PREINIT_ARRAY 32 /* Array with addresses of preinit fct*/ -#define DT_PREINIT_ARRAYSZ 33 /* size in bytes of DT_PREINIT_ARRAY */ -#define DT_NUM 34 /* Number used */ -#define DT_LOOS 0x6000000d /* Start of OS-specific */ -#define DT_HIOS 0x6ffff000 /* End of OS-specific */ -#define DT_LOPROC 0x70000000 /* Start of processor-specific */ -#define DT_HIPROC 0x7fffffff /* End of processor-specific */ -#define DT_PROCNUM DT_MIPS_NUM /* Most used by any processor */ - -/* DT_* entries which fall between DT_VALRNGHI & DT_VALRNGLO use the - Dyn.d_un.d_val field of the Elf*_Dyn structure. This follows Sun's - approach. */ -#define DT_VALRNGLO 0x6ffffd00 -#define DT_GNU_PRELINKED 0x6ffffdf5 /* Prelinking timestamp */ -#define DT_GNU_CONFLICTSZ 0x6ffffdf6 /* Size of conflict section */ -#define DT_GNU_LIBLISTSZ 0x6ffffdf7 /* Size of library list */ -#define DT_CHECKSUM 0x6ffffdf8 -#define DT_PLTPADSZ 0x6ffffdf9 -#define DT_MOVEENT 0x6ffffdfa -#define DT_MOVESZ 0x6ffffdfb -#define DT_FEATURE_1 0x6ffffdfc /* Feature selection (DTF_*). */ -#define DT_POSFLAG_1 0x6ffffdfd /* Flags for DT_* entries, effecting - the following DT_* entry. */ -#define DT_SYMINSZ 0x6ffffdfe /* Size of syminfo table (in bytes) */ -#define DT_SYMINENT 0x6ffffdff /* Entry size of syminfo */ -#define DT_VALRNGHI 0x6ffffdff -#define DT_VALTAGIDX(tag) (DT_VALRNGHI - (tag)) /* Reverse order! */ -#define DT_VALNUM 12 - -/* DT_* entries which fall between DT_ADDRRNGHI & DT_ADDRRNGLO use the - Dyn.d_un.d_ptr field of the Elf*_Dyn structure. - - If any adjustment is made to the ELF object after it has been - built these entries will need to be adjusted. */ -#define DT_ADDRRNGLO 0x6ffffe00 -#define DT_GNU_CONFLICT 0x6ffffef8 /* Start of conflict section */ -#define DT_GNU_LIBLIST 0x6ffffef9 /* Library list */ -#define DT_CONFIG 0x6ffffefa /* Configuration information. */ -#define DT_DEPAUDIT 0x6ffffefb /* Dependency auditing. */ -#define DT_AUDIT 0x6ffffefc /* Object auditing. */ -#define DT_PLTPAD 0x6ffffefd /* PLT padding. */ -#define DT_MOVETAB 0x6ffffefe /* Move table. */ -#define DT_SYMINFO 0x6ffffeff /* Syminfo table. */ -#define DT_ADDRRNGHI 0x6ffffeff -#define DT_ADDRTAGIDX(tag) (DT_ADDRRNGHI - (tag)) /* Reverse order! */ -#define DT_ADDRNUM 10 - -/* The versioning entry types. The next are defined as part of the - GNU extension. */ -#define DT_VERSYM 0x6ffffff0 - -#define DT_RELACOUNT 0x6ffffff9 -#define DT_RELCOUNT 0x6ffffffa - -/* These were chosen by Sun. */ -#define DT_FLAGS_1 0x6ffffffb /* State flags, see DF_1_* below. */ -#define DT_VERDEF 0x6ffffffc /* Address of version definition - table */ -#define DT_VERDEFNUM 0x6ffffffd /* Number of version definitions */ -#define DT_VERNEED 0x6ffffffe /* Address of table with needed - versions */ -#define DT_VERNEEDNUM 0x6fffffff /* Number of needed versions */ -#define DT_VERSIONTAGIDX(tag) (DT_VERNEEDNUM - (tag)) /* Reverse order! */ -#define DT_VERSIONTAGNUM 16 - -/* Sun added these machine-independent extensions in the "processor-specific" - range. Be compatible. */ -#define DT_AUXILIARY 0x7ffffffd /* Shared object to load before self */ -#define DT_FILTER 0x7fffffff /* Shared object to get values from */ -#define DT_EXTRATAGIDX(tag) ((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1) -#define DT_EXTRANUM 3 - -/* Values of `d_un.d_val' in the DT_FLAGS entry. */ -#define DF_ORIGIN 0x00000001 /* Object may use DF_ORIGIN */ -#define DF_SYMBOLIC 0x00000002 /* Symbol resolutions starts here */ -#define DF_TEXTREL 0x00000004 /* Object contains text relocations */ -#define DF_BIND_NOW 0x00000008 /* No lazy binding for this object */ -#define DF_STATIC_TLS 0x00000010 /* Module uses the static TLS model */ - -/* State flags selectable in the `d_un.d_val' element of the DT_FLAGS_1 - entry in the dynamic section. */ -#define DF_1_NOW 0x00000001 /* Set RTLD_NOW for this object. */ -#define DF_1_GLOBAL 0x00000002 /* Set RTLD_GLOBAL for this object. */ -#define DF_1_GROUP 0x00000004 /* Set RTLD_GROUP for this object. */ -#define DF_1_NODELETE 0x00000008 /* Set RTLD_NODELETE for this object.*/ -#define DF_1_LOADFLTR 0x00000010 /* Trigger filtee loading at runtime.*/ -#define DF_1_INITFIRST 0x00000020 /* Set RTLD_INITFIRST for this object*/ -#define DF_1_NOOPEN 0x00000040 /* Set RTLD_NOOPEN for this object. */ -#define DF_1_ORIGIN 0x00000080 /* $ORIGIN must be handled. */ -#define DF_1_DIRECT 0x00000100 /* Direct binding enabled. */ -#define DF_1_TRANS 0x00000200 -#define DF_1_INTERPOSE 0x00000400 /* Object is used to interpose. */ -#define DF_1_NODEFLIB 0x00000800 /* Ignore default lib search path. */ -#define DF_1_NODUMP 0x00001000 /* Object can't be dldump'ed. */ -#define DF_1_CONFALT 0x00002000 /* Configuration alternative created.*/ -#define DF_1_ENDFILTEE 0x00004000 /* Filtee terminates filters search. */ -#define DF_1_DISPRELDNE 0x00008000 /* Disp reloc applied at build time. */ -#define DF_1_DISPRELPND 0x00010000 /* Disp reloc applied at run-time. */ - -/* Flags for the feature selection in DT_FEATURE_1. */ -#define DTF_1_PARINIT 0x00000001 -#define DTF_1_CONFEXP 0x00000002 - -/* Flags in the DT_POSFLAG_1 entry effecting only the next DT_* entry. */ -#define DF_P1_LAZYLOAD 0x00000001 /* Lazyload following object. */ -#define DF_P1_GROUPPERM 0x00000002 /* Symbols from next object are not - generally available. */ - -/* Version definition sections. */ - -typedef struct -{ - Elf32_Half vd_version; /* Version revision */ - Elf32_Half vd_flags; /* Version information */ - Elf32_Half vd_ndx; /* Version Index */ - Elf32_Half vd_cnt; /* Number of associated aux entries */ - Elf32_Word vd_hash; /* Version name hash value */ - Elf32_Word vd_aux; /* Offset in bytes to verdaux array */ - Elf32_Word vd_next; /* Offset in bytes to next verdef - entry */ -} Elf32_Verdef; - -typedef struct -{ - Elf64_Half vd_version; /* Version revision */ - Elf64_Half vd_flags; /* Version information */ - Elf64_Half vd_ndx; /* Version Index */ - Elf64_Half vd_cnt; /* Number of associated aux entries */ - Elf64_Word vd_hash; /* Version name hash value */ - Elf64_Word vd_aux; /* Offset in bytes to verdaux array */ - Elf64_Word vd_next; /* Offset in bytes to next verdef - entry */ -} Elf64_Verdef; - - -/* Legal values for vd_version (version revision). */ -#define VER_DEF_NONE 0 /* No version */ -#define VER_DEF_CURRENT 1 /* Current version */ -#define VER_DEF_NUM 2 /* Given version number */ - -/* Legal values for vd_flags (version information flags). */ -#define VER_FLG_BASE 0x1 /* Version definition of file itself */ -#define VER_FLG_WEAK 0x2 /* Weak version identifier */ - -/* Versym symbol index values. */ -#define VER_NDX_LOCAL 0 /* Symbol is local. */ -#define VER_NDX_GLOBAL 1 /* Symbol is global. */ -#define VER_NDX_LORESERVE 0xff00 /* Beginning of reserved entries. */ -#define VER_NDX_ELIMINATE 0xff01 /* Symbol is to be eliminated. */ - -/* Auxialiary version information. */ - -typedef struct -{ - Elf32_Word vda_name; /* Version or dependency names */ - Elf32_Word vda_next; /* Offset in bytes to next verdaux - entry */ -} Elf32_Verdaux; - -typedef struct -{ - Elf64_Word vda_name; /* Version or dependency names */ - Elf64_Word vda_next; /* Offset in bytes to next verdaux - entry */ -} Elf64_Verdaux; - - -/* Version dependency section. */ - -typedef struct -{ - Elf32_Half vn_version; /* Version of structure */ - Elf32_Half vn_cnt; /* Number of associated aux entries */ - Elf32_Word vn_file; /* Offset of filename for this - dependency */ - Elf32_Word vn_aux; /* Offset in bytes to vernaux array */ - Elf32_Word vn_next; /* Offset in bytes to next verneed - entry */ -} Elf32_Verneed; - -typedef struct -{ - Elf64_Half vn_version; /* Version of structure */ - Elf64_Half vn_cnt; /* Number of associated aux entries */ - Elf64_Word vn_file; /* Offset of filename for this - dependency */ - Elf64_Word vn_aux; /* Offset in bytes to vernaux array */ - Elf64_Word vn_next; /* Offset in bytes to next verneed - entry */ -} Elf64_Verneed; - - -/* Legal values for vn_version (version revision). */ -#define VER_NEED_NONE 0 /* No version */ -#define VER_NEED_CURRENT 1 /* Current version */ -#define VER_NEED_NUM 2 /* Given version number */ - -/* Auxiliary needed version information. */ - -typedef struct -{ - Elf32_Word vna_hash; /* Hash value of dependency name */ - Elf32_Half vna_flags; /* Dependency specific information */ - Elf32_Half vna_other; /* Unused */ - Elf32_Word vna_name; /* Dependency name string offset */ - Elf32_Word vna_next; /* Offset in bytes to next vernaux - entry */ -} Elf32_Vernaux; - -typedef struct -{ - Elf64_Word vna_hash; /* Hash value of dependency name */ - Elf64_Half vna_flags; /* Dependency specific information */ - Elf64_Half vna_other; /* Unused */ - Elf64_Word vna_name; /* Dependency name string offset */ - Elf64_Word vna_next; /* Offset in bytes to next vernaux - entry */ -} Elf64_Vernaux; - - -/* Legal values for vna_flags. */ -#define VER_FLG_WEAK 0x2 /* Weak version identifier */ - - -/* Auxiliary vector. */ - -/* This vector is normally only used by the program interpreter. The - usual definition in an ABI supplement uses the name auxv_t. The - vector is not usually defined in a standard <elf.h> file, but it - can't hurt. We rename it to avoid conflicts. The sizes of these - types are an arrangement between the exec server and the program - interpreter, so we don't fully specify them here. */ - -typedef struct -{ - int a_type; /* Entry type */ - union - { - long int a_val; /* Integer value */ - void *a_ptr; /* Pointer value */ - void (*a_fcn) (void); /* Function pointer value */ - } a_un; -} Elf32_auxv_t; - -typedef struct -{ - long int a_type; /* Entry type */ - union - { - long int a_val; /* Integer value */ - void *a_ptr; /* Pointer value */ - void (*a_fcn) (void); /* Function pointer value */ - } a_un; -} Elf64_auxv_t; - -/* Legal values for a_type (entry type). */ - -#define AT_NULL 0 /* End of vector */ -#define AT_IGNORE 1 /* Entry should be ignored */ -#define AT_EXECFD 2 /* File descriptor of program */ -#define AT_PHDR 3 /* Program headers for program */ -#define AT_PHENT 4 /* Size of program header entry */ -#define AT_PHNUM 5 /* Number of program headers */ -#define AT_PAGESZ 6 /* System page size */ -#define AT_BASE 7 /* Base address of interpreter */ -#define AT_FLAGS 8 /* Flags */ -#define AT_ENTRY 9 /* Entry point of program */ -#define AT_NOTELF 10 /* Program is not ELF */ -#define AT_UID 11 /* Real uid */ -#define AT_EUID 12 /* Effective uid */ -#define AT_GID 13 /* Real gid */ -#define AT_EGID 14 /* Effective gid */ -#define AT_CLKTCK 17 /* Frequency of times() */ - -/* Some more special a_type values describing the hardware. */ -#define AT_PLATFORM 15 /* String identifying platform. */ -#define AT_HWCAP 16 /* Machine dependent hints about - processor capabilities. */ - -/* This entry gives some information about the FPU initialization - performed by the kernel. */ -#define AT_FPUCW 18 /* Used FPU control word. */ - -/* Cache block sizes. */ -#define AT_DCACHEBSIZE 19 /* Data cache block size. */ -#define AT_ICACHEBSIZE 20 /* Instruction cache block size. */ -#define AT_UCACHEBSIZE 21 /* Unified cache block size. */ - -/* A special ignored value for PPC, used by the kernel to control the - interpretation of the AUXV. Must be > 16. */ -#define AT_IGNOREPPC 22 /* Entry should be ignored. */ - -#define AT_SECURE 23 /* Boolean, was exec setuid-like? */ - -/* Pointer to the global system page used for system calls and other - nice things. */ -#define AT_SYSINFO 32 -#define AT_SYSINFO_EHDR 33 - - -/* Note section contents. Each entry in the note section begins with - a header of a fixed form. */ - -typedef struct -{ - Elf32_Word n_namesz; /* Length of the note's name. */ - Elf32_Word n_descsz; /* Length of the note's descriptor. */ - Elf32_Word n_type; /* Type of the note. */ -} Elf32_Nhdr; - -typedef struct -{ - Elf64_Word n_namesz; /* Length of the note's name. */ - Elf64_Word n_descsz; /* Length of the note's descriptor. */ - Elf64_Word n_type; /* Type of the note. */ -} Elf64_Nhdr; - -/* Known names of notes. */ - -/* Solaris entries in the note section have this name. */ -#define ELF_NOTE_SOLARIS "SUNW Solaris" - -/* Note entries for GNU systems have this name. */ -#define ELF_NOTE_GNU "GNU" - - -/* Defined types of notes for Solaris. */ - -/* Value of descriptor (one word) is desired pagesize for the binary. */ -#define ELF_NOTE_PAGESIZE_HINT 1 - - -/* Defined note types for GNU systems. */ - -/* ABI information. The descriptor consists of words: - word 0: OS descriptor - word 1: major version of the ABI - word 2: minor version of the ABI - word 3: subminor version of the ABI -*/ -#define ELF_NOTE_ABI 1 - -/* Known OSes. These value can appear in word 0 of an ELF_NOTE_ABI - note section entry. */ -#define ELF_NOTE_OS_LINUX 0 -#define ELF_NOTE_OS_GNU 1 -#define ELF_NOTE_OS_SOLARIS2 2 -#define ELF_NOTE_OS_FREEBSD 3 - - -/* Move records. */ -typedef struct -{ - Elf32_Xword m_value; /* Symbol value. */ - Elf32_Word m_info; /* Size and index. */ - Elf32_Word m_poffset; /* Symbol offset. */ - Elf32_Half m_repeat; /* Repeat count. */ - Elf32_Half m_stride; /* Stride info. */ -} Elf32_Move; - -typedef struct -{ - Elf64_Xword m_value; /* Symbol value. */ - Elf64_Xword m_info; /* Size and index. */ - Elf64_Xword m_poffset; /* Symbol offset. */ - Elf64_Half m_repeat; /* Repeat count. */ - Elf64_Half m_stride; /* Stride info. */ -} Elf64_Move; - -/* Macro to construct move records. */ -#define ELF32_M_SYM(info) ((info) >> 8) -#define ELF32_M_SIZE(info) ((unsigned char) (info)) -#define ELF32_M_INFO(sym, size) (((sym) << 8) + (unsigned char) (size)) - -#define ELF64_M_SYM(info) ELF32_M_SYM (info) -#define ELF64_M_SIZE(info) ELF32_M_SIZE (info) -#define ELF64_M_INFO(sym, size) ELF32_M_INFO (sym, size) - - -/* Motorola 68k specific definitions. */ - -/* Values for Elf32_Ehdr.e_flags. */ -#define EF_CPU32 0x00810000 - -/* m68k relocs. */ - -#define R_68K_NONE 0 /* No reloc */ -#define R_68K_32 1 /* Direct 32 bit */ -#define R_68K_16 2 /* Direct 16 bit */ -#define R_68K_8 3 /* Direct 8 bit */ -#define R_68K_PC32 4 /* PC relative 32 bit */ -#define R_68K_PC16 5 /* PC relative 16 bit */ -#define R_68K_PC8 6 /* PC relative 8 bit */ -#define R_68K_GOT32 7 /* 32 bit PC relative GOT entry */ -#define R_68K_GOT16 8 /* 16 bit PC relative GOT entry */ -#define R_68K_GOT8 9 /* 8 bit PC relative GOT entry */ -#define R_68K_GOT32O 10 /* 32 bit GOT offset */ -#define R_68K_GOT16O 11 /* 16 bit GOT offset */ -#define R_68K_GOT8O 12 /* 8 bit GOT offset */ -#define R_68K_PLT32 13 /* 32 bit PC relative PLT address */ -#define R_68K_PLT16 14 /* 16 bit PC relative PLT address */ -#define R_68K_PLT8 15 /* 8 bit PC relative PLT address */ -#define R_68K_PLT32O 16 /* 32 bit PLT offset */ -#define R_68K_PLT16O 17 /* 16 bit PLT offset */ -#define R_68K_PLT8O 18 /* 8 bit PLT offset */ -#define R_68K_COPY 19 /* Copy symbol at runtime */ -#define R_68K_GLOB_DAT 20 /* Create GOT entry */ -#define R_68K_JMP_SLOT 21 /* Create PLT entry */ -#define R_68K_RELATIVE 22 /* Adjust by program base */ -/* Keep this the last entry. */ -#define R_68K_NUM 23 - -/* Intel 80386 specific definitions. */ - -/* i386 relocs. */ - -#define R_386_NONE 0 /* No reloc */ -#define R_386_32 1 /* Direct 32 bit */ -#define R_386_PC32 2 /* PC relative 32 bit */ -#define R_386_GOT32 3 /* 32 bit GOT entry */ -#define R_386_PLT32 4 /* 32 bit PLT address */ -#define R_386_COPY 5 /* Copy symbol at runtime */ -#define R_386_GLOB_DAT 6 /* Create GOT entry */ -#define R_386_JMP_SLOT 7 /* Create PLT entry */ -#define R_386_RELATIVE 8 /* Adjust by program base */ -#define R_386_GOTOFF 9 /* 32 bit offset to GOT */ -#define R_386_GOTPC 10 /* 32 bit PC relative offset to GOT */ -#define R_386_32PLT 11 -#define R_386_TLS_TPOFF 14 /* Offset in static TLS block */ -#define R_386_TLS_IE 15 /* Address of GOT entry for static TLS - block offset */ -#define R_386_TLS_GOTIE 16 /* GOT entry for static TLS block - offset */ -#define R_386_TLS_LE 17 /* Offset relative to static TLS - block */ -#define R_386_TLS_GD 18 /* Direct 32 bit for GNU version of - general dynamic thread local data */ -#define R_386_TLS_LDM 19 /* Direct 32 bit for GNU version of - local dynamic thread local data - in LE code */ -#define R_386_16 20 -#define R_386_PC16 21 -#define R_386_8 22 -#define R_386_PC8 23 -#define R_386_TLS_GD_32 24 /* Direct 32 bit for general dynamic - thread local data */ -#define R_386_TLS_GD_PUSH 25 /* Tag for pushl in GD TLS code */ -#define R_386_TLS_GD_CALL 26 /* Relocation for call to - __tls_get_addr() */ -#define R_386_TLS_GD_POP 27 /* Tag for popl in GD TLS code */ -#define R_386_TLS_LDM_32 28 /* Direct 32 bit for local dynamic - thread local data in LE code */ -#define R_386_TLS_LDM_PUSH 29 /* Tag for pushl in LDM TLS code */ -#define R_386_TLS_LDM_CALL 30 /* Relocation for call to - __tls_get_addr() in LDM code */ -#define R_386_TLS_LDM_POP 31 /* Tag for popl in LDM TLS code */ -#define R_386_TLS_LDO_32 32 /* Offset relative to TLS block */ -#define R_386_TLS_IE_32 33 /* GOT entry for negated static TLS - block offset */ -#define R_386_TLS_LE_32 34 /* Negated offset relative to static - TLS block */ -#define R_386_TLS_DTPMOD32 35 /* ID of module containing symbol */ -#define R_386_TLS_DTPOFF32 36 /* Offset in TLS block */ -#define R_386_TLS_TPOFF32 37 /* Negated offset in static TLS block */ -/* Keep this the last entry. */ -#define R_386_NUM 38 - -/* SUN SPARC specific definitions. */ - -/* Legal values for ST_TYPE subfield of st_info (symbol type). */ - -#define STT_REGISTER 13 /* Global register reserved to app. */ - -/* Values for Elf64_Ehdr.e_flags. */ - -#define EF_SPARCV9_MM 3 -#define EF_SPARCV9_TSO 0 -#define EF_SPARCV9_PSO 1 -#define EF_SPARCV9_RMO 2 -#define EF_SPARC_LEDATA 0x800000 /* little endian data */ -#define EF_SPARC_EXT_MASK 0xFFFF00 -#define EF_SPARC_32PLUS 0x000100 /* generic V8+ features */ -#define EF_SPARC_SUN_US1 0x000200 /* Sun UltraSPARC1 extensions */ -#define EF_SPARC_HAL_R1 0x000400 /* HAL R1 extensions */ -#define EF_SPARC_SUN_US3 0x000800 /* Sun UltraSPARCIII extensions */ - -/* SPARC relocs. */ - -#define R_SPARC_NONE 0 /* No reloc */ -#define R_SPARC_8 1 /* Direct 8 bit */ -#define R_SPARC_16 2 /* Direct 16 bit */ -#define R_SPARC_32 3 /* Direct 32 bit */ -#define R_SPARC_DISP8 4 /* PC relative 8 bit */ -#define R_SPARC_DISP16 5 /* PC relative 16 bit */ -#define R_SPARC_DISP32 6 /* PC relative 32 bit */ -#define R_SPARC_WDISP30 7 /* PC relative 30 bit shifted */ -#define R_SPARC_WDISP22 8 /* PC relative 22 bit shifted */ -#define R_SPARC_HI22 9 /* High 22 bit */ -#define R_SPARC_22 10 /* Direct 22 bit */ -#define R_SPARC_13 11 /* Direct 13 bit */ -#define R_SPARC_LO10 12 /* Truncated 10 bit */ -#define R_SPARC_GOT10 13 /* Truncated 10 bit GOT entry */ -#define R_SPARC_GOT13 14 /* 13 bit GOT entry */ -#define R_SPARC_GOT22 15 /* 22 bit GOT entry shifted */ -#define R_SPARC_PC10 16 /* PC relative 10 bit truncated */ -#define R_SPARC_PC22 17 /* PC relative 22 bit shifted */ -#define R_SPARC_WPLT30 18 /* 30 bit PC relative PLT address */ -#define R_SPARC_COPY 19 /* Copy symbol at runtime */ -#define R_SPARC_GLOB_DAT 20 /* Create GOT entry */ -#define R_SPARC_JMP_SLOT 21 /* Create PLT entry */ -#define R_SPARC_RELATIVE 22 /* Adjust by program base */ -#define R_SPARC_UA32 23 /* Direct 32 bit unaligned */ - -/* Additional Sparc64 relocs. */ - -#define R_SPARC_PLT32 24 /* Direct 32 bit ref to PLT entry */ -#define R_SPARC_HIPLT22 25 /* High 22 bit PLT entry */ -#define R_SPARC_LOPLT10 26 /* Truncated 10 bit PLT entry */ -#define R_SPARC_PCPLT32 27 /* PC rel 32 bit ref to PLT entry */ -#define R_SPARC_PCPLT22 28 /* PC rel high 22 bit PLT entry */ -#define R_SPARC_PCPLT10 29 /* PC rel trunc 10 bit PLT entry */ -#define R_SPARC_10 30 /* Direct 10 bit */ -#define R_SPARC_11 31 /* Direct 11 bit */ -#define R_SPARC_64 32 /* Direct 64 bit */ -#define R_SPARC_OLO10 33 /* 10bit with secondary 13bit addend */ -#define R_SPARC_HH22 34 /* Top 22 bits of direct 64 bit */ -#define R_SPARC_HM10 35 /* High middle 10 bits of ... */ -#define R_SPARC_LM22 36 /* Low middle 22 bits of ... */ -#define R_SPARC_PC_HH22 37 /* Top 22 bits of pc rel 64 bit */ -#define R_SPARC_PC_HM10 38 /* High middle 10 bit of ... */ -#define R_SPARC_PC_LM22 39 /* Low miggle 22 bits of ... */ -#define R_SPARC_WDISP16 40 /* PC relative 16 bit shifted */ -#define R_SPARC_WDISP19 41 /* PC relative 19 bit shifted */ -#define R_SPARC_7 43 /* Direct 7 bit */ -#define R_SPARC_5 44 /* Direct 5 bit */ -#define R_SPARC_6 45 /* Direct 6 bit */ -#define R_SPARC_DISP64 46 /* PC relative 64 bit */ -#define R_SPARC_PLT64 47 /* Direct 64 bit ref to PLT entry */ -#define R_SPARC_HIX22 48 /* High 22 bit complemented */ -#define R_SPARC_LOX10 49 /* Truncated 11 bit complemented */ -#define R_SPARC_H44 50 /* Direct high 12 of 44 bit */ -#define R_SPARC_M44 51 /* Direct mid 22 of 44 bit */ -#define R_SPARC_L44 52 /* Direct low 10 of 44 bit */ -#define R_SPARC_REGISTER 53 /* Global register usage */ -#define R_SPARC_UA64 54 /* Direct 64 bit unaligned */ -#define R_SPARC_UA16 55 /* Direct 16 bit unaligned */ -#define R_SPARC_TLS_GD_HI22 56 -#define R_SPARC_TLS_GD_LO10 57 -#define R_SPARC_TLS_GD_ADD 58 -#define R_SPARC_TLS_GD_CALL 59 -#define R_SPARC_TLS_LDM_HI22 60 -#define R_SPARC_TLS_LDM_LO10 61 -#define R_SPARC_TLS_LDM_ADD 62 -#define R_SPARC_TLS_LDM_CALL 63 -#define R_SPARC_TLS_LDO_HIX22 64 -#define R_SPARC_TLS_LDO_LOX10 65 -#define R_SPARC_TLS_LDO_ADD 66 -#define R_SPARC_TLS_IE_HI22 67 -#define R_SPARC_TLS_IE_LO10 68 -#define R_SPARC_TLS_IE_LD 69 -#define R_SPARC_TLS_IE_LDX 70 -#define R_SPARC_TLS_IE_ADD 71 -#define R_SPARC_TLS_LE_HIX22 72 -#define R_SPARC_TLS_LE_LOX10 73 -#define R_SPARC_TLS_DTPMOD32 74 -#define R_SPARC_TLS_DTPMOD64 75 -#define R_SPARC_TLS_DTPOFF32 76 -#define R_SPARC_TLS_DTPOFF64 77 -#define R_SPARC_TLS_TPOFF32 78 -#define R_SPARC_TLS_TPOFF64 79 -/* Keep this the last entry. */ -#define R_SPARC_NUM 80 - -/* For Sparc64, legal values for d_tag of Elf64_Dyn. */ - -#define DT_SPARC_REGISTER 0x70000001 -#define DT_SPARC_NUM 2 - -/* Bits present in AT_HWCAP, primarily for Sparc32. */ - -#define HWCAP_SPARC_FLUSH 1 /* The cpu supports flush insn. */ -#define HWCAP_SPARC_STBAR 2 -#define HWCAP_SPARC_SWAP 4 -#define HWCAP_SPARC_MULDIV 8 -#define HWCAP_SPARC_V9 16 /* The cpu is v9, so v8plus is ok. */ -#define HWCAP_SPARC_ULTRA3 32 - -/* MIPS R3000 specific definitions. */ - -/* Legal values for e_flags field of Elf32_Ehdr. */ - -#define EF_MIPS_NOREORDER 1 /* A .noreorder directive was used */ -#define EF_MIPS_PIC 2 /* Contains PIC code */ -#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence */ -#define EF_MIPS_XGOT 8 -#define EF_MIPS_64BIT_WHIRL 16 -#define EF_MIPS_ABI2 32 -#define EF_MIPS_ABI_ON32 64 -#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level */ - -/* Legal values for MIPS architecture level. */ - -#define EF_MIPS_ARCH_1 0x00000000 /* -mips1 code. */ -#define EF_MIPS_ARCH_2 0x10000000 /* -mips2 code. */ -#define EF_MIPS_ARCH_3 0x20000000 /* -mips3 code. */ -#define EF_MIPS_ARCH_4 0x30000000 /* -mips4 code. */ -#define EF_MIPS_ARCH_5 0x40000000 /* -mips5 code. */ -#define EF_MIPS_ARCH_32 0x60000000 /* MIPS32 code. */ -#define EF_MIPS_ARCH_64 0x70000000 /* MIPS64 code. */ - -/* The following are non-official names and should not be used. */ - -#define E_MIPS_ARCH_1 0x00000000 /* -mips1 code. */ -#define E_MIPS_ARCH_2 0x10000000 /* -mips2 code. */ -#define E_MIPS_ARCH_3 0x20000000 /* -mips3 code. */ -#define E_MIPS_ARCH_4 0x30000000 /* -mips4 code. */ -#define E_MIPS_ARCH_5 0x40000000 /* -mips5 code. */ -#define E_MIPS_ARCH_32 0x60000000 /* MIPS32 code. */ -#define E_MIPS_ARCH_64 0x70000000 /* MIPS64 code. */ - -/* Special section indices. */ - -#define SHN_MIPS_ACOMMON 0xff00 /* Allocated common symbols */ -#define SHN_MIPS_TEXT 0xff01 /* Allocated test symbols. */ -#define SHN_MIPS_DATA 0xff02 /* Allocated data symbols. */ -#define SHN_MIPS_SCOMMON 0xff03 /* Small common symbols */ -#define SHN_MIPS_SUNDEFINED 0xff04 /* Small undefined symbols */ - -/* Legal values for sh_type field of Elf32_Shdr. */ - -#define SHT_MIPS_LIBLIST 0x70000000 /* Shared objects used in link */ -#define SHT_MIPS_MSYM 0x70000001 -#define SHT_MIPS_CONFLICT 0x70000002 /* Conflicting symbols */ -#define SHT_MIPS_GPTAB 0x70000003 /* Global data area sizes */ -#define SHT_MIPS_UCODE 0x70000004 /* Reserved for SGI/MIPS compilers */ -#define SHT_MIPS_DEBUG 0x70000005 /* MIPS ECOFF debugging information*/ -#define SHT_MIPS_REGINFO 0x70000006 /* Register usage information */ -#define SHT_MIPS_PACKAGE 0x70000007 -#define SHT_MIPS_PACKSYM 0x70000008 -#define SHT_MIPS_RELD 0x70000009 -#define SHT_MIPS_IFACE 0x7000000b -#define SHT_MIPS_CONTENT 0x7000000c -#define SHT_MIPS_OPTIONS 0x7000000d /* Miscellaneous options. */ -#define SHT_MIPS_SHDR 0x70000010 -#define SHT_MIPS_FDESC 0x70000011 -#define SHT_MIPS_EXTSYM 0x70000012 -#define SHT_MIPS_DENSE 0x70000013 -#define SHT_MIPS_PDESC 0x70000014 -#define SHT_MIPS_LOCSYM 0x70000015 -#define SHT_MIPS_AUXSYM 0x70000016 -#define SHT_MIPS_OPTSYM 0x70000017 -#define SHT_MIPS_LOCSTR 0x70000018 -#define SHT_MIPS_LINE 0x70000019 -#define SHT_MIPS_RFDESC 0x7000001a -#define SHT_MIPS_DELTASYM 0x7000001b -#define SHT_MIPS_DELTAINST 0x7000001c -#define SHT_MIPS_DELTACLASS 0x7000001d -#define SHT_MIPS_DWARF 0x7000001e /* DWARF debugging information. */ -#define SHT_MIPS_DELTADECL 0x7000001f -#define SHT_MIPS_SYMBOL_LIB 0x70000020 -#define SHT_MIPS_EVENTS 0x70000021 /* Event section. */ -#define SHT_MIPS_TRANSLATE 0x70000022 -#define SHT_MIPS_PIXIE 0x70000023 -#define SHT_MIPS_XLATE 0x70000024 -#define SHT_MIPS_XLATE_DEBUG 0x70000025 -#define SHT_MIPS_WHIRL 0x70000026 -#define SHT_MIPS_EH_REGION 0x70000027 -#define SHT_MIPS_XLATE_OLD 0x70000028 -#define SHT_MIPS_PDR_EXCEPTION 0x70000029 - -/* Legal values for sh_flags field of Elf32_Shdr. */ - -#define SHF_MIPS_GPREL 0x10000000 /* Must be part of global data area */ -#define SHF_MIPS_MERGE 0x20000000 -#define SHF_MIPS_ADDR 0x40000000 -#define SHF_MIPS_STRINGS 0x80000000 -#define SHF_MIPS_NOSTRIP 0x08000000 -#define SHF_MIPS_LOCAL 0x04000000 -#define SHF_MIPS_NAMES 0x02000000 -#define SHF_MIPS_NODUPE 0x01000000 - - -/* Symbol tables. */ - -/* MIPS specific values for `st_other'. */ -#define STO_MIPS_DEFAULT 0x0 -#define STO_MIPS_INTERNAL 0x1 -#define STO_MIPS_HIDDEN 0x2 -#define STO_MIPS_PROTECTED 0x3 -#define STO_MIPS_SC_ALIGN_UNUSED 0xff - -/* MIPS specific values for `st_info'. */ -#define STB_MIPS_SPLIT_COMMON 13 - -/* Entries found in sections of type SHT_MIPS_GPTAB. */ - -typedef union -{ - struct - { - Elf32_Word gt_current_g_value; /* -G value used for compilation */ - Elf32_Word gt_unused; /* Not used */ - } gt_header; /* First entry in section */ - struct - { - Elf32_Word gt_g_value; /* If this value were used for -G */ - Elf32_Word gt_bytes; /* This many bytes would be used */ - } gt_entry; /* Subsequent entries in section */ -} Elf32_gptab; - -/* Entry found in sections of type SHT_MIPS_REGINFO. */ - -typedef struct -{ - Elf32_Word ri_gprmask; /* General registers used */ - Elf32_Word ri_cprmask[4]; /* Coprocessor registers used */ - Elf32_Sword ri_gp_value; /* $gp register value */ -} Elf32_RegInfo; - -/* Entries found in sections of type SHT_MIPS_OPTIONS. */ - -typedef struct -{ - unsigned char kind; /* Determines interpretation of the - variable part of descriptor. */ - unsigned char size; /* Size of descriptor, including header. */ - Elf32_Section section; /* Section header index of section affected, - 0 for global options. */ - Elf32_Word info; /* Kind-specific information. */ -} Elf_Options; - -/* Values for `kind' field in Elf_Options. */ - -#define ODK_NULL 0 /* Undefined. */ -#define ODK_REGINFO 1 /* Register usage information. */ -#define ODK_EXCEPTIONS 2 /* Exception processing options. */ -#define ODK_PAD 3 /* Section padding options. */ -#define ODK_HWPATCH 4 /* Hardware workarounds performed */ -#define ODK_FILL 5 /* record the fill value used by the linker. */ -#define ODK_TAGS 6 /* reserve space for desktop tools to write. */ -#define ODK_HWAND 7 /* HW workarounds. 'AND' bits when merging. */ -#define ODK_HWOR 8 /* HW workarounds. 'OR' bits when merging. */ - -/* Values for `info' in Elf_Options for ODK_EXCEPTIONS entries. */ - -#define OEX_FPU_MIN 0x1f /* FPE's which MUST be enabled. */ -#define OEX_FPU_MAX 0x1f00 /* FPE's which MAY be enabled. */ -#define OEX_PAGE0 0x10000 /* page zero must be mapped. */ -#define OEX_SMM 0x20000 /* Force sequential memory mode? */ -#define OEX_FPDBUG 0x40000 /* Force floating point debug mode? */ -#define OEX_PRECISEFP OEX_FPDBUG -#define OEX_DISMISS 0x80000 /* Dismiss invalid address faults? */ - -#define OEX_FPU_INVAL 0x10 -#define OEX_FPU_DIV0 0x08 -#define OEX_FPU_OFLO 0x04 -#define OEX_FPU_UFLO 0x02 -#define OEX_FPU_INEX 0x01 - -/* Masks for `info' in Elf_Options for an ODK_HWPATCH entry. */ - -#define OHW_R4KEOP 0x1 /* R4000 end-of-page patch. */ -#define OHW_R8KPFETCH 0x2 /* may need R8000 prefetch patch. */ -#define OHW_R5KEOP 0x4 /* R5000 end-of-page patch. */ -#define OHW_R5KCVTL 0x8 /* R5000 cvt.[ds].l bug. clean=1. */ - -#define OPAD_PREFIX 0x1 -#define OPAD_POSTFIX 0x2 -#define OPAD_SYMBOL 0x4 - -/* Entry found in `.options' section. */ - -typedef struct -{ - Elf32_Word hwp_flags1; /* Extra flags. */ - Elf32_Word hwp_flags2; /* Extra flags. */ -} Elf_Options_Hw; - -/* Masks for `info' in ElfOptions for ODK_HWAND and ODK_HWOR entries. */ - -#define OHWA0_R4KEOP_CHECKED 0x00000001 -#define OHWA1_R4KEOP_CLEAN 0x00000002 - -/* MIPS relocs. */ - -#define R_MIPS_NONE 0 /* No reloc */ -#define R_MIPS_16 1 /* Direct 16 bit */ -#define R_MIPS_32 2 /* Direct 32 bit */ -#define R_MIPS_REL32 3 /* PC relative 32 bit */ -#define R_MIPS_26 4 /* Direct 26 bit shifted */ -#define R_MIPS_HI16 5 /* High 16 bit */ -#define R_MIPS_LO16 6 /* Low 16 bit */ -#define R_MIPS_GPREL16 7 /* GP relative 16 bit */ -#define R_MIPS_LITERAL 8 /* 16 bit literal entry */ -#define R_MIPS_GOT16 9 /* 16 bit GOT entry */ -#define R_MIPS_PC16 10 /* PC relative 16 bit */ -#define R_MIPS_CALL16 11 /* 16 bit GOT entry for function */ -#define R_MIPS_GPREL32 12 /* GP relative 32 bit */ - -#define R_MIPS_SHIFT5 16 -#define R_MIPS_SHIFT6 17 -#define R_MIPS_64 18 -#define R_MIPS_GOT_DISP 19 -#define R_MIPS_GOT_PAGE 20 -#define R_MIPS_GOT_OFST 21 -#define R_MIPS_GOT_HI16 22 -#define R_MIPS_GOT_LO16 23 -#define R_MIPS_SUB 24 -#define R_MIPS_INSERT_A 25 -#define R_MIPS_INSERT_B 26 -#define R_MIPS_DELETE 27 -#define R_MIPS_HIGHER 28 -#define R_MIPS_HIGHEST 29 -#define R_MIPS_CALL_HI16 30 -#define R_MIPS_CALL_LO16 31 -#define R_MIPS_SCN_DISP 32 -#define R_MIPS_REL16 33 -#define R_MIPS_ADD_IMMEDIATE 34 -#define R_MIPS_PJUMP 35 -#define R_MIPS_RELGOT 36 -#define R_MIPS_JALR 37 -/* Keep this the last entry. */ -#define R_MIPS_NUM 38 - -/* Legal values for p_type field of Elf32_Phdr. */ - -#define PT_MIPS_REGINFO 0x70000000 /* Register usage information */ -#define PT_MIPS_RTPROC 0x70000001 /* Runtime procedure table. */ -#define PT_MIPS_OPTIONS 0x70000002 - -/* Special program header types. */ - -#define PF_MIPS_LOCAL 0x10000000 - -/* Legal values for d_tag field of Elf32_Dyn. */ - -#define DT_MIPS_RLD_VERSION 0x70000001 /* Runtime linker interface version */ -#define DT_MIPS_TIME_STAMP 0x70000002 /* Timestamp */ -#define DT_MIPS_ICHECKSUM 0x70000003 /* Checksum */ -#define DT_MIPS_IVERSION 0x70000004 /* Version string (string tbl index) */ -#define DT_MIPS_FLAGS 0x70000005 /* Flags */ -#define DT_MIPS_BASE_ADDRESS 0x70000006 /* Base address */ -#define DT_MIPS_MSYM 0x70000007 -#define DT_MIPS_CONFLICT 0x70000008 /* Address of CONFLICT section */ -#define DT_MIPS_LIBLIST 0x70000009 /* Address of LIBLIST section */ -#define DT_MIPS_LOCAL_GOTNO 0x7000000a /* Number of local GOT entries */ -#define DT_MIPS_CONFLICTNO 0x7000000b /* Number of CONFLICT entries */ -#define DT_MIPS_LIBLISTNO 0x70000010 /* Number of LIBLIST entries */ -#define DT_MIPS_SYMTABNO 0x70000011 /* Number of DYNSYM entries */ -#define DT_MIPS_UNREFEXTNO 0x70000012 /* First external DYNSYM */ -#define DT_MIPS_GOTSYM 0x70000013 /* First GOT entry in DYNSYM */ -#define DT_MIPS_HIPAGENO 0x70000014 /* Number of GOT page table entries */ -#define DT_MIPS_RLD_MAP 0x70000016 /* Address of run time loader map. */ -#define DT_MIPS_DELTA_CLASS 0x70000017 /* Delta C++ class definition. */ -#define DT_MIPS_DELTA_CLASS_NO 0x70000018 /* Number of entries in - DT_MIPS_DELTA_CLASS. */ -#define DT_MIPS_DELTA_INSTANCE 0x70000019 /* Delta C++ class instances. */ -#define DT_MIPS_DELTA_INSTANCE_NO 0x7000001a /* Number of entries in - DT_MIPS_DELTA_INSTANCE. */ -#define DT_MIPS_DELTA_RELOC 0x7000001b /* Delta relocations. */ -#define DT_MIPS_DELTA_RELOC_NO 0x7000001c /* Number of entries in - DT_MIPS_DELTA_RELOC. */ -#define DT_MIPS_DELTA_SYM 0x7000001d /* Delta symbols that Delta - relocations refer to. */ -#define DT_MIPS_DELTA_SYM_NO 0x7000001e /* Number of entries in - DT_MIPS_DELTA_SYM. */ -#define DT_MIPS_DELTA_CLASSSYM 0x70000020 /* Delta symbols that hold the - class declaration. */ -#define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021 /* Number of entries in - DT_MIPS_DELTA_CLASSSYM. */ -#define DT_MIPS_CXX_FLAGS 0x70000022 /* Flags indicating for C++ flavor. */ -#define DT_MIPS_PIXIE_INIT 0x70000023 -#define DT_MIPS_SYMBOL_LIB 0x70000024 -#define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025 -#define DT_MIPS_LOCAL_GOTIDX 0x70000026 -#define DT_MIPS_HIDDEN_GOTIDX 0x70000027 -#define DT_MIPS_PROTECTED_GOTIDX 0x70000028 -#define DT_MIPS_OPTIONS 0x70000029 /* Address of .options. */ -#define DT_MIPS_INTERFACE 0x7000002a /* Address of .interface. */ -#define DT_MIPS_DYNSTR_ALIGN 0x7000002b -#define DT_MIPS_INTERFACE_SIZE 0x7000002c /* Size of the .interface section. */ -#define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002d /* Address of rld_text_rsolve - function stored in GOT. */ -#define DT_MIPS_PERF_SUFFIX 0x7000002e /* Default suffix of dso to be added - by rld on dlopen() calls. */ -#define DT_MIPS_COMPACT_SIZE 0x7000002f /* (O32)Size of compact rel section. */ -#define DT_MIPS_GP_VALUE 0x70000030 /* GP value for aux GOTs. */ -#define DT_MIPS_AUX_DYNAMIC 0x70000031 /* Address of aux .dynamic. */ -#define DT_MIPS_NUM 0x32 - -/* Legal values for DT_MIPS_FLAGS Elf32_Dyn entry. */ - -#define RHF_NONE 0 /* No flags */ -#define RHF_QUICKSTART (1 << 0) /* Use quickstart */ -#define RHF_NOTPOT (1 << 1) /* Hash size not power of 2 */ -#define RHF_NO_LIBRARY_REPLACEMENT (1 << 2) /* Ignore LD_LIBRARY_PATH */ -#define RHF_NO_MOVE (1 << 3) -#define RHF_SGI_ONLY (1 << 4) -#define RHF_GUARANTEE_INIT (1 << 5) -#define RHF_DELTA_C_PLUS_PLUS (1 << 6) -#define RHF_GUARANTEE_START_INIT (1 << 7) -#define RHF_PIXIE (1 << 8) -#define RHF_DEFAULT_DELAY_LOAD (1 << 9) -#define RHF_REQUICKSTART (1 << 10) -#define RHF_REQUICKSTARTED (1 << 11) -#define RHF_CORD (1 << 12) -#define RHF_NO_UNRES_UNDEF (1 << 13) -#define RHF_RLD_ORDER_SAFE (1 << 14) - -/* Entries found in sections of type SHT_MIPS_LIBLIST. */ - -typedef struct -{ - Elf32_Word l_name; /* Name (string table index) */ - Elf32_Word l_time_stamp; /* Timestamp */ - Elf32_Word l_checksum; /* Checksum */ - Elf32_Word l_version; /* Interface version */ - Elf32_Word l_flags; /* Flags */ -} Elf32_Lib; - -typedef struct -{ - Elf64_Word l_name; /* Name (string table index) */ - Elf64_Word l_time_stamp; /* Timestamp */ - Elf64_Word l_checksum; /* Checksum */ - Elf64_Word l_version; /* Interface version */ - Elf64_Word l_flags; /* Flags */ -} Elf64_Lib; - - -/* Legal values for l_flags. */ - -#define LL_NONE 0 -#define LL_EXACT_MATCH (1 << 0) /* Require exact match */ -#define LL_IGNORE_INT_VER (1 << 1) /* Ignore interface version */ -#define LL_REQUIRE_MINOR (1 << 2) -#define LL_EXPORTS (1 << 3) -#define LL_DELAY_LOAD (1 << 4) -#define LL_DELTA (1 << 5) - -/* Entries found in sections of type SHT_MIPS_CONFLICT. */ - -typedef Elf32_Addr Elf32_Conflict; - - -/* HPPA specific definitions. */ - -/* Legal values for e_flags field of Elf32_Ehdr. */ - -#define EF_PARISC_TRAPNIL 0x00010000 /* Trap nil pointer dereference. */ -#define EF_PARISC_EXT 0x00020000 /* Program uses arch. extensions. */ -#define EF_PARISC_LSB 0x00040000 /* Program expects little endian. */ -#define EF_PARISC_WIDE 0x00080000 /* Program expects wide mode. */ -#define EF_PARISC_NO_KABP 0x00100000 /* No kernel assisted branch - prediction. */ -#define EF_PARISC_LAZYSWAP 0x00400000 /* Allow lazy swapping. */ -#define EF_PARISC_ARCH 0x0000ffff /* Architecture version. */ - -/* Defined values for `e_flags & EF_PARISC_ARCH' are: */ - -#define EFA_PARISC_1_0 0x020b /* PA-RISC 1.0 big-endian. */ -#define EFA_PARISC_1_1 0x0210 /* PA-RISC 1.1 big-endian. */ -#define EFA_PARISC_2_0 0x0214 /* PA-RISC 2.0 big-endian. */ - -/* Additional section indeces. */ - -#define SHN_PARISC_ANSI_COMMON 0xff00 /* Section for tenatively declared - symbols in ANSI C. */ -#define SHN_PARISC_HUGE_COMMON 0xff01 /* Common blocks in huge model. */ - -/* Legal values for sh_type field of Elf32_Shdr. */ - -#define SHT_PARISC_EXT 0x70000000 /* Contains product specific ext. */ -#define SHT_PARISC_UNWIND 0x70000001 /* Unwind information. */ -#define SHT_PARISC_DOC 0x70000002 /* Debug info for optimized code. */ - -/* Legal values for sh_flags field of Elf32_Shdr. */ - -#define SHF_PARISC_SHORT 0x20000000 /* Section with short addressing. */ -#define SHF_PARISC_HUGE 0x40000000 /* Section far from gp. */ -#define SHF_PARISC_SBP 0x80000000 /* Static branch prediction code. */ - -/* Legal values for ST_TYPE subfield of st_info (symbol type). */ - -#define STT_PARISC_MILLICODE 13 /* Millicode function entry point. */ - -#define STT_HP_OPAQUE (STT_LOOS + 0x1) -#define STT_HP_STUB (STT_LOOS + 0x2) - -/* HPPA relocs. */ - -#define R_PARISC_NONE 0 /* No reloc. */ -#define R_PARISC_DIR32 1 /* Direct 32-bit reference. */ -#define R_PARISC_DIR21L 2 /* Left 21 bits of eff. address. */ -#define R_PARISC_DIR17R 3 /* Right 17 bits of eff. address. */ -#define R_PARISC_DIR17F 4 /* 17 bits of eff. address. */ -#define R_PARISC_DIR14R 6 /* Right 14 bits of eff. address. */ -#define R_PARISC_PCREL32 9 /* 32-bit rel. address. */ -#define R_PARISC_PCREL21L 10 /* Left 21 bits of rel. address. */ -#define R_PARISC_PCREL17R 11 /* Right 17 bits of rel. address. */ -#define R_PARISC_PCREL17F 12 /* 17 bits of rel. address. */ -#define R_PARISC_PCREL14R 14 /* Right 14 bits of rel. address. */ -#define R_PARISC_DPREL21L 18 /* Left 21 bits of rel. address. */ -#define R_PARISC_DPREL14R 22 /* Right 14 bits of rel. address. */ -#define R_PARISC_GPREL21L 26 /* GP-relative, left 21 bits. */ -#define R_PARISC_GPREL14R 30 /* GP-relative, right 14 bits. */ -#define R_PARISC_LTOFF21L 34 /* LT-relative, left 21 bits. */ -#define R_PARISC_LTOFF14R 38 /* LT-relative, right 14 bits. */ -#define R_PARISC_SECREL32 41 /* 32 bits section rel. address. */ -#define R_PARISC_SEGBASE 48 /* No relocation, set segment base. */ -#define R_PARISC_SEGREL32 49 /* 32 bits segment rel. address. */ -#define R_PARISC_PLTOFF21L 50 /* PLT rel. address, left 21 bits. */ -#define R_PARISC_PLTOFF14R 54 /* PLT rel. address, right 14 bits. */ -#define R_PARISC_LTOFF_FPTR32 57 /* 32 bits LT-rel. function pointer. */ -#define R_PARISC_LTOFF_FPTR21L 58 /* LT-rel. fct ptr, left 21 bits. */ -#define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */ -#define R_PARISC_FPTR64 64 /* 64 bits function address. */ -#define R_PARISC_PLABEL32 65 /* 32 bits function address. */ -#define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */ -#define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */ -#define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */ -#define R_PARISC_PCREL14DR 76 /* PC rel. address, right 14 bits. */ -#define R_PARISC_PCREL16F 77 /* 16 bits PC-rel. address. */ -#define R_PARISC_PCREL16WF 78 /* 16 bits PC-rel. address. */ -#define R_PARISC_PCREL16DF 79 /* 16 bits PC-rel. address. */ -#define R_PARISC_DIR64 80 /* 64 bits of eff. address. */ -#define R_PARISC_DIR14WR 83 /* 14 bits of eff. address. */ -#define R_PARISC_DIR14DR 84 /* 14 bits of eff. address. */ -#define R_PARISC_DIR16F 85 /* 16 bits of eff. address. */ -#define R_PARISC_DIR16WF 86 /* 16 bits of eff. address. */ -#define R_PARISC_DIR16DF 87 /* 16 bits of eff. address. */ -#define R_PARISC_GPREL64 88 /* 64 bits of GP-rel. address. */ -#define R_PARISC_GPREL14WR 91 /* GP-rel. address, right 14 bits. */ -#define R_PARISC_GPREL14DR 92 /* GP-rel. address, right 14 bits. */ -#define R_PARISC_GPREL16F 93 /* 16 bits GP-rel. address. */ -#define R_PARISC_GPREL16WF 94 /* 16 bits GP-rel. address. */ -#define R_PARISC_GPREL16DF 95 /* 16 bits GP-rel. address. */ -#define R_PARISC_LTOFF64 96 /* 64 bits LT-rel. address. */ -#define R_PARISC_LTOFF14WR 99 /* LT-rel. address, right 14 bits. */ -#define R_PARISC_LTOFF14DR 100 /* LT-rel. address, right 14 bits. */ -#define R_PARISC_LTOFF16F 101 /* 16 bits LT-rel. address. */ -#define R_PARISC_LTOFF16WF 102 /* 16 bits LT-rel. address. */ -#define R_PARISC_LTOFF16DF 103 /* 16 bits LT-rel. address. */ -#define R_PARISC_SECREL64 104 /* 64 bits section rel. address. */ -#define R_PARISC_SEGREL64 112 /* 64 bits segment rel. address. */ -#define R_PARISC_PLTOFF14WR 115 /* PLT-rel. address, right 14 bits. */ -#define R_PARISC_PLTOFF14DR 116 /* PLT-rel. address, right 14 bits. */ -#define R_PARISC_PLTOFF16F 117 /* 16 bits LT-rel. address. */ -#define R_PARISC_PLTOFF16WF 118 /* 16 bits PLT-rel. address. */ -#define R_PARISC_PLTOFF16DF 119 /* 16 bits PLT-rel. address. */ -#define R_PARISC_LTOFF_FPTR64 120 /* 64 bits LT-rel. function ptr. */ -#define R_PARISC_LTOFF_FPTR14WR 123 /* LT-rel. fct. ptr., right 14 bits. */ -#define R_PARISC_LTOFF_FPTR14DR 124 /* LT-rel. fct. ptr., right 14 bits. */ -#define R_PARISC_LTOFF_FPTR16F 125 /* 16 bits LT-rel. function ptr. */ -#define R_PARISC_LTOFF_FPTR16WF 126 /* 16 bits LT-rel. function ptr. */ -#define R_PARISC_LTOFF_FPTR16DF 127 /* 16 bits LT-rel. function ptr. */ -#define R_PARISC_LORESERVE 128 -#define R_PARISC_COPY 128 /* Copy relocation. */ -#define R_PARISC_IPLT 129 /* Dynamic reloc, imported PLT */ -#define R_PARISC_EPLT 130 /* Dynamic reloc, exported PLT */ -#define R_PARISC_TPREL32 153 /* 32 bits TP-rel. address. */ -#define R_PARISC_TPREL21L 154 /* TP-rel. address, left 21 bits. */ -#define R_PARISC_TPREL14R 158 /* TP-rel. address, right 14 bits. */ -#define R_PARISC_LTOFF_TP21L 162 /* LT-TP-rel. address, left 21 bits. */ -#define R_PARISC_LTOFF_TP14R 166 /* LT-TP-rel. address, right 14 bits.*/ -#define R_PARISC_LTOFF_TP14F 167 /* 14 bits LT-TP-rel. address. */ -#define R_PARISC_TPREL64 216 /* 64 bits TP-rel. address. */ -#define R_PARISC_TPREL14WR 219 /* TP-rel. address, right 14 bits. */ -#define R_PARISC_TPREL14DR 220 /* TP-rel. address, right 14 bits. */ -#define R_PARISC_TPREL16F 221 /* 16 bits TP-rel. address. */ -#define R_PARISC_TPREL16WF 222 /* 16 bits TP-rel. address. */ -#define R_PARISC_TPREL16DF 223 /* 16 bits TP-rel. address. */ -#define R_PARISC_LTOFF_TP64 224 /* 64 bits LT-TP-rel. address. */ -#define R_PARISC_LTOFF_TP14WR 227 /* LT-TP-rel. address, right 14 bits.*/ -#define R_PARISC_LTOFF_TP14DR 228 /* LT-TP-rel. address, right 14 bits.*/ -#define R_PARISC_LTOFF_TP16F 229 /* 16 bits LT-TP-rel. address. */ -#define R_PARISC_LTOFF_TP16WF 230 /* 16 bits LT-TP-rel. address. */ -#define R_PARISC_LTOFF_TP16DF 231 /* 16 bits LT-TP-rel. address. */ -#define R_PARISC_HIRESERVE 255 - -/* Legal values for p_type field of Elf32_Phdr/Elf64_Phdr. */ - -#define PT_HP_TLS (PT_LOOS + 0x0) -#define PT_HP_CORE_NONE (PT_LOOS + 0x1) -#define PT_HP_CORE_VERSION (PT_LOOS + 0x2) -#define PT_HP_CORE_KERNEL (PT_LOOS + 0x3) -#define PT_HP_CORE_COMM (PT_LOOS + 0x4) -#define PT_HP_CORE_PROC (PT_LOOS + 0x5) -#define PT_HP_CORE_LOADABLE (PT_LOOS + 0x6) -#define PT_HP_CORE_STACK (PT_LOOS + 0x7) -#define PT_HP_CORE_SHM (PT_LOOS + 0x8) -#define PT_HP_CORE_MMF (PT_LOOS + 0x9) -#define PT_HP_PARALLEL (PT_LOOS + 0x10) -#define PT_HP_FASTBIND (PT_LOOS + 0x11) -#define PT_HP_OPT_ANNOT (PT_LOOS + 0x12) -#define PT_HP_HSL_ANNOT (PT_LOOS + 0x13) -#define PT_HP_STACK (PT_LOOS + 0x14) - -#define PT_PARISC_ARCHEXT 0x70000000 -#define PT_PARISC_UNWIND 0x70000001 - -/* Legal values for p_flags field of Elf32_Phdr/Elf64_Phdr. */ - -#define PF_PARISC_SBP 0x08000000 - -#define PF_HP_PAGE_SIZE 0x00100000 -#define PF_HP_FAR_SHARED 0x00200000 -#define PF_HP_NEAR_SHARED 0x00400000 -#define PF_HP_CODE 0x01000000 -#define PF_HP_MODIFY 0x02000000 -#define PF_HP_LAZYSWAP 0x04000000 -#define PF_HP_SBP 0x08000000 - - -/* Alpha specific definitions. */ - -/* Legal values for e_flags field of Elf64_Ehdr. */ - -#define EF_ALPHA_32BIT 1 /* All addresses must be < 2GB. */ -#define EF_ALPHA_CANRELAX 2 /* Relocations for relaxing exist. */ - -/* Legal values for sh_type field of Elf64_Shdr. */ - -/* These two are primerily concerned with ECOFF debugging info. */ -#define SHT_ALPHA_DEBUG 0x70000001 -#define SHT_ALPHA_REGINFO 0x70000002 - -/* Legal values for sh_flags field of Elf64_Shdr. */ - -#define SHF_ALPHA_GPREL 0x10000000 - -/* Legal values for st_other field of Elf64_Sym. */ -#define STO_ALPHA_NOPV 0x80 /* No PV required. */ -#define STO_ALPHA_STD_GPLOAD 0x88 /* PV only used for initial ldgp. */ - -/* Alpha relocs. */ - -#define R_ALPHA_NONE 0 /* No reloc */ -#define R_ALPHA_REFLONG 1 /* Direct 32 bit */ -#define R_ALPHA_REFQUAD 2 /* Direct 64 bit */ -#define R_ALPHA_GPREL32 3 /* GP relative 32 bit */ -#define R_ALPHA_LITERAL 4 /* GP relative 16 bit w/optimization */ -#define R_ALPHA_LITUSE 5 /* Optimization hint for LITERAL */ -#define R_ALPHA_GPDISP 6 /* Add displacement to GP */ -#define R_ALPHA_BRADDR 7 /* PC+4 relative 23 bit shifted */ -#define R_ALPHA_HINT 8 /* PC+4 relative 16 bit shifted */ -#define R_ALPHA_SREL16 9 /* PC relative 16 bit */ -#define R_ALPHA_SREL32 10 /* PC relative 32 bit */ -#define R_ALPHA_SREL64 11 /* PC relative 64 bit */ -#define R_ALPHA_GPRELHIGH 17 /* GP relative 32 bit, high 16 bits */ -#define R_ALPHA_GPRELLOW 18 /* GP relative 32 bit, low 16 bits */ -#define R_ALPHA_GPREL16 19 /* GP relative 16 bit */ -#define R_ALPHA_COPY 24 /* Copy symbol at runtime */ -#define R_ALPHA_GLOB_DAT 25 /* Create GOT entry */ -#define R_ALPHA_JMP_SLOT 26 /* Create PLT entry */ -#define R_ALPHA_RELATIVE 27 /* Adjust by program base */ -#define R_ALPHA_TLS_GD_HI 28 -#define R_ALPHA_TLSGD 29 -#define R_ALPHA_TLS_LDM 30 -#define R_ALPHA_DTPMOD64 31 -#define R_ALPHA_GOTDTPREL 32 -#define R_ALPHA_DTPREL64 33 -#define R_ALPHA_DTPRELHI 34 -#define R_ALPHA_DTPRELLO 35 -#define R_ALPHA_DTPREL16 36 -#define R_ALPHA_GOTTPREL 37 -#define R_ALPHA_TPREL64 38 -#define R_ALPHA_TPRELHI 39 -#define R_ALPHA_TPRELLO 40 -#define R_ALPHA_TPREL16 41 -/* Keep this the last entry. */ -#define R_ALPHA_NUM 46 - -/* Magic values of the LITUSE relocation addend. */ -#define LITUSE_ALPHA_ADDR 0 -#define LITUSE_ALPHA_BASE 1 -#define LITUSE_ALPHA_BYTOFF 2 -#define LITUSE_ALPHA_JSR 3 -#define LITUSE_ALPHA_TLS_GD 4 -#define LITUSE_ALPHA_TLS_LDM 5 - - -/* PowerPC specific declarations */ - -/* Values for Elf32/64_Ehdr.e_flags. */ -#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */ - -/* Cygnus local bits below */ -#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/ -#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib - flag */ - -/* PowerPC relocations defined by the ABIs */ -#define R_PPC_NONE 0 -#define R_PPC_ADDR32 1 /* 32bit absolute address */ -#define R_PPC_ADDR24 2 /* 26bit address, 2 bits ignored. */ -#define R_PPC_ADDR16 3 /* 16bit absolute address */ -#define R_PPC_ADDR16_LO 4 /* lower 16bit of absolute address */ -#define R_PPC_ADDR16_HI 5 /* high 16bit of absolute address */ -#define R_PPC_ADDR16_HA 6 /* adjusted high 16bit */ -#define R_PPC_ADDR14 7 /* 16bit address, 2 bits ignored */ -#define R_PPC_ADDR14_BRTAKEN 8 -#define R_PPC_ADDR14_BRNTAKEN 9 -#define R_PPC_REL24 10 /* PC relative 26 bit */ -#define R_PPC_REL14 11 /* PC relative 16 bit */ -#define R_PPC_REL14_BRTAKEN 12 -#define R_PPC_REL14_BRNTAKEN 13 -#define R_PPC_GOT16 14 -#define R_PPC_GOT16_LO 15 -#define R_PPC_GOT16_HI 16 -#define R_PPC_GOT16_HA 17 -#define R_PPC_PLTREL24 18 -#define R_PPC_COPY 19 -#define R_PPC_GLOB_DAT 20 -#define R_PPC_JMP_SLOT 21 -#define R_PPC_RELATIVE 22 -#define R_PPC_LOCAL24PC 23 -#define R_PPC_UADDR32 24 -#define R_PPC_UADDR16 25 -#define R_PPC_REL32 26 -#define R_PPC_PLT32 27 -#define R_PPC_PLTREL32 28 -#define R_PPC_PLT16_LO 29 -#define R_PPC_PLT16_HI 30 -#define R_PPC_PLT16_HA 31 -#define R_PPC_SDAREL16 32 -#define R_PPC_SECTOFF 33 -#define R_PPC_SECTOFF_LO 34 -#define R_PPC_SECTOFF_HI 35 -#define R_PPC_SECTOFF_HA 36 - -/* PowerPC relocations defined for the TLS access ABI. */ -#define R_PPC_TLS 67 /* none (sym+add)@tls */ -#define R_PPC_DTPMOD32 68 /* word32 (sym+add)@dtpmod */ -#define R_PPC_TPREL16 69 /* half16* (sym+add)@tprel */ -#define R_PPC_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */ -#define R_PPC_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */ -#define R_PPC_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */ -#define R_PPC_TPREL32 73 /* word32 (sym+add)@tprel */ -#define R_PPC_DTPREL16 74 /* half16* (sym+add)@dtprel */ -#define R_PPC_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */ -#define R_PPC_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */ -#define R_PPC_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */ -#define R_PPC_DTPREL32 78 /* word32 (sym+add)@dtprel */ -#define R_PPC_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */ -#define R_PPC_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */ -#define R_PPC_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */ -#define R_PPC_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */ -#define R_PPC_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */ -#define R_PPC_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */ -#define R_PPC_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */ -#define R_PPC_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */ -#define R_PPC_GOT_TPREL16 87 /* half16* (sym+add)@got@tprel */ -#define R_PPC_GOT_TPREL16_LO 88 /* half16 (sym+add)@got@tprel@l */ -#define R_PPC_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */ -#define R_PPC_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */ -#define R_PPC_GOT_DTPREL16 91 /* half16* (sym+add)@got@dtprel */ -#define R_PPC_GOT_DTPREL16_LO 92 /* half16* (sym+add)@got@dtprel@l */ -#define R_PPC_GOT_DTPREL16_HI 93 /* half16* (sym+add)@got@dtprel@h */ -#define R_PPC_GOT_DTPREL16_HA 94 /* half16* (sym+add)@got@dtprel@ha */ - -/* Keep this the last entry. */ -#define R_PPC_NUM 95 - -/* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -#define R_PPC_EMB_NADDR32 101 -#define R_PPC_EMB_NADDR16 102 -#define R_PPC_EMB_NADDR16_LO 103 -#define R_PPC_EMB_NADDR16_HI 104 -#define R_PPC_EMB_NADDR16_HA 105 -#define R_PPC_EMB_SDAI16 106 -#define R_PPC_EMB_SDA2I16 107 -#define R_PPC_EMB_SDA2REL 108 -#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */ -#define R_PPC_EMB_MRKREF 110 -#define R_PPC_EMB_RELSEC16 111 -#define R_PPC_EMB_RELST_LO 112 -#define R_PPC_EMB_RELST_HI 113 -#define R_PPC_EMB_RELST_HA 114 -#define R_PPC_EMB_BIT_FLD 115 -#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */ - -/* Diab tool relocations. */ -#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */ -#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */ -#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */ -#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */ -#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */ -#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */ - -/* This is a phony reloc to handle any old fashioned TOC16 references - that may still be in object files. */ -#define R_PPC_TOC16 255 - - -/* PowerPC64 relocations defined by the ABIs */ -#define R_PPC64_NONE R_PPC_NONE -#define R_PPC64_ADDR32 R_PPC_ADDR32 /* 32bit absolute address */ -#define R_PPC64_ADDR24 R_PPC_ADDR24 /* 26bit address, word aligned */ -#define R_PPC64_ADDR16 R_PPC_ADDR16 /* 16bit absolute address */ -#define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO /* lower 16bits of address */ -#define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI /* high 16bits of address. */ -#define R_PPC64_ADDR16_HA R_PPC_ADDR16_HA /* adjusted high 16bits. */ -#define R_PPC64_ADDR14 R_PPC_ADDR14 /* 16bit address, word aligned */ -#define R_PPC64_ADDR14_BRTAKEN R_PPC_ADDR14_BRTAKEN -#define R_PPC64_ADDR14_BRNTAKEN R_PPC_ADDR14_BRNTAKEN -#define R_PPC64_REL24 R_PPC_REL24 /* PC-rel. 26 bit, word aligned */ -#define R_PPC64_REL14 R_PPC_REL14 /* PC relative 16 bit */ -#define R_PPC64_REL14_BRTAKEN R_PPC_REL14_BRTAKEN -#define R_PPC64_REL14_BRNTAKEN R_PPC_REL14_BRNTAKEN -#define R_PPC64_GOT16 R_PPC_GOT16 -#define R_PPC64_GOT16_LO R_PPC_GOT16_LO -#define R_PPC64_GOT16_HI R_PPC_GOT16_HI -#define R_PPC64_GOT16_HA R_PPC_GOT16_HA - -#define R_PPC64_COPY R_PPC_COPY -#define R_PPC64_GLOB_DAT R_PPC_GLOB_DAT -#define R_PPC64_JMP_SLOT R_PPC_JMP_SLOT -#define R_PPC64_RELATIVE R_PPC_RELATIVE - -#define R_PPC64_UADDR32 R_PPC_UADDR32 -#define R_PPC64_UADDR16 R_PPC_UADDR16 -#define R_PPC64_REL32 R_PPC_REL32 -#define R_PPC64_PLT32 R_PPC_PLT32 -#define R_PPC64_PLTREL32 R_PPC_PLTREL32 -#define R_PPC64_PLT16_LO R_PPC_PLT16_LO -#define R_PPC64_PLT16_HI R_PPC_PLT16_HI -#define R_PPC64_PLT16_HA R_PPC_PLT16_HA - -#define R_PPC64_SECTOFF R_PPC_SECTOFF -#define R_PPC64_SECTOFF_LO R_PPC_SECTOFF_LO -#define R_PPC64_SECTOFF_HI R_PPC_SECTOFF_HI -#define R_PPC64_SECTOFF_HA R_PPC_SECTOFF_HA -#define R_PPC64_ADDR30 37 /* word30 (S + A - P) >> 2 */ -#define R_PPC64_ADDR64 38 /* doubleword64 S + A */ -#define R_PPC64_ADDR16_HIGHER 39 /* half16 #higher(S + A) */ -#define R_PPC64_ADDR16_HIGHERA 40 /* half16 #highera(S + A) */ -#define R_PPC64_ADDR16_HIGHEST 41 /* half16 #highest(S + A) */ -#define R_PPC64_ADDR16_HIGHESTA 42 /* half16 #highesta(S + A) */ -#define R_PPC64_UADDR64 43 /* doubleword64 S + A */ -#define R_PPC64_REL64 44 /* doubleword64 S + A - P */ -#define R_PPC64_PLT64 45 /* doubleword64 L + A */ -#define R_PPC64_PLTREL64 46 /* doubleword64 L + A - P */ -#define R_PPC64_TOC16 47 /* half16* S + A - .TOC */ -#define R_PPC64_TOC16_LO 48 /* half16 #lo(S + A - .TOC.) */ -#define R_PPC64_TOC16_HI 49 /* half16 #hi(S + A - .TOC.) */ -#define R_PPC64_TOC16_HA 50 /* half16 #ha(S + A - .TOC.) */ -#define R_PPC64_TOC 51 /* doubleword64 .TOC */ -#define R_PPC64_PLTGOT16 52 /* half16* M + A */ -#define R_PPC64_PLTGOT16_LO 53 /* half16 #lo(M + A) */ -#define R_PPC64_PLTGOT16_HI 54 /* half16 #hi(M + A) */ -#define R_PPC64_PLTGOT16_HA 55 /* half16 #ha(M + A) */ - -#define R_PPC64_ADDR16_DS 56 /* half16ds* (S + A) >> 2 */ -#define R_PPC64_ADDR16_LO_DS 57 /* half16ds #lo(S + A) >> 2 */ -#define R_PPC64_GOT16_DS 58 /* half16ds* (G + A) >> 2 */ -#define R_PPC64_GOT16_LO_DS 59 /* half16ds #lo(G + A) >> 2 */ -#define R_PPC64_PLT16_LO_DS 60 /* half16ds #lo(L + A) >> 2 */ -#define R_PPC64_SECTOFF_DS 61 /* half16ds* (R + A) >> 2 */ -#define R_PPC64_SECTOFF_LO_DS 62 /* half16ds #lo(R + A) >> 2 */ -#define R_PPC64_TOC16_DS 63 /* half16ds* (S + A - .TOC.) >> 2 */ -#define R_PPC64_TOC16_LO_DS 64 /* half16ds #lo(S + A - .TOC.) >> 2 */ -#define R_PPC64_PLTGOT16_DS 65 /* half16ds* (M + A) >> 2 */ -#define R_PPC64_PLTGOT16_LO_DS 66 /* half16ds #lo(M + A) >> 2 */ - -/* PowerPC64 relocations defined for the TLS access ABI. */ -#define R_PPC64_TLS 67 /* none (sym+add)@tls */ -#define R_PPC64_DTPMOD64 68 /* doubleword64 (sym+add)@dtpmod */ -#define R_PPC64_TPREL16 69 /* half16* (sym+add)@tprel */ -#define R_PPC64_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */ -#define R_PPC64_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */ -#define R_PPC64_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */ -#define R_PPC64_TPREL64 73 /* doubleword64 (sym+add)@tprel */ -#define R_PPC64_DTPREL16 74 /* half16* (sym+add)@dtprel */ -#define R_PPC64_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */ -#define R_PPC64_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */ -#define R_PPC64_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */ -#define R_PPC64_DTPREL64 78 /* doubleword64 (sym+add)@dtprel */ -#define R_PPC64_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */ -#define R_PPC64_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */ -#define R_PPC64_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */ -#define R_PPC64_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */ -#define R_PPC64_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */ -#define R_PPC64_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */ -#define R_PPC64_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */ -#define R_PPC64_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */ -#define R_PPC64_GOT_TPREL16_DS 87 /* half16ds* (sym+add)@got@tprel */ -#define R_PPC64_GOT_TPREL16_LO_DS 88 /* half16ds (sym+add)@got@tprel@l */ -#define R_PPC64_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */ -#define R_PPC64_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */ -#define R_PPC64_GOT_DTPREL16_DS 91 /* half16ds* (sym+add)@got@dtprel */ -#define R_PPC64_GOT_DTPREL16_LO_DS 92 /* half16ds (sym+add)@got@dtprel@l */ -#define R_PPC64_GOT_DTPREL16_HI 93 /* half16 (sym+add)@got@dtprel@h */ -#define R_PPC64_GOT_DTPREL16_HA 94 /* half16 (sym+add)@got@dtprel@ha */ -#define R_PPC64_TPREL16_DS 95 /* half16ds* (sym+add)@tprel */ -#define R_PPC64_TPREL16_LO_DS 96 /* half16ds (sym+add)@tprel@l */ -#define R_PPC64_TPREL16_HIGHER 97 /* half16 (sym+add)@tprel@higher */ -#define R_PPC64_TPREL16_HIGHERA 98 /* half16 (sym+add)@tprel@highera */ -#define R_PPC64_TPREL16_HIGHEST 99 /* half16 (sym+add)@tprel@highest */ -#define R_PPC64_TPREL16_HIGHESTA 100 /* half16 (sym+add)@tprel@highesta */ -#define R_PPC64_DTPREL16_DS 101 /* half16ds* (sym+add)@dtprel */ -#define R_PPC64_DTPREL16_LO_DS 102 /* half16ds (sym+add)@dtprel@l */ -#define R_PPC64_DTPREL16_HIGHER 103 /* half16 (sym+add)@dtprel@higher */ -#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera */ -#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest */ -#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */ - -/* Keep this the last entry. */ -#define R_PPC64_NUM 107 - -/* PowerPC64 specific values for the Dyn d_tag field. */ -#define DT_PPC64_GLINK (DT_LOPROC + 0) -#define DT_PPC64_NUM 1 - - -/* ARM specific declarations */ - -/* Processor specific flags for the ELF header e_flags field. */ -#define EF_ARM_RELEXEC 0x01 -#define EF_ARM_HASENTRY 0x02 -#define EF_ARM_INTERWORK 0x04 -#define EF_ARM_APCS_26 0x08 -#define EF_ARM_APCS_FLOAT 0x10 -#define EF_ARM_PIC 0x20 -#define EF_ARM_ALIGN8 0x40 /* 8-bit structure alignment is in use */ -#define EF_ARM_NEW_ABI 0x80 -#define EF_ARM_OLD_ABI 0x100 - -/* Other constants defined in the ARM ELF spec. version B-01. */ -/* NB. These conflict with values defined above. */ -#define EF_ARM_SYMSARESORTED 0x04 -#define EF_ARM_DYNSYMSUSESEGIDX 0x08 -#define EF_ARM_MAPSYMSFIRST 0x10 -#define EF_ARM_EABIMASK 0XFF000000 - -#define EF_ARM_EABI_VERSION(flags) ((flags) & EF_ARM_EABIMASK) -#define EF_ARM_EABI_UNKNOWN 0x00000000 -#define EF_ARM_EABI_VER1 0x01000000 -#define EF_ARM_EABI_VER2 0x02000000 - -/* Additional symbol types for Thumb */ -#define STT_ARM_TFUNC 0xd - -/* ARM-specific values for sh_flags */ -#define SHF_ARM_ENTRYSECT 0x10000000 /* Section contains an entry point */ -#define SHF_ARM_COMDEF 0x80000000 /* Section may be multiply defined - in the input to a link step */ - -/* ARM-specific program header flags */ -#define PF_ARM_SB 0x10000000 /* Segment contains the location - addressed by the static base */ - -/* ARM relocs. */ -#define R_ARM_NONE 0 /* No reloc */ -#define R_ARM_PC24 1 /* PC relative 26 bit branch */ -#define R_ARM_ABS32 2 /* Direct 32 bit */ -#define R_ARM_REL32 3 /* PC relative 32 bit */ -#define R_ARM_PC13 4 -#define R_ARM_ABS16 5 /* Direct 16 bit */ -#define R_ARM_ABS12 6 /* Direct 12 bit */ -#define R_ARM_THM_ABS5 7 -#define R_ARM_ABS8 8 /* Direct 8 bit */ -#define R_ARM_SBREL32 9 -#define R_ARM_THM_PC22 10 -#define R_ARM_THM_PC8 11 -#define R_ARM_AMP_VCALL9 12 -#define R_ARM_SWI24 13 -#define R_ARM_THM_SWI8 14 -#define R_ARM_XPC25 15 -#define R_ARM_THM_XPC22 16 -#define R_ARM_COPY 20 /* Copy symbol at runtime */ -#define R_ARM_GLOB_DAT 21 /* Create GOT entry */ -#define R_ARM_JUMP_SLOT 22 /* Create PLT entry */ -#define R_ARM_RELATIVE 23 /* Adjust by program base */ -#define R_ARM_GOTOFF 24 /* 32 bit offset to GOT */ -#define R_ARM_GOTPC 25 /* 32 bit PC relative offset to GOT */ -#define R_ARM_GOT32 26 /* 32 bit GOT entry */ -#define R_ARM_PLT32 27 /* 32 bit PLT address */ -#define R_ARM_ALU_PCREL_7_0 32 -#define R_ARM_ALU_PCREL_15_8 33 -#define R_ARM_ALU_PCREL_23_15 34 -#define R_ARM_LDR_SBREL_11_0 35 -#define R_ARM_ALU_SBREL_19_12 36 -#define R_ARM_ALU_SBREL_27_20 37 -#define R_ARM_GNU_VTENTRY 100 -#define R_ARM_GNU_VTINHERIT 101 -#define R_ARM_THM_PC11 102 /* thumb unconditional branch */ -#define R_ARM_THM_PC9 103 /* thumb conditional branch */ -#define R_ARM_RXPC25 249 -#define R_ARM_RSBREL32 250 -#define R_ARM_THM_RPC22 251 -#define R_ARM_RREL32 252 -#define R_ARM_RABS22 253 -#define R_ARM_RPC24 254 -#define R_ARM_RBASE 255 -/* Keep this the last entry. */ -#define R_ARM_NUM 256 - -/* IA-64 specific declarations. */ - -/* Processor specific flags for the Ehdr e_flags field. */ -#define EF_IA_64_MASKOS 0x0000000f /* os-specific flags */ -#define EF_IA_64_ABI64 0x00000010 /* 64-bit ABI */ -#define EF_IA_64_ARCH 0xff000000 /* arch. version mask */ - -/* Processor specific values for the Phdr p_type field. */ -#define PT_IA_64_ARCHEXT (PT_LOPROC + 0) /* arch extension bits */ -#define PT_IA_64_UNWIND (PT_LOPROC + 1) /* ia64 unwind bits */ - -/* Processor specific flags for the Phdr p_flags field. */ -#define PF_IA_64_NORECOV 0x80000000 /* spec insns w/o recovery */ - -/* Processor specific values for the Shdr sh_type field. */ -#define SHT_IA_64_EXT (SHT_LOPROC + 0) /* extension bits */ -#define SHT_IA_64_UNWIND (SHT_LOPROC + 1) /* unwind bits */ - -/* Processor specific flags for the Shdr sh_flags field. */ -#define SHF_IA_64_SHORT 0x10000000 /* section near gp */ -#define SHF_IA_64_NORECOV 0x20000000 /* spec insns w/o recovery */ - -/* Processor specific values for the Dyn d_tag field. */ -#define DT_IA_64_PLT_RESERVE (DT_LOPROC + 0) -#define DT_IA_64_NUM 1 - -/* IA-64 relocations. */ -#define R_IA64_NONE 0x00 /* none */ -#define R_IA64_IMM14 0x21 /* symbol + addend, add imm14 */ -#define R_IA64_IMM22 0x22 /* symbol + addend, add imm22 */ -#define R_IA64_IMM64 0x23 /* symbol + addend, mov imm64 */ -#define R_IA64_DIR32MSB 0x24 /* symbol + addend, data4 MSB */ -#define R_IA64_DIR32LSB 0x25 /* symbol + addend, data4 LSB */ -#define R_IA64_DIR64MSB 0x26 /* symbol + addend, data8 MSB */ -#define R_IA64_DIR64LSB 0x27 /* symbol + addend, data8 LSB */ -#define R_IA64_GPREL22 0x2a /* @gprel(sym + add), add imm22 */ -#define R_IA64_GPREL64I 0x2b /* @gprel(sym + add), mov imm64 */ -#define R_IA64_GPREL32MSB 0x2c /* @gprel(sym + add), data4 MSB */ -#define R_IA64_GPREL32LSB 0x2d /* @gprel(sym + add), data4 LSB */ -#define R_IA64_GPREL64MSB 0x2e /* @gprel(sym + add), data8 MSB */ -#define R_IA64_GPREL64LSB 0x2f /* @gprel(sym + add), data8 LSB */ -#define R_IA64_LTOFF22 0x32 /* @ltoff(sym + add), add imm22 */ -#define R_IA64_LTOFF64I 0x33 /* @ltoff(sym + add), mov imm64 */ -#define R_IA64_PLTOFF22 0x3a /* @pltoff(sym + add), add imm22 */ -#define R_IA64_PLTOFF64I 0x3b /* @pltoff(sym + add), mov imm64 */ -#define R_IA64_PLTOFF64MSB 0x3e /* @pltoff(sym + add), data8 MSB */ -#define R_IA64_PLTOFF64LSB 0x3f /* @pltoff(sym + add), data8 LSB */ -#define R_IA64_FPTR64I 0x43 /* @fptr(sym + add), mov imm64 */ -#define R_IA64_FPTR32MSB 0x44 /* @fptr(sym + add), data4 MSB */ -#define R_IA64_FPTR32LSB 0x45 /* @fptr(sym + add), data4 LSB */ -#define R_IA64_FPTR64MSB 0x46 /* @fptr(sym + add), data8 MSB */ -#define R_IA64_FPTR64LSB 0x47 /* @fptr(sym + add), data8 LSB */ -#define R_IA64_PCREL60B 0x48 /* @pcrel(sym + add), brl */ -#define R_IA64_PCREL21B 0x49 /* @pcrel(sym + add), ptb, call */ -#define R_IA64_PCREL21M 0x4a /* @pcrel(sym + add), chk.s */ -#define R_IA64_PCREL21F 0x4b /* @pcrel(sym + add), fchkf */ -#define R_IA64_PCREL32MSB 0x4c /* @pcrel(sym + add), data4 MSB */ -#define R_IA64_PCREL32LSB 0x4d /* @pcrel(sym + add), data4 LSB */ -#define R_IA64_PCREL64MSB 0x4e /* @pcrel(sym + add), data8 MSB */ -#define R_IA64_PCREL64LSB 0x4f /* @pcrel(sym + add), data8 LSB */ -#define R_IA64_LTOFF_FPTR22 0x52 /* @ltoff(@fptr(s+a)), imm22 */ -#define R_IA64_LTOFF_FPTR64I 0x53 /* @ltoff(@fptr(s+a)), imm64 */ -#define R_IA64_LTOFF_FPTR32MSB 0x54 /* @ltoff(@fptr(s+a)), data4 MSB */ -#define R_IA64_LTOFF_FPTR32LSB 0x55 /* @ltoff(@fptr(s+a)), data4 LSB */ -#define R_IA64_LTOFF_FPTR64MSB 0x56 /* @ltoff(@fptr(s+a)), data8 MSB */ -#define R_IA64_LTOFF_FPTR64LSB 0x57 /* @ltoff(@fptr(s+a)), data8 LSB */ -#define R_IA64_SEGREL32MSB 0x5c /* @segrel(sym + add), data4 MSB */ -#define R_IA64_SEGREL32LSB 0x5d /* @segrel(sym + add), data4 LSB */ -#define R_IA64_SEGREL64MSB 0x5e /* @segrel(sym + add), data8 MSB */ -#define R_IA64_SEGREL64LSB 0x5f /* @segrel(sym + add), data8 LSB */ -#define R_IA64_SECREL32MSB 0x64 /* @secrel(sym + add), data4 MSB */ -#define R_IA64_SECREL32LSB 0x65 /* @secrel(sym + add), data4 LSB */ -#define R_IA64_SECREL64MSB 0x66 /* @secrel(sym + add), data8 MSB */ -#define R_IA64_SECREL64LSB 0x67 /* @secrel(sym + add), data8 LSB */ -#define R_IA64_REL32MSB 0x6c /* data 4 + REL */ -#define R_IA64_REL32LSB 0x6d /* data 4 + REL */ -#define R_IA64_REL64MSB 0x6e /* data 8 + REL */ -#define R_IA64_REL64LSB 0x6f /* data 8 + REL */ -#define R_IA64_LTV32MSB 0x74 /* symbol + addend, data4 MSB */ -#define R_IA64_LTV32LSB 0x75 /* symbol + addend, data4 LSB */ -#define R_IA64_LTV64MSB 0x76 /* symbol + addend, data8 MSB */ -#define R_IA64_LTV64LSB 0x77 /* symbol + addend, data8 LSB */ -#define R_IA64_PCREL21BI 0x79 /* @pcrel(sym + add), 21bit inst */ -#define R_IA64_PCREL22 0x7a /* @pcrel(sym + add), 22bit inst */ -#define R_IA64_PCREL64I 0x7b /* @pcrel(sym + add), 64bit inst */ -#define R_IA64_IPLTMSB 0x80 /* dynamic reloc, imported PLT, MSB */ -#define R_IA64_IPLTLSB 0x81 /* dynamic reloc, imported PLT, LSB */ -#define R_IA64_COPY 0x84 /* copy relocation */ -#define R_IA64_SUB 0x85 /* Addend and symbol difference */ -#define R_IA64_LTOFF22X 0x86 /* LTOFF22, relaxable. */ -#define R_IA64_LDXMOV 0x87 /* Use of LTOFF22X. */ -#define R_IA64_TPREL14 0x91 /* @tprel(sym + add), imm14 */ -#define R_IA64_TPREL22 0x92 /* @tprel(sym + add), imm22 */ -#define R_IA64_TPREL64I 0x93 /* @tprel(sym + add), imm64 */ -#define R_IA64_TPREL64MSB 0x96 /* @tprel(sym + add), data8 MSB */ -#define R_IA64_TPREL64LSB 0x97 /* @tprel(sym + add), data8 LSB */ -#define R_IA64_LTOFF_TPREL22 0x9a /* @ltoff(@tprel(s+a)), imm2 */ -#define R_IA64_DTPMOD64MSB 0xa6 /* @dtpmod(sym + add), data8 MSB */ -#define R_IA64_DTPMOD64LSB 0xa7 /* @dtpmod(sym + add), data8 LSB */ -#define R_IA64_LTOFF_DTPMOD22 0xaa /* @ltoff(@dtpmod(sym + add)), imm22 */ -#define R_IA64_DTPREL14 0xb1 /* @dtprel(sym + add), imm14 */ -#define R_IA64_DTPREL22 0xb2 /* @dtprel(sym + add), imm22 */ -#define R_IA64_DTPREL64I 0xb3 /* @dtprel(sym + add), imm64 */ -#define R_IA64_DTPREL32MSB 0xb4 /* @dtprel(sym + add), data4 MSB */ -#define R_IA64_DTPREL32LSB 0xb5 /* @dtprel(sym + add), data4 LSB */ -#define R_IA64_DTPREL64MSB 0xb6 /* @dtprel(sym + add), data8 MSB */ -#define R_IA64_DTPREL64LSB 0xb7 /* @dtprel(sym + add), data8 LSB */ -#define R_IA64_LTOFF_DTPREL22 0xba /* @ltoff(@dtprel(s+a)), imm22 */ - -/* SH specific declarations */ - -/* SH relocs. */ -#define R_SH_NONE 0 -#define R_SH_DIR32 1 -#define R_SH_REL32 2 -#define R_SH_DIR8WPN 3 -#define R_SH_IND12W 4 -#define R_SH_DIR8WPL 5 -#define R_SH_DIR8WPZ 6 -#define R_SH_DIR8BP 7 -#define R_SH_DIR8W 8 -#define R_SH_DIR8L 9 -#define R_SH_SWITCH16 25 -#define R_SH_SWITCH32 26 -#define R_SH_USES 27 -#define R_SH_COUNT 28 -#define R_SH_ALIGN 29 -#define R_SH_CODE 30 -#define R_SH_DATA 31 -#define R_SH_LABEL 32 -#define R_SH_SWITCH8 33 -#define R_SH_GNU_VTINHERIT 34 -#define R_SH_GNU_VTENTRY 35 -#define R_SH_TLS_GD_32 144 -#define R_SH_TLS_LD_32 145 -#define R_SH_TLS_LDO_32 146 -#define R_SH_TLS_IE_32 147 -#define R_SH_TLS_LE_32 148 -#define R_SH_TLS_DTPMOD32 149 -#define R_SH_TLS_DTPOFF32 150 -#define R_SH_TLS_TPOFF32 151 -#define R_SH_GOT32 160 -#define R_SH_PLT32 161 -#define R_SH_COPY 162 -#define R_SH_GLOB_DAT 163 -#define R_SH_JMP_SLOT 164 -#define R_SH_RELATIVE 165 -#define R_SH_GOTOFF 166 -#define R_SH_GOTPC 167 -/* Keep this the last entry. */ -#define R_SH_NUM 256 - -/* Additional s390 relocs */ - -#define R_390_NONE 0 /* No reloc. */ -#define R_390_8 1 /* Direct 8 bit. */ -#define R_390_12 2 /* Direct 12 bit. */ -#define R_390_16 3 /* Direct 16 bit. */ -#define R_390_32 4 /* Direct 32 bit. */ -#define R_390_PC32 5 /* PC relative 32 bit. */ -#define R_390_GOT12 6 /* 12 bit GOT offset. */ -#define R_390_GOT32 7 /* 32 bit GOT offset. */ -#define R_390_PLT32 8 /* 32 bit PC relative PLT address. */ -#define R_390_COPY 9 /* Copy symbol at runtime. */ -#define R_390_GLOB_DAT 10 /* Create GOT entry. */ -#define R_390_JMP_SLOT 11 /* Create PLT entry. */ -#define R_390_RELATIVE 12 /* Adjust by program base. */ -#define R_390_GOTOFF32 13 /* 32 bit offset to GOT. */ -#define R_390_GOTPC 14 /* 32 bit PC relative offset to GOT. */ -#define R_390_GOT16 15 /* 16 bit GOT offset. */ -#define R_390_PC16 16 /* PC relative 16 bit. */ -#define R_390_PC16DBL 17 /* PC relative 16 bit shifted by 1. */ -#define R_390_PLT16DBL 18 /* 16 bit PC rel. PLT shifted by 1. */ -#define R_390_PC32DBL 19 /* PC relative 32 bit shifted by 1. */ -#define R_390_PLT32DBL 20 /* 32 bit PC rel. PLT shifted by 1. */ -#define R_390_GOTPCDBL 21 /* 32 bit PC rel. GOT shifted by 1. */ -#define R_390_64 22 /* Direct 64 bit. */ -#define R_390_PC64 23 /* PC relative 64 bit. */ -#define R_390_GOT64 24 /* 64 bit GOT offset. */ -#define R_390_PLT64 25 /* 64 bit PC relative PLT address. */ -#define R_390_GOTENT 26 /* 32 bit PC rel. to GOT entry >> 1. */ -#define R_390_GOTOFF16 27 /* 16 bit offset to GOT. */ -#define R_390_GOTOFF64 28 /* 64 bit offset to GOT. */ -#define R_390_GOTPLT12 29 /* 12 bit offset to jump slot. */ -#define R_390_GOTPLT16 30 /* 16 bit offset to jump slot. */ -#define R_390_GOTPLT32 31 /* 32 bit offset to jump slot. */ -#define R_390_GOTPLT64 32 /* 64 bit offset to jump slot. */ -#define R_390_GOTPLTENT 33 /* 32 bit rel. offset to jump slot. */ -#define R_390_PLTOFF16 34 /* 16 bit offset from GOT to PLT. */ -#define R_390_PLTOFF32 35 /* 32 bit offset from GOT to PLT. */ -#define R_390_PLTOFF64 36 /* 16 bit offset from GOT to PLT. */ -#define R_390_TLS_LOAD 37 /* Tag for load insn in TLS code. */ -#define R_390_TLS_GDCALL 38 /* Tag for function call in general - dynamic TLS code. */ -#define R_390_TLS_LDCALL 39 /* Tag for function call in local - dynamic TLS code. */ -#define R_390_TLS_GD32 40 /* Direct 32 bit for general dynamic - thread local data. */ -#define R_390_TLS_GD64 41 /* Direct 64 bit for general dynamic - thread local data. */ -#define R_390_TLS_GOTIE12 42 /* 12 bit GOT offset for static TLS - block offset. */ -#define R_390_TLS_GOTIE32 43 /* 32 bit GOT offset for static TLS - block offset. */ -#define R_390_TLS_GOTIE64 44 /* 64 bit GOT offset for static TLS - block offset. */ -#define R_390_TLS_LDM32 45 /* Direct 32 bit for local dynamic - thread local data in LE code. */ -#define R_390_TLS_LDM64 46 /* Direct 64 bit for local dynamic - thread local data in LE code. */ -#define R_390_TLS_IE32 47 /* 32 bit address of GOT entry for - negated static TLS block offset. */ -#define R_390_TLS_IE64 48 /* 64 bit address of GOT entry for - negated static TLS block offset. */ -#define R_390_TLS_IEENT 49 /* 32 bit rel. offset to GOT entry for - negated static TLS block offset. */ -#define R_390_TLS_LE32 50 /* 32 bit negated offset relative to - static TLS block. */ -#define R_390_TLS_LE64 51 /* 64 bit negated offset relative to - static TLS block. */ -#define R_390_TLS_LDO32 52 /* 32 bit offset relative to TLS - block. */ -#define R_390_TLS_LDO64 53 /* 64 bit offset relative to TLS - block. */ -#define R_390_TLS_DTPMOD 54 /* ID of module containing symbol. */ -#define R_390_TLS_DTPOFF 55 /* Offset in TLS block. */ -#define R_390_TLS_TPOFF 56 /* Negated offset in static TLS - block. */ - -/* Keep this the last entry. */ -#define R_390_NUM 57 - -/* CRIS relocations. */ -#define R_CRIS_NONE 0 -#define R_CRIS_8 1 -#define R_CRIS_16 2 -#define R_CRIS_32 3 -#define R_CRIS_8_PCREL 4 -#define R_CRIS_16_PCREL 5 -#define R_CRIS_32_PCREL 6 -#define R_CRIS_GNU_VTINHERIT 7 -#define R_CRIS_GNU_VTENTRY 8 -#define R_CRIS_COPY 9 -#define R_CRIS_GLOB_DAT 10 -#define R_CRIS_JUMP_SLOT 11 -#define R_CRIS_RELATIVE 12 -#define R_CRIS_16_GOT 13 -#define R_CRIS_32_GOT 14 -#define R_CRIS_16_GOTPLT 15 -#define R_CRIS_32_GOTPLT 16 -#define R_CRIS_32_GOTREL 17 -#define R_CRIS_32_PLT_GOTREL 18 -#define R_CRIS_32_PLT_PCREL 19 - -#define R_CRIS_NUM 20 - -/* AMD x86-64 relocations. */ -#define R_X86_64_NONE 0 /* No reloc */ -#define R_X86_64_64 1 /* Direct 64 bit */ -#define R_X86_64_PC32 2 /* PC relative 32 bit signed */ -#define R_X86_64_GOT32 3 /* 32 bit GOT entry */ -#define R_X86_64_PLT32 4 /* 32 bit PLT address */ -#define R_X86_64_COPY 5 /* Copy symbol at runtime */ -#define R_X86_64_GLOB_DAT 6 /* Create GOT entry */ -#define R_X86_64_JUMP_SLOT 7 /* Create PLT entry */ -#define R_X86_64_RELATIVE 8 /* Adjust by program base */ -#define R_X86_64_GOTPCREL 9 /* 32 bit signed PC relative - offset to GOT */ -#define R_X86_64_32 10 /* Direct 32 bit zero extended */ -#define R_X86_64_32S 11 /* Direct 32 bit sign extended */ -#define R_X86_64_16 12 /* Direct 16 bit zero extended */ -#define R_X86_64_PC16 13 /* 16 bit sign extended pc relative */ -#define R_X86_64_8 14 /* Direct 8 bit sign extended */ -#define R_X86_64_PC8 15 /* 8 bit sign extended pc relative */ -#define R_X86_64_DTPMOD64 16 /* ID of module containing symbol */ -#define R_X86_64_DTPOFF64 17 /* Offset in module's TLS block */ -#define R_X86_64_TPOFF64 18 /* Offset in initial TLS block */ -#define R_X86_64_TLSGD 19 /* 32 bit signed PC relative offset - to two GOT entries for GD symbol */ -#define R_X86_64_TLSLD 20 /* 32 bit signed PC relative offset - to two GOT entries for LD symbol */ -#define R_X86_64_DTPOFF32 21 /* Offset in TLS block */ -#define R_X86_64_GOTTPOFF 22 /* 32 bit signed PC relative offset - to GOT entry for IE symbol */ -#define R_X86_64_TPOFF32 23 /* Offset in initial TLS block */ - -#define R_X86_64_NUM 24 - -__END_DECLS - -#endif /* elf.h */ diff --git a/openwrt/toolchain/utils/src/sstrip.c b/openwrt/toolchain/utils/src/sstrip.c deleted file mode 100644 index 60c12c972c..0000000000 --- a/openwrt/toolchain/utils/src/sstrip.c +++ /dev/null @@ -1,492 +0,0 @@ -/* http://www.muppetlabs.com/~breadbox/software/elfkickers.html */ - -/* sstrip: Copyright (C) 1999-2001 by Brian Raiter, under the GNU - * General Public License. No warranty. See COPYING for details. - * - * Aug 23, 2004 Hacked by Manuel Novoa III <mjn3@codepoet.org> to - * handle targets of different endianness and/or elf class, making - * it more useful in a cross-devel environment. - */ - -/* ============== original README =================== - * - * sstrip is a small utility that removes the contents at the end of an - * ELF file that are not part of the program's memory image. - * - * Most ELF executables are built with both a program header table and a - * section header table. However, only the former is required in order - * for the OS to load, link and execute a program. sstrip attempts to - * extract the ELF header, the program header table, and its contents, - * leaving everything else in the bit bucket. It can only remove parts of - * the file that occur at the end, after the parts to be saved. However, - * this almost always includes the section header table, and occasionally - * a few random sections that are not used when running a program. - * - * It should be noted that the GNU bfd library is (understandably) - * dependent on the section header table as an index to the file's - * contents. Thus, an executable file that has no section header table - * cannot be used with gdb, objdump, or any other program based upon the - * bfd library, at all. In fact, the program will not even recognize the - * file as a valid executable. (This limitation is noted in the source - * code comments for bfd, and is marked "FIXME", so this may change at - * some future date. However, I would imagine that it is a pretty - * low-priority item, as executables without a section header table are - * rare in the extreme.) This probably also explains why strip doesn't - * offer the option to do this. - * - * Shared library files may also have their section header table removed. - * Such a library will still function; however, it will no longer be - * possible for a compiler to link a new program against it. - * - * As an added bonus, sstrip also tries to removes trailing zero bytes - * from the end of the file. (This normally cannot be done with an - * executable that has a section header table.) - * - * sstrip is a very simplistic program. It depends upon the common - * practice of putting the parts of the file that contribute to the - * memory image at the front, and the remaining material at the end. This - * permits it to discard the latter material without affecting file - * offsets and memory addresses in what remains. Of course, the ELF - * standard permits files to be organized in almost any order, so if a - * pathological linker decided to put its section headers at the top, - * sstrip would be useless on such executables. - */ - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <errno.h> -#include <unistd.h> -#include <fcntl.h> -#include <elf.h> - -#ifdef __FreeBSD__ -/** - * This seems to work on FreeBSD 5.3, should - * work on all newer versions as well. I have - * no idea if it will work on versions < 5.3 - * - * Joe Estock (guru) <jestock at nutextonline.com> - */ -#include <sys/endian.h> -#define bswap_64 __bswap64 -#define bswap_32 __bswap32 -#define bswap_16 __bswap16 -#elif defined(__APPLE__) -#include <machine/endian.h> -#include <machine/byte_order.h> -#define __BYTE_ORDER BYTE_ORDER -#define __BIG_ENDIAN BIG_ENDIAN -#define bswap_16(x) NXSwapShort(x) -#define bswap_32(x) NXSwapInt(x) -#define bswap_64(x) NXSwapLongLong(x) -#else -#include <endian.h> -#include <byteswap.h> -#endif - - -#ifndef TRUE -#define TRUE 1 -#define FALSE 0 -#endif - -/* The name of the program. - */ -static char const *progname; - -/* The name of the current file. - */ -static char const *filename; - - -/* A simple error-handling function. FALSE is always returned for the - * convenience of the caller. - */ -static int err(char const *errmsg) -{ - fprintf(stderr, "%s: %s: %s\n", progname, filename, errmsg); - return FALSE; -} - -/* A flag to signal the need for endian reversal. - */ -static int do_reverse_endian; - -/* Get a value from the elf header, compensating for endianness. - */ -#define EGET(X) \ - (__extension__ ({ \ - uint64_t __res; \ - if (!do_reverse_endian) { \ - __res = (X); \ - } else if (sizeof(X) == 1) { \ - __res = (X); \ - } else if (sizeof(X) == 2) { \ - __res = bswap_16((X)); \ - } else if (sizeof(X) == 4) { \ - __res = bswap_32((X)); \ - } else if (sizeof(X) == 8) { \ - __res = bswap_64((X)); \ - } else { \ - fprintf(stderr, "%s: %s: EGET failed for size %d\n", \ - progname, filename, sizeof(X)); \ - exit(EXIT_FAILURE); \ - } \ - __res; \ - })) - -/* Set a value 'Y' in the elf header to 'X', compensating for endianness. - */ -#define ESET(Y,X) \ - do if (!do_reverse_endian) { \ - Y = (X); \ - } else if (sizeof(Y) == 1) { \ - Y = (X); \ - } else if (sizeof(Y) == 2) { \ - Y = bswap_16((uint16_t)(X)); \ - } else if (sizeof(Y) == 4) { \ - Y = bswap_32((uint32_t)(X)); \ - } else if (sizeof(Y) == 8) { \ - Y = bswap_64((uint64_t)(X)); \ - } else { \ - fprintf(stderr, "%s: %s: ESET failed for size %d\n", \ - progname, filename, sizeof(Y)); \ - exit(EXIT_FAILURE); \ - } while (0) - - -/* A macro for I/O errors: The given error message is used only when - * errno is not set. - */ -#define ferr(msg) (err(errno ? strerror(errno) : (msg))) - - - -#define HEADER_FUNCTIONS(CLASS) \ - \ -/* readelfheader() reads the ELF header into our global variable, and \ - * checks to make sure that this is in fact a file that we should be \ - * munging. \ - */ \ -static int readelfheader ## CLASS (int fd, Elf ## CLASS ## _Ehdr *ehdr) \ -{ \ - if (read(fd, ((char *)ehdr)+EI_NIDENT, sizeof(*ehdr) - EI_NIDENT) \ - != sizeof(*ehdr) - EI_NIDENT) \ - return ferr("missing or incomplete ELF header."); \ - \ - /* Verify the sizes of the ELF header and the program segment \ - * header table entries. \ - */ \ - if (EGET(ehdr->e_ehsize) != sizeof(Elf ## CLASS ## _Ehdr)) \ - return err("unrecognized ELF header size."); \ - if (EGET(ehdr->e_phentsize) != sizeof(Elf ## CLASS ## _Phdr)) \ - return err("unrecognized program segment header size."); \ - \ - /* Finally, check the file type. \ - */ \ - if (EGET(ehdr->e_type) != ET_EXEC && EGET(ehdr->e_type) != ET_DYN) \ - return err("not an executable or shared-object library."); \ - \ - return TRUE; \ -} \ - \ -/* readphdrtable() loads the program segment header table into memory. \ - */ \ -static int readphdrtable ## CLASS (int fd, Elf ## CLASS ## _Ehdr const *ehdr, \ - Elf ## CLASS ## _Phdr **phdrs) \ -{ \ - size_t size; \ - \ - if (!EGET(ehdr->e_phoff) || !EGET(ehdr->e_phnum) \ -) return err("ELF file has no program header table."); \ - \ - size = EGET(ehdr->e_phnum) * sizeof **phdrs; \ - if (!(*phdrs = malloc(size))) \ - return err("Out of memory!"); \ - \ - errno = 0; \ - if (read(fd, *phdrs, size) != (ssize_t)size) \ - return ferr("missing or incomplete program segment header table."); \ - \ - return TRUE; \ -} \ - \ -/* getmemorysize() determines the offset of the last byte of the file \ - * that is referenced by an entry in the program segment header table. \ - * (Anything in the file after that point is not used when the program \ - * is executing, and thus can be safely discarded.) \ - */ \ -static int getmemorysize ## CLASS (Elf ## CLASS ## _Ehdr const *ehdr, \ - Elf ## CLASS ## _Phdr const *phdrs, \ - unsigned long *newsize) \ -{ \ - Elf ## CLASS ## _Phdr const *phdr; \ - unsigned long size, n; \ - int i; \ - \ - /* Start by setting the size to include the ELF header and the \ - * complete program segment header table. \ - */ \ - size = EGET(ehdr->e_phoff) + EGET(ehdr->e_phnum) * sizeof *phdrs; \ - if (size < sizeof *ehdr) \ - size = sizeof *ehdr; \ - \ - /* Then keep extending the size to include whatever data the \ - * program segment header table references. \ - */ \ - for (i = 0, phdr = phdrs ; i < EGET(ehdr->e_phnum) ; ++i, ++phdr) { \ - if (EGET(phdr->p_type) != PT_NULL) { \ - n = EGET(phdr->p_offset) + EGET(phdr->p_filesz); \ - if (n > size) \ - size = n; \ - } \ - } \ - \ - *newsize = size; \ - return TRUE; \ -} \ - \ -/* modifyheaders() removes references to the section header table if \ - * it was stripped, and reduces program header table entries that \ - * included truncated bytes at the end of the file. \ - */ \ -static int modifyheaders ## CLASS (Elf ## CLASS ## _Ehdr *ehdr, \ - Elf ## CLASS ## _Phdr *phdrs, \ - unsigned long newsize) \ -{ \ - Elf ## CLASS ## _Phdr *phdr; \ - int i; \ - \ - /* If the section header table is gone, then remove all references \ - * to it in the ELF header. \ - */ \ - if (EGET(ehdr->e_shoff) >= newsize) { \ - ESET(ehdr->e_shoff,0); \ - ESET(ehdr->e_shnum,0); \ - ESET(ehdr->e_shentsize,0); \ - ESET(ehdr->e_shstrndx,0); \ - } \ - \ - /* The program adjusts the file size of any segment that was \ - * truncated. The case of a segment being completely stripped out \ - * is handled separately. \ - */ \ - for (i = 0, phdr = phdrs ; i < EGET(ehdr->e_phnum) ; ++i, ++phdr) { \ - if (EGET(phdr->p_offset) >= newsize) { \ - ESET(phdr->p_offset,newsize); \ - ESET(phdr->p_filesz,0); \ - } else if (EGET(phdr->p_offset) + EGET(phdr->p_filesz) > newsize) { \ - newsize -= EGET(phdr->p_offset); \ - ESET(phdr->p_filesz, newsize); \ - } \ - } \ - \ - return TRUE; \ -} \ - \ -/* commitchanges() writes the new headers back to the original file \ - * and sets the file to its new size. \ - */ \ -static int commitchanges ## CLASS (int fd, Elf ## CLASS ## _Ehdr const *ehdr, \ - Elf ## CLASS ## _Phdr *phdrs, \ - unsigned long newsize) \ -{ \ - size_t n; \ - \ - /* Save the changes to the ELF header, if any. \ - */ \ - if (lseek(fd, 0, SEEK_SET)) \ - return ferr("could not rewind file"); \ - errno = 0; \ - if (write(fd, ehdr, sizeof *ehdr) != sizeof *ehdr) \ - return err("could not modify file"); \ - \ - /* Save the changes to the program segment header table, if any. \ - */ \ - if (lseek(fd, EGET(ehdr->e_phoff), SEEK_SET) == (off_t)-1) { \ - err("could not seek in file."); \ - goto warning; \ - } \ - n = EGET(ehdr->e_phnum) * sizeof *phdrs; \ - if (write(fd, phdrs, n) != (ssize_t)n) { \ - err("could not write to file"); \ - goto warning; \ - } \ - \ - /* Eleventh-hour sanity check: don't truncate before the end of \ - * the program segment header table. \ - */ \ - if (newsize < EGET(ehdr->e_phoff) + n) \ - newsize = EGET(ehdr->e_phoff) + n; \ - \ - /* Chop off the end of the file. \ - */ \ - if (ftruncate(fd, newsize)) { \ - err("could not resize file"); \ - goto warning; \ - } \ - \ - return TRUE; \ - \ - warning: \ - return err("ELF file may have been corrupted!"); \ -} - - -/* First elements of Elf32_Ehdr and Elf64_Ehdr are common. - */ -static int readelfheaderident(int fd, Elf32_Ehdr *ehdr) -{ - errno = 0; - if (read(fd, ehdr, EI_NIDENT) != EI_NIDENT) - return ferr("missing or incomplete ELF header."); - - /* Check the ELF signature. - */ - if (!(ehdr->e_ident[EI_MAG0] == ELFMAG0 && - ehdr->e_ident[EI_MAG1] == ELFMAG1 && - ehdr->e_ident[EI_MAG2] == ELFMAG2 && - ehdr->e_ident[EI_MAG3] == ELFMAG3)) - { - err("missing ELF signature."); - return -1; - } - - /* Compare the file's class and endianness with the program's. - */ -#if __BYTE_ORDER == __LITTLE_ENDIAN - if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) { - do_reverse_endian = 0; - } else if (ehdr->e_ident[EI_DATA] == ELFDATA2MSB) { -/* fprintf(stderr, "ELF file has different endianness.\n"); */ - do_reverse_endian = 1; - } -#elif __BYTE_ORDER == __BIG_ENDIAN - if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) { -/* fprintf(stderr, "ELF file has different endianness.\n"); */ - do_reverse_endian = 1; - } else if (ehdr->e_ident[EI_DATA] == ELFDATA2MSB) { - do_reverse_endian = 0; - } -#else -#error unkown endianness -#endif - else { - err("Unsupported endianness"); - return -1; - } - - /* Check the target architecture. - */ -/* if (EGET(ehdr->e_machine) != ELF_ARCH) { */ -/* /\* return err("ELF file created for different architecture."); *\/ */ -/* fprintf(stderr, "ELF file created for different architecture.\n"); */ -/* } */ - return ehdr->e_ident[EI_CLASS]; -} - - -HEADER_FUNCTIONS(32) - -HEADER_FUNCTIONS(64) - -/* truncatezeros() examines the bytes at the end of the file's - * size-to-be, and reduces the size to exclude any trailing zero - * bytes. - */ -static int truncatezeros(int fd, unsigned long *newsize) -{ - unsigned char contents[1024]; - unsigned long size, n; - - size = *newsize; - do { - n = sizeof contents; - if (n > size) - n = size; - if (lseek(fd, size - n, SEEK_SET) == (off_t)-1) - return ferr("cannot seek in file."); - if (read(fd, contents, n) != (ssize_t)n) - return ferr("cannot read file contents"); - while (n && !contents[--n]) - --size; - } while (size && !n); - - /* Sanity check. - */ - if (!size) - return err("ELF file is completely blank!"); - - *newsize = size; - return TRUE; -} - -/* main() loops over the cmdline arguments, leaving all the real work - * to the other functions. - */ -int main(int argc, char *argv[]) -{ - int fd; - union { - Elf32_Ehdr ehdr32; - Elf64_Ehdr ehdr64; - } e; - union { - Elf32_Phdr *phdrs32; - Elf64_Phdr *phdrs64; - } p; - unsigned long newsize; - char **arg; - int failures = 0; - - if (argc < 2 || argv[1][0] == '-') { - printf("Usage: sstrip FILE...\n" - "sstrip discards all nonessential bytes from an executable.\n\n" - "Version 2.0-X Copyright (C) 2000,2001 Brian Raiter.\n" - "Cross-devel hacks Copyright (C) 2004 Manuel Novoa III.\n" - "This program is free software, licensed under the GNU\n" - "General Public License. There is absolutely no warranty.\n"); - return EXIT_SUCCESS; - } - - progname = argv[0]; - - for (arg = argv + 1 ; *arg != NULL ; ++arg) { - filename = *arg; - - fd = open(*arg, O_RDWR); - if (fd < 0) { - ferr("can't open"); - ++failures; - continue; - } - - switch (readelfheaderident(fd, &e.ehdr32)) { - case ELFCLASS32: - if (!(readelfheader32(fd, &e.ehdr32) && - readphdrtable32(fd, &e.ehdr32, &p.phdrs32) && - getmemorysize32(&e.ehdr32, p.phdrs32, &newsize) && - truncatezeros(fd, &newsize) && - modifyheaders32(&e.ehdr32, p.phdrs32, newsize) && - commitchanges32(fd, &e.ehdr32, p.phdrs32, newsize))) - ++failures; - break; - case ELFCLASS64: - if (!(readelfheader64(fd, &e.ehdr64) && - readphdrtable64(fd, &e.ehdr64, &p.phdrs64) && - getmemorysize64(&e.ehdr64, p.phdrs64, &newsize) && - truncatezeros(fd, &newsize) && - modifyheaders64(&e.ehdr64, p.phdrs64, newsize) && - commitchanges64(fd, &e.ehdr64, p.phdrs64, newsize))) - ++failures; - break; - default: - ++failures; - break; - } - close(fd); - } - - return failures ? EXIT_FAILURE : EXIT_SUCCESS; -} |