Add support for enabling use of libintl.
authorManuel Novoa III <mjn3@codepoet.org>
Wed, 3 Sep 2003 07:18:18 +0000 (07:18 -0000)
committerManuel Novoa III <mjn3@codepoet.org>
Wed, 3 Sep 2003 07:18:18 +0000 (07:18 -0000)
Add support for libstd++ in full locale mode, and remove the need for
  config hacks when using uClibc stub locale support.
TODO --
  gdb intl support is still broken.
  uClibc should auto-download the pregenerated locale data

40 files changed:
Makefile
make/bash.mk
make/bison.mk
make/coreutils.mk
make/diffutils.mk
make/dropbear_sshd.mk
make/ed.mk
make/file.mk
make/findutils.mk
make/flex.mk
make/gawk.mk
make/gcc_target.mk
make/gdb.mk
make/gdbserver.mk
make/grep.mk
make/gzip.mk
make/libglib12.mk
make/libtool.mk
make/links.mk
make/lrzsz.mk
make/make.mk
make/mke2fs.mk
make/ncurses.mk
make/newt.mk
make/ntp.mk
make/openssh.mk
make/patch.mk
make/pciutils.mk
make/pppd.mk
make/sed.mk
make/socat.mk
make/strace.mk
make/tar.mk
make/tn5250.mk
make/uclibc_toolchain.mk
make/uclibc_toolchain_2_95.mk
make/util-linux.mk
make/valgrind.mk
make/wtools.mk
sources/gcc-810-libstd++-locale.patch [new file with mode: 0644]

index 87dc0af62e4412b257d207264e317bc5b8cdb1ec..521debf4ff751955ab4397bd11bea343bbd57201 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -20,6 +20,7 @@
 
 
 TARGETS=
+DISABLE_NLS=
 #############################################################
 #
 # EDIT this stuff to suit your system and preferences
@@ -69,6 +70,9 @@ OPTIMIZE_FOR_CPU=$(ARCH)
 EXTRA_GCC_CONFIG_OPTIONS=
 #EXTRA_GCC_CONFIG_OPTIONS=--without-float
 
+# Uncomment the following if you don't want gettext support.
+DISABLE_NLS:=--disable-nls
+
 #############################################################
 #
 # The list of stuff to build for the target filesystem
index 23370612a55cb8fc9eaaaa357b9895776be07f88..21a31d060105b60545cb82feb5807f3092443039 100644 (file)
@@ -17,6 +17,9 @@ bash-source: $(DL_DIR)/$(BASH_SOURCE)
 
 $(BASH_DIR)/.unpacked: $(DL_DIR)/$(BASH_SOURCE)
        $(BASH_CAT) $(DL_DIR)/$(BASH_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+       # This is broken when -lintl is added to LIBS
+       perl -i -p -e 's,LIBS_FOR_BUILD =.*,LIBS_FOR_BUILD =,g' \
+               $(BASH_DIR)/builtins/Makefile.in
        touch $(BASH_DIR)/.unpacked
 
 $(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked
@@ -38,7 +41,7 @@ $(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --with-curses \
                --enable-alias \
        );
index 2803cdccb042d5bf95f1a46e74378d38ff3d6364..f1dbf46074b4f686a02a680cef0d32d62c6dfb2d 100644 (file)
@@ -22,6 +22,7 @@ $(BISON_DIR)/.unpacked: $(DL_DIR)/$(BISON_SOURCE)
 $(BISON_DIR)/.configured: $(BISON_DIR)/.unpacked
        (cd $(BISON_DIR); rm -rf config.cache; \
                $(TARGET_CONFIGURE_OPTS) \
+               gt_cv_func_gnugettext2_libintl=yes \
                ./configure \
                --target=$(GNU_TARGET_NAME) \
                --host=$(GNU_TARGET_NAME) \
@@ -36,7 +37,7 @@ $(BISON_DIR)/.configured: $(BISON_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(BISON_DIR)/.configured
 
index e3e7fa39aa3e425091759175e2454c75e130b426..0d1d723d978880075c12de6146ef8211c1c2afb9 100644 (file)
@@ -38,7 +38,7 @@ $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --disable-rpath \
                --disable-dependency-tracking \
        );
@@ -46,6 +46,9 @@ $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked
        # is not set when cross compiling
        perl -i -p -e 's,.*UTILS_OPEN_MAX.*,#define UTILS_OPEN_MAX 1019,g' \
                $(COREUTILS_DIR)/config.h
+       # This is undefined when crosscompiling...
+       perl -i -p -e 's,.*HAVE_PROC_UPTIME.*,#define HAVE_PROC_UPTIME 1,g' \
+               $(COREUTILS_DIR)/config.h
        touch  $(COREUTILS_DIR)/.configured
 
 $(COREUTILS_DIR)/$(COREUTILS_BINARY): $(COREUTILS_DIR)/.configured
index 2778d60607d6732c156331bcd52b6a5e58b1a66a..6ef49da6666002da29f2f76d53d0e84eb5612f6e 100644 (file)
@@ -36,7 +36,7 @@ $(DIFFUTILS_DIR)/.configured: $(DIFFUTILS_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(DIFFUTILS_DIR)/.configured
 
index 61a50fe90ce7908169f4040473d0c165012e7ec2..eb91235281aeea8c2fbada73847cec56ef87c288 100644 (file)
@@ -38,7 +38,7 @@ $(DROPBEAR_SSHD_DIR)/.configured: $(DROPBEAR_SSHD_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --with-shared \
        );
        touch  $(DROPBEAR_SSHD_DIR)/.configured
index f1108e34d29e05c096f0aa178f0164060060132c..c2754683c9d69b2a453f6bd240697f9856b4323a 100644 (file)
@@ -33,7 +33,7 @@ $(ED_DIR)/.configured: $(ED_DIR)/.unpacked
                --build=$(GNU_HOST_NAME) \
                --prefix=/usr \
                --exec-prefix=/usr \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(ED_DIR)/.configured
 
index 5556c5fb20b2e429d49456e79cee5fd831c0cbbf..eea380ae2ee1a46d9fd7b82c7423dfd01b1df8fb 100644 (file)
@@ -40,7 +40,7 @@ $(FILE_DIR)/.configured: $(FILE_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --enable-fsect-man5 \
        );
        touch  $(FILE_DIR)/.configured
index 5454e9ddb982758d00eefcef3e3d8c0bf13973fc..518b5771f9ee38866f27dba5b523c648eebb2764 100644 (file)
@@ -38,7 +38,7 @@ $(FINDUTILS_DIR)/.configured: $(FINDUTILS_DIR)/.unpacked
                --localstatedir=/var/lib \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(FINDUTILS_DIR)/.configured
 
index 0edd074d108fc12ef33b851c405b9aa7eb405edc..89855d76cc0e2265a95d08a2bac072bcf91ea6a9 100644 (file)
@@ -41,7 +41,7 @@ $(FLEX_DIR)/.configured: $(FLEX_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(FLEX_DIR)/.configured
 
index a01dcb11f7a3cfc3c6fa8648084ca0c63c13120c..da60945cfc88f8da455963693ba17798c8fa4805 100644 (file)
@@ -37,7 +37,7 @@ $(GAWK_DIR)/.configured: $(GAWK_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(GAWK_DIR)/.configured
 
index 34bda8e52a004d7dde69ddf7a91e50669400a469..3377b66459bc19cc3efe364de23bbe3346cd343f 100644 (file)
@@ -148,18 +148,18 @@ $(TARGET_DIR)/usr/bin/ld: $(BINUTILS_DIR2)/binutils/objdump
                GCC_FOR_TARGET=$(TARGET_CROSS)gcc \
                CXX_FOR_TARGET=$(TARGET_CROSS)g++ \
                RANLIB_FOR_TARGET=$(TARGET_CROSS)ranlib \
-               prefix=$(TARGET_DIR)/usr \
-               exec_prefix=$(TARGET_DIR)/usr \
-               bindir=$(TARGET_DIR)/usr/bin \
-               sbindir=$(TARGET_DIR)/usr/sbin \
-               libexecdir=$(TARGET_DIR)/usr/lib \
-               datadir=$(TARGET_DIR)/usr/share \
-               sysconfdir=$(TARGET_DIR)/etc \
-               localstatedir=$(TARGET_DIR)/var \
-               libdir=$(TARGET_DIR)/usr/lib \
-               infodir=$(TARGET_DIR)/usr/info \
-               mandir=$(TARGET_DIR)/usr/man \
-               includedir=$(TARGET_DIR)/usr/include \
+               prefix=/usr \
+               exec_prefix=/usr \
+               bindir=/usr/bin \
+               sbindir=/usr/sbin \
+               libexecdir=/usr/lib \
+               datadir=/usr/share \
+               sysconfdir=/etc \
+               localstatedir=/var \
+               libdir=/usr/lib \
+               infodir=/usr/info \
+               mandir=/usr/man \
+               includedir=/usr/include \
                DESTDIR=$(TARGET_DIR) install
        rm -rf $(TARGET_DIR)/info $(TARGET_DIR)/man $(TARGET_DIR)/share/doc \
                $(TARGET_DIR)/share/locale
@@ -275,18 +275,6 @@ $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.gcc_build_hacks
                $(GCC_DIR)/libstdc++-v3/src/Makefile.am $(GCC_DIR)/libstdc++-v3/src/Makefile.in;
        perl -i -p -e "s,3\.0\.0,9.9.0,g;" $(GCC_DIR)/libstdc++-v3/acinclude.m4 \
                $(GCC_DIR)/libstdc++-v3/aclocal.m4 $(GCC_DIR)/libstdc++-v3/configure;
-       #
-       # For now, we don't support locale-ified ctype (we will soon), 
-       # so bypass that problem for now...
-       #
-       perl -i -p -e "s,defined.*_GLIBCPP_USE_C99.*,1,g;" \
-               $(GCC_DIR)/libstdc++-v3/config/locale/generic/c_locale.cc;
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/bits/ctype_base.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/bits/
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/bits/ctype_inline.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/bits/
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/bits/ctype_noninline.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/bits/
        touch $(GCC_DIR)/.g++_build_hacks
 endif
 
@@ -340,7 +328,7 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks
                --with-local-prefix=/usr/local \
                --libdir=/usr/lib \
                --disable-shared $(MULTILIB) \
-               --enable-target-optspace --disable-nls \
+               --enable-target-optspace $(DISABLE_NLS) \
                --with-gnu-ld --disable-__cxa_atexit \
                --enable-languages=$(TARGET_LANGUAGES) \
                $(EXTRA_GCC_CONFIG_OPTIONS) \
@@ -376,18 +364,18 @@ $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
                GCC_FOR_TARGET=$(TARGET_CROSS)gcc \
                CXX_FOR_TARGET=$(TARGET_CROSS)g++ \
                RANLIB_FOR_TARGET=$(TARGET_CROSS)ranlib \
-               prefix=$(TARGET_DIR)/usr \
-               exec_prefix=$(TARGET_DIR)/usr \
-               bindir=$(TARGET_DIR)/usr/bin \
-               sbindir=$(TARGET_DIR)/usr/sbin \
-               libexecdir=$(TARGET_DIR)/usr/lib \
-               datadir=$(TARGET_DIR)/usr/share \
-               sysconfdir=$(TARGET_DIR)/etc \
-               localstatedir=$(TARGET_DIR)/var \
-               libdir=$(TARGET_DIR)/usr/lib \
-               infodir=$(TARGET_DIR)/usr/info \
-               mandir=$(TARGET_DIR)/usr/man \
-               includedir=$(TARGET_DIR)/usr/include \
+               prefix=/usr \
+               exec_prefix=/usr \
+               bindir=/usr/bin \
+               sbindir=/usr/sbin \
+               libexecdir=/usr/lib \
+               datadir=/usr/share \
+               sysconfdir=/etc \
+               localstatedir=/var \
+               libdir=/usr/lib \
+               infodir=/usr/info \
+               mandir=/usr/man \
+               includedir=/usr/include \
                DESTDIR=$(TARGET_DIR) install
        (cd $(TARGET_DIR)/usr/bin; ln -fs gcc cc)
        (cd $(TARGET_DIR)/lib; ln -fs /usr/bin/cpp)
@@ -401,7 +389,9 @@ $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
        -mv $(TARGET_DIR)/lib/*.a $(TARGET_DIR)/usr/lib/
        -mv $(TARGET_DIR)/lib/*.la $(TARGET_DIR)/usr/lib/
        rm -f $(TARGET_DIR)/lib/libstdc++.so
-       -(cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libstdc++.so.5.0.2 libstdc++.so)
+       -(cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libstdc++.so.5.0.5 libstdc++.so)
+       # A nasty hack to work around g++ adding -lgcc_eh to the link
+       -(cd $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/3.3.1/ ; ln -s libgcc.a libgcc_eh.a)
        -(cd $(TARGET_DIR)/bin; find -type f | xargs $(STRIP) 2>&1 > /dev/null)
        -(cd $(TARGET_DIR)/usr/bin; find -type f | xargs $(STRIP) 2>&1 > /dev/null)
        rm -f $(TARGET_DIR)/usr/lib/*.la*
index e696b65ec840a4c02a53dc991b2d6067b4a5095f..7bff3399ff48a7af305de7962d6cb4a844285581 100644 (file)
@@ -15,11 +15,15 @@ $(DL_DIR)/$(GDB_SOURCE):
 $(GDB_DIR)/.unpacked: $(DL_DIR)/$(GDB_SOURCE) $(GDB_PATCH)
        gunzip -c $(DL_DIR)/$(GDB_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        cat $(GDB_PATCH) | patch -p1 -d $(GDB_DIR)
+       #-perl -i -p -e "s,\@INTLLIBS\@,-lintl,g;" $(GDB_DIR)/gdb/Makefile.in
        touch  $(GDB_DIR)/.unpacked
 
 $(GDB_DIR)/.configured: $(GDB_DIR)/.unpacked
        (cd $(GDB_DIR); rm -rf config.cache; \
                $(TARGET_CONFIGURE_OPTS) \
+               ac_cv_type_uintptr_t=yes \
+               gt_cv_func_gettext_libintl=yes \
+               ac_cv_func_dcgettext=yes \
                ./configure \
                --target=$(GNU_TARGET_NAME) \
                --host=$(GNU_TARGET_NAME) \
@@ -34,7 +38,7 @@ $(GDB_DIR)/.configured: $(GDB_DIR)/.unpacked
                --mandir=/usr/man \
                --infodir=/usr/info \
                --includedir=$(STAGING_DIR)/include \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --without-uiout --disable-gdbmi \
                --disable-tui --disable-gdbtk --without-x \
                --disable-sim --enable-gdbserver \
index 103184cefcbbfd0356a425ac621a4c1cf42d074a..1ab44a236789b9432b9b43d3fffbc527a9aef5f2 100644 (file)
@@ -27,7 +27,7 @@ $(GDB_WDIR)/.configured: $(GDB_DIR)/.unpacked
                --mandir=/usr/man \
                --infodir=/usr/info \
                --includedir=$(STAGING_DIR)/include \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --without-uiout --disable-gdbmi \
                --disable-tui --disable-gdbtk --without-x \
                --without-included-gettext \
index eadf0df4b5e796f23b7856a02016c12fd34cfa81..7c205833c4811e9e2fc62017f01222908f19e9f4 100644 (file)
@@ -36,7 +36,7 @@ $(GNUGREP_DIR)/.configured: $(GNUGREP_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --disable-perl-regexp \
                --without-included-regex \
        );
index b1aba9a2f048b87147e597a5140d12226885e6d9..8098dd9333e7fd51b68d3123107262dc67888455 100644 (file)
@@ -40,7 +40,7 @@ $(GZIP_DIR)/.configured: $(GZIP_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                $(GZIP_LARGEFILE) \
        );
        touch  $(GZIP_DIR)/.configured
index fee7f3b288aec73d48ce99e42df248665af05dc1..75bb38e7afb53b798a29dd1730c96f03a7c9d651 100644 (file)
@@ -35,7 +35,7 @@ $(LIBGLIB12_DIR)/.configured: $(LIBGLIB12_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --enable-shared \
        );
        touch  $(LIBGLIB12_DIR)/.configured
index e924da9ea2afb8ce88fb1b84dfdc4e7a58f76151..308d4338c600e7bad6a035191dc104d547222614 100644 (file)
@@ -36,7 +36,7 @@ $(LIBTOOL_DIR)/.configured: $(LIBTOOL_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(LIBTOOL_DIR)/.configured
 
index a54e4b0af68bcfb7409336d150eb041ce7f207ae..732fd83396104fec259056823f20a45c5f71dd64 100644 (file)
@@ -33,7 +33,7 @@ $(LINKS_DIR)/.configured: $(LINKS_DIR)/.unpacked
                --localstatedir=/tmp \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(LINKS_DIR)/.configured
 
index 3fedaa90c034facc326424369d8999c05d07a8f8..493dbfc2f16b6b56ca90dddc012e110e87984c84 100644 (file)
@@ -51,7 +51,7 @@ $(LRZSZ_DIR)/.configured: $(LRZSZ_DIR)/.unpacked
                --localstatedir=/tmp \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --disable-timesync \
        );
        perl -i -p -e "s/-lnsl//;" $(LRZSZ_DIR)/src/Makefile
index fdf3dc1be087c8c9c5ff6c5e5be33eeaa78338b9..353d4a09c58d33426ecf60e2583b6427d4575584 100644 (file)
@@ -36,7 +36,7 @@ $(GNUMAKE_DIR)/.configured: $(GNUMAKE_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(GNUMAKE_DIR)/.configured
 
index f6b169717a99ecf9a644b65658e978f85f19c253..6168cfaed40faf9722cc7b44d0cb7fcc7b245241 100644 (file)
@@ -41,7 +41,7 @@ $(MKE2FS_DIR)/.configured: $(MKE2FS_DIR)/.unpacked
                --disable-elf-shlibs --disable-swapfs \
                --disable-debugfs --disable-imager \
                --disable-resizer --disable-fsck \
-               --without-catgets --disable-nls \
+               --without-catgets $(DISABLE_NLS) \
        );
        touch  $(MKE2FS_DIR)/.configured
 
index 45c009f9eef2c75be5f280e38cf7920cd802dca9..c6cd23c774321e7a617d72d48373c942f5baeb1b 100644 (file)
@@ -5,7 +5,7 @@
 #
 #############################################################
 # Copyright (C) 2002 by Ken Restivo <ken@246gt.com>
-# $Id: ncurses.mk,v 1.26 2003/08/22 12:49:54 andersen Exp $
+# $Id: ncurses.mk,v 1.27 2003/09/03 07:18:14 mjn3 Exp $
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU Library General Public License as
@@ -58,7 +58,7 @@ $(NCURSES_DIR)/.configured: $(NCURSES_DIR)/.dist
                --with-default-terminfo-dir=/usr/share/terminfo \
                --libdir=$(STAGING_DIR)/lib \
                --with-shared --without-cxx --without-cxx-binding \
-               --without-ada --without-progs --disable-nls \
+               --without-ada --without-progs $(DISABLE_NLS) \
                --without-profile --without-debug --disable-rpath \
                --enable-echo --enable-const --enable-overwrite \
        );
index 04c5c8b7c844febeb0561534c06f652a56ac6182..9812007d930c700c6ffdde981d9c249b182d86e5 100644 (file)
@@ -38,7 +38,7 @@ $(NEWT_DIR)/.configured: $(NEWT_DIR)/.source
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch $(NEWT_DIR)/.configured;
 
index d949d3066267b20e7354a8d4dce9fc07ce4dfefe..f691b66789159c9bf4669807f5ab1b9c2ae70225 100644 (file)
@@ -39,7 +39,7 @@ $(NTP_DIR)/.configured: $(NTP_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --with-shared \
        );
        touch  $(NTP_DIR)/.configured
index 91fc741a37cfeaf46ad3f12d704c1597f963f5e9..73a1b0dd6602233203a16481e4bc1b1b9dcc1a87 100644 (file)
@@ -35,11 +35,10 @@ $(OPENSSH_DIR)/.configured: $(OPENSSH_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
                --includedir=$(STAGING_DIR)/include \
                --disable-lastlog --disable-utmp \
                --disable-utmpx --disable-wtmp --disable-wtmpx \
-               --disable-nls --without-x \
+               --without-x $(DISABLE_NLS) \
        );
        touch  $(OPENSSH_DIR)/.configured
 
index 90ed1ad9d8f5b614737402f39af94702b04efee8..17fe5176f01fe72cc0cec3feda52f7b6696e0326 100644 (file)
@@ -36,7 +36,7 @@ $(GNUPATCH_DIR)/.configured: $(GNUPATCH_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(GNUPATCH_DIR)/.configured
 
index ede63c12afb5ba3a83e12940efdb60f87f2bbf48..f8608d8fcecdf1fe674b1e9587a0204dfc7ac2c9 100644 (file)
@@ -43,7 +43,7 @@ $(PCIUTILS_DIR)/.configured: $(PCIUTILS_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(PCIUTILS_DIR)/.configured
 
index 6622543a9f5f4ce902e3f327c6867a6d88f8e5ef..da7684070c7687494cbd653ffea33e70ccc8b2f7 100644 (file)
@@ -41,7 +41,7 @@ $(PPPD_DIR)/.configured: $(PPPD_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(PPPD_DIR)/.configured
 
index 3342fb40677006b76ddf602c1abee69d9bfcd868..f7b3a137b83c9114c387a8ba5c7bc5ecc13c781f 100644 (file)
@@ -36,7 +36,7 @@ $(SED_DIR)/.configured: $(SED_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(SED_DIR)/.configured
 
index 35bc6326f5f387f7a567765d5341762a575b0443..ed44803e209526718653115d1ce8662ad314ba55 100644 (file)
@@ -42,7 +42,7 @@ $(SOCAT_WORKDIR)/Makefile: $(SOCAT_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
         
 $(SOCAT_WORKDIR)/socat:        $(SOCAT_WORKDIR)/Makefile
index 50de74d93d5e4f3fe4d6d2a3950f05154a1ca6b9..36be73a1af27c2c132b6b8d01a986b3912e83733 100644 (file)
@@ -35,7 +35,7 @@ $(STRACE_DIR)/.configured: $(STRACE_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(STRACE_DIR)/.configured
 
index 9fc76031ee895ceb660c81ae1aeb78c64bf827d3..0e1ea04eb854552461342ec2d34acd78a1e19a00 100644 (file)
@@ -36,7 +36,7 @@ $(GNUTAR_DIR)/.configured: $(GNUTAR_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        touch  $(GNUTAR_DIR)/.configured
 
index d360b0ca313ae92ecf4e90c6d750b273f2197c3a..083630f6f9a981bc2dc38f8c527207dcc64119ff 100644 (file)
@@ -26,7 +26,7 @@ $(TN5250_DIR)/.configured: $(TN5250_DIR)/.dist
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --with-slang --without-x --without-ssl \
        );
        touch  $(TN5250_DIR)/.configured
index cdc5321a7799bed4751a29740482178bc991b473..a69e5e313313ebfc34ddae0b02a78e0e497e93ae 100644 (file)
@@ -271,7 +271,7 @@ $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks
                --infodir=$(STAGING_DIR)/info \
                --with-local-prefix=$(STAGING_DIR)/usr/local \
                --oldincludedir=$(STAGING_DIR)/include $(MULTILIB) \
-               --enable-target-optspace --disable-nls --with-gnu-ld \
+               --enable-target-optspace $(DISABLE_NLS) --with-gnu-ld \
                --disable-shared --enable-languages=c --disable-__cxa_atexit \
                $(EXTRA_GCC_CONFIG_OPTIONS) --program-prefix=$(ARCH)-uclibc-);
        touch $(GCC_BUILD_DIR1)/.configured
@@ -338,7 +338,10 @@ $(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.unpacked $(BUILD_DIR)/linux/.configure
        perl -i -p -e 's,^LD_BIN.*,LD_BIN=$(STAGING_DIR)/bin/$(ARCH)-uclibc-ld,g' \
                $(UCLIBC_DIR)/extra/gcc-uClibc/Makefile
        $(MAKE) -C $(UCLIBC_DIR) oldconfig
-       $(MAKE) -C $(UCLIBC_DIR) headers install_dev;
+       $(MAKE) -C $(UCLIBC_DIR) headers
+       zcat $(DL_DIR)/uClibc-locale-030818.tgz | tar -C $(UCLIBC_DIR)/extra/locale -xvf -
+       $(MAKE) -C $(UCLIBC_DIR)/extra/locale pregen 
+       $(MAKE) -C $(UCLIBC_DIR) install_dev;
        touch $(UCLIBC_DIR)/.configured
 
 $(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured
@@ -390,18 +393,6 @@ $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched
                $(GCC_DIR)/libstdc++-v3/src/Makefile.am $(GCC_DIR)/libstdc++-v3/src/Makefile.in;
        perl -i -p -e "s,3\.0\.0,9.9.0,g;" $(GCC_DIR)/libstdc++-v3/acinclude.m4 \
                $(GCC_DIR)/libstdc++-v3/aclocal.m4 $(GCC_DIR)/libstdc++-v3/configure;
-       #
-       # For now, we don't support locale-ified ctype (we will soon), 
-       # so bypass that problem for now...
-       #
-       perl -i -p -e "s,defined.*_GLIBCPP_USE_C99.*,1,g;" \
-               $(GCC_DIR)/libstdc++-v3/config/locale/generic/c_locale.cc;
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/ctype_base.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/ctype_inline.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/
-       cp $(GCC_DIR)/libstdc++-v3/config/os/generic/ctype_noninline.h \
-               $(GCC_DIR)/libstdc++-v3/config/os/gnu-linux/
        touch $(GCC_DIR)/.g++_build_hacks
 
 $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks
@@ -428,7 +419,7 @@ $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks
                --with-gxx-include-dir=$(STAGING_DIR)/include/c++ \
                --oldincludedir=$(STAGING_DIR)/include \
                --enable-shared $(MULTILIB) \
-               --enable-target-optspace --disable-nls \
+               --enable-target-optspace $(DISABLE_NLS) \
                --with-gnu-ld --disable-__cxa_atexit \
                --enable-languages=$(TARGET_LANGUAGES) \
                $(EXTRA_GCC_CONFIG_OPTIONS) \
index adf7be89d98054a40348790469da7246081a52ac..2f9c719efde7fb8b88090a792deaafb397012f0b 100644 (file)
@@ -295,7 +295,7 @@ $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks
                --infodir=$(STAGING_DIR)/info \
                --with-local-prefix=$(STAGING_DIR)/usr/local \
                --oldincludedir=$(STAGING_DIR)/include $(MULTILIB) \
-               --enable-target-optspace --disable-nls --with-gnu-ld \
+               --enable-target-optspace $(DISABLE_NLS) --with-gnu-ld \
                --disable-shared --enable-languages=c --disable-__cxa_atexit \
                $(EXTRA_GCC_CONFIG_OPTIONS) --program-prefix=$(ARCH)-uclibc-);
        touch $(GCC_BUILD_DIR1)/.configured
@@ -488,7 +488,7 @@ $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks
                --with-gxx-include-dir=$(STAGING_DIR)/include/c++ \
                --oldincludedir=$(STAGING_DIR)/include \
                --enable-shared $(MULTILIB) \
-               --enable-target-optspace --disable-nls \
+               --enable-target-optspace $(DISABLE_NLS) \
                --with-gnu-ld --disable-__cxa_atexit \
                --enable-languages=$(TARGET_LANGUAGES) \
                $(EXTRA_GCC_CONFIG_OPTIONS) \
index bca50e9d9d98e85e800f989991846c56dbafc380..90d854a0b138cac7fca045296061fe9109153f3e 100644 (file)
@@ -32,7 +32,7 @@ $(UTIL-LINUX_DIR)/.configured: $(UTIL-LINUX_DIR)/.unpacked
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
        );
        perl -pi -e "s,^INSTALLSUID=.*,INSTALLSUID=\\$$\(INSTALL\) -m \\$$\(BINMODE\)," \
                $(UTIL-LINUX_DIR)/MCONFIG
index bd92ec4e5de21aa2379f7d190f8d852e2c665977..75f57823189733c09d194811f24918fb3502cea7 100644 (file)
@@ -37,7 +37,7 @@ $(VALGRIND_DIR)/.configured: $(VALGRIND_DIR)/.patched
                --localstatedir=/var \
                --mandir=/usr/man \
                --infodir=/usr/info \
-               --disable-nls \
+               $(DISABLE_NLS) \
                --without-uiout --disable-valgrindmi \
                --disable-tui --disable-valgrindtk \
                --without-x --without-included-gettext \
index 3c1ca0bc359dccec6434a23c163bdbae9dac45ec..5e27721af0c5d5b7412fa7931c8079d49adfaf9e 100644 (file)
@@ -5,7 +5,7 @@
 #############################################################
 #
 WTOOLS_SOURCE_URL=http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux
-WTOOLS_SOURCE=wireless_tools.26.pre7.tar.gz
+WTOOLS_SOURCE=wireless_tools.26.tar.gz
 WTOOLS_BUILD_DIR=$(BUILD_DIR)/wireless_tools.26
 
 $(DL_DIR)/$(WTOOLS_SOURCE):
diff --git a/sources/gcc-810-libstd++-locale.patch b/sources/gcc-810-libstd++-locale.patch
new file mode 100644 (file)
index 0000000..ab476a6
--- /dev/null
@@ -0,0 +1,200 @@
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.cc
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.cc   2003-02-28 00:09:52.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.cc       2003-08-31 10:55:17.000000000 -0500
+@@ -195,12 +195,15 @@
+       "LC_TIME", 
+       "LC_COLLATE", 
+       "LC_MONETARY",
+-      "LC_MESSAGES", 
++      "LC_MESSAGES"
++#if _GLIBCPP_NUM_CATEGORIES != 0
++      , 
+       "LC_PAPER", 
+       "LC_NAME", 
+       "LC_ADDRESS",
+       "LC_TELEPHONE", 
+       "LC_MEASUREMENT", 
+       "LC_IDENTIFICATION" 
++#endif
+     };
+ }  // namespace std
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.h
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c_locale.h    2003-01-23 12:56:16.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c_locale.h        2003-08-31 10:55:17.000000000 -0500
+@@ -46,6 +46,10 @@
+ #define _GLIBCPP_C_LOCALE_GNU 1
+ #define _GLIBCPP_NUM_CATEGORIES 6
++#ifdef __UCLIBC__
++#undef _GLIBCPP_NUM_CATEGORIES
++#define _GLIBCPP_NUM_CATEGORIES 0
++#endif
+ #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
+ namespace __gnu_cxx
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c++locale_internal.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/c++locale_internal.h
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/c++locale_internal.h  2002-09-05 02:46:16.000000000 -0500
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/c++locale_internal.h      2003-08-31 10:55:17.000000000 -0500
+@@ -48,7 +48,9 @@
+ extern "C" __typeof(towlower_l) __towlower_l;
+ extern "C" __typeof(towupper_l) __towupper_l;
+ extern "C" __typeof(wcscoll_l) __wcscoll_l;
++#ifdef HAVE_WCSFTIME
+ extern "C" __typeof(wcsftime_l) __wcsftime_l;
++#endif
+ extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l;
+ extern "C" __typeof(wctype_l) __wctype_l;
+ extern "C" __typeof(newlocale) __newlocale;
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.cc
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.cc   2003-02-28 00:09:52.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.cc       2003-08-31 10:55:17.000000000 -0500
+@@ -36,6 +36,13 @@
+ #include <locale>
+ #include <bits/c++locale_internal.h>
++#ifdef __UCLIBC__
++extern "C" char *__dcgettext(const char *domainname,
++                           const char *msgid, int category);
++#undef gettext
++#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES)
++#endif
++
+ namespace std
+ {
+   // Specializations.
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.h gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.h
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/messages_members.h    2003-01-06 16:20:03.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/messages_members.h        2003-08-31 10:55:17.000000000 -0500
+@@ -33,6 +33,12 @@
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
++#ifdef __UCLIBC__
++extern "C" char *__textdomain(const char *domainname);
++extern "C" char *__bindtextdomain(const char *domainname,
++                                const char *dirname);
++#endif
++
+   // Non-virtual member functions.
+   template<typename _CharT>
+      messages<_CharT>::messages(size_t __refs)
+@@ -61,7 +67,11 @@
+     messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc, 
+                          const char* __dir) const
+     { 
++#ifdef __UCLIBC__
++      __bindtextdomain(__s.c_str(), __dir);
++#else
+       bindtextdomain(__s.c_str(), __dir);
++#endif
+       return this->do_open(__s, __loc); 
+     }
+@@ -83,7 +93,11 @@
+     { 
+       // No error checking is done, assume the catalog exists and can
+       // be used.
++#ifdef __UCLIBC__
++      __textdomain(__s.c_str());
++#else
+       textdomain(__s.c_str());
++#endif
+       return 0;
+     }
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/numeric_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/numeric_members.cc
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/numeric_members.cc    2003-02-28 00:09:52.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/numeric_members.cc        2003-08-31 10:55:18.000000000 -0500
+@@ -86,8 +86,13 @@
+       else
+       {
+         // Named locale.
++#ifdef __UCLIBC__
++        _M_decimal_point = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __cloc->decimal_point_wc }).__w);
++        _M_thousands_sep = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __cloc->thousands_sep_wc }).__w);
++#else
+         _M_decimal_point = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc)}).__w);
+         _M_thousands_sep = static_cast<wchar_t>(((union { const char *__s; unsigned int __w; }){ __s: __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc)}).__w);
++#endif
+         if (_M_thousands_sep == L'\0')
+           _M_grouping = "";
+         else
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/time_members.cc gcc-3.3.1/libstdc++-v3/config/locale/gnu/time_members.cc
+--- gcc-3.3.1-old/libstdc++-v3/config/locale/gnu/time_members.cc       2003-02-28 00:09:52.000000000 -0600
++++ gcc-3.3.1/libstdc++-v3/config/locale/gnu/time_members.cc   2003-08-31 10:55:18.000000000 -0500
+@@ -183,6 +183,7 @@
+       }
+     }
++#ifndef __UCLIBC__
+ #ifdef _GLIBCPP_USE_WCHAR_T
+   template<>
+     void
+@@ -328,4 +329,5 @@
+       }
+     }
+ #endif
++#endif
+ }
+diff -urN gcc-3.3.1-old/libstdc++-v3/config/os/gnu-linux/ctype_base.h gcc-3.3.1/libstdc++-v3/config/os/gnu-linux/ctype_base.h
+--- gcc-3.3.1-old/libstdc++-v3/config/os/gnu-linux/ctype_base.h        2002-09-09 15:26:41.000000000 -0500
++++ gcc-3.3.1/libstdc++-v3/config/os/gnu-linux/ctype_base.h    2003-08-31 10:55:18.000000000 -0500
+@@ -36,11 +36,18 @@
+   struct ctype_base
+   {
+     // Non-standard typedefs.
++#ifdef __UCLIBC__
++    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;   
++#else
+     typedef const int*                __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 unsigned short    mask;   
++#endif
++
+     static const mask upper           = _ISupper;
+     static const mask lower   = _ISlower;
+     static const mask alpha   = _ISalpha;
+diff -urN gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cstdlib.h gcc-3.3.1/libstdc++-v3/include/c_std/std_cstdlib.h
+--- gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cstdlib.h     2003-04-18 05:08:05.000000000 -0500
++++ gcc-3.3.1/libstdc++-v3/include/c_std/std_cstdlib.h 2003-08-31 10:55:18.000000000 -0500
+@@ -101,9 +101,11 @@
+   using ::labs;
+   using ::ldiv;
+   using ::malloc;
++#if _GLIBCPP_USE_WCHAR_T
+   using ::mblen;
+   using ::mbstowcs;
+   using ::mbtowc;
++#endif
+   using ::qsort;
+   using ::rand;
+   using ::realloc;
+@@ -112,8 +114,10 @@
+   using ::strtol;
+   using ::strtoul;
+   using ::system;
++#if _GLIBCPP_USE_WCHAR_T
+   using ::wcstombs;
+   using ::wctomb;
++#endif
+   inline long 
+   abs(long __i) { return labs(__i); }
+diff -urN gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.3.1/libstdc++-v3/include/c_std/std_cwchar.h
+--- gcc-3.3.1-old/libstdc++-v3/include/c_std/std_cwchar.h      2003-04-18 05:08:05.000000000 -0500
++++ gcc-3.3.1/libstdc++-v3/include/c_std/std_cwchar.h  2003-08-31 10:55:18.000000000 -0500
+@@ -165,7 +165,9 @@
+   using ::wcscoll;
+   using ::wcscpy;
+   using ::wcscspn;
++#ifdef HAVE_WCSFTIME
+   using ::wcsftime;
++#endif
+   using ::wcslen;
+   using ::wcsncat;
+   using ::wcsncmp;