update uclibc++ to latest upstream version (0.2.1), add portability fixes

git-svn-id: svn://svn.openwrt.org/openwrt/packages@5090 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nbd 2006-10-14 16:10:11 +00:00
parent 65b86e1221
commit 64c5bcb8ab
8 changed files with 74 additions and 241 deletions

View File

@ -9,13 +9,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=uclibc++
PKG_VERSION:=0.2.0
PKG_VERSION:=0.2.1
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/uClibc++-$(PKG_VERSION)
PKG_SOURCE:=uClibc++-$(PKG_VERSION).tbz2
PKG_SOURCE:=uClibc++-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://cxx.uclibc.org/src/
PKG_MD5SUM:=33e01302511c9a1987fb104f12d173e1
PKG_MD5SUM:=6e6032c49916b199ffe6a585552fd46b
PKG_CAT:=bzcat
include $(INCLUDE_DIR)/package.mk
@ -52,6 +52,7 @@ define Build/Compile
$(TARGET_CONFIGURE_OPTS) \
ARCH_CFLAGS="$(TARGET_CFLAGS)" \
CROSS="$(TARGET_CROSS)" \
CP="$(CP)" \
all
endef

View File

@ -1,41 +1,15 @@
#
# Automatically generated make config: don't edit
#
# TARGET_alpha is not set
TARGET_arm=y
# TARGET_i386 is not set
# TARGET_mips is not set
# TARGET_parisc is not set
# TARGET_powerpc is not set
# TARGET_x86_64 is not set
#
# Target Architecture Features and Options
# Target Features and Options
#
TARGET_ARCH="arm"
ARCH_SUPPORTS_LITTLE_ENDIAN=y
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_ARM_SA110 is not set
# CONFIG_ARM_SA1100 is not set
CONFIG_ARM_XSCALE=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
UCLIBCXX_HAS_FLOATS=y
# UCLIBCXX_HAS_LONG_DOUBLE is not set
# UCLIBCXX_HAS_TLS is not set
WARNINGS="-Wall"
BUILD_EXTRA_LIBRARIES=""
HAVE_DOT_CONFIG=y
#

View File

@ -1,44 +1,15 @@
#
# Automatically generated make config: don't edit
#
# TARGET_alpha is not set
# TARGET_arm is not set
TARGET_i386=y
# TARGET_mips is not set
# TARGET_parisc is not set
# TARGET_powerpc is not set
# TARGET_x86_64 is not set
#
# Target Architecture Features and Options
# Target Features and Options
#
TARGET_ARCH="i386"
ARCH_SUPPORTS_LITTLE_ENDIAN=y
CONFIG_GENERIC_386=y
# CONFIG_386 is not set
# CONFIG_486 is not set
# CONFIG_586 is not set
# CONFIG_586MMX is not set
# CONFIG_686 is not set
# CONFIG_PENTIUMIII is not set
# CONFIG_PENTIUM4 is not set
# CONFIG_K6 is not set
# CONFIG_K7 is not set
# CONFIG_CRUSOE is not set
# CONFIG_WINCHIPC6 is not set
# CONFIG_WINCHIP2 is not set
# CONFIG_CYRIXIII 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
UCLIBCXX_HAS_FLOATS=y
UCLIBCXX_HAS_LONG_DOUBLE=y
# UCLIBCXX_HAS_TLS is not set
WARNINGS="-Wall"
BUILD_EXTRA_LIBRARIES=""
HAVE_DOT_CONFIG=y
#

View File

@ -1,32 +1,15 @@
#
# Automatically generated make config: don't edit
#
# TARGET_alpha is not set
# TARGET_arm is not set
# TARGET_i386 is not set
TARGET_mips=y
# TARGET_parisc is not set
# TARGET_powerpc is not set
# TARGET_x86_64 is not set
#
# Target Architecture Features and Options
# Target Features and Options
#
TARGET_ARCH="mips"
ARCH_SUPPORTS_LITTLE_ENDIAN=y
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
UCLIBCXX_HAS_FLOATS=y
# UCLIBCXX_HAS_LONG_DOUBLE is not set
# UCLIBCXX_HAS_TLS is not set
WARNINGS="-Wall"
BUILD_EXTRA_LIBRARIES=""
HAVE_DOT_CONFIG=y
#

View File

@ -1,157 +0,0 @@
diff -Nur uClibc++-0.2.0/include/map uClibc++-0.2.0-patched/include/map
--- uClibc++-0.2.0/include/map 2006-02-28 17:35:16.000000000 -0800
+++ uClibc++-0.2.0-patched/include/map 2006-09-06 00:42:25.000000000 -0700
@@ -599,7 +599,7 @@
return retval;
}
- retval.first = lower_bound(x.first);
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x.first);
//No match - this should never happen
if(retval.first == end()){
@@ -616,7 +616,7 @@
typename deque<pair<Key, T>, allocator<pair<Key, T> > >::iterator q(&data, retval.first.element);
data.insert(q, x);
- retval.first = lower_bound(x.first); //Need to refind because insert can move data around
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x.first); //Need to refind because insert can move data around
retval.second = true;
return retval;
@@ -680,7 +680,7 @@
return end();
}
- iterator retval = lower_bound(x);
+ iterator retval = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if(retval == end()){
return retval;
@@ -702,7 +702,7 @@
return end();
}
- const_iterator retval = lower_bound(x);
+ const_iterator retval = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if(retval == end()){
return retval;
@@ -730,7 +730,7 @@
typename map<Key, T, Compare, Allocator>::iterator
map<Key, T, Compare, Allocator>::upper_bound(const key_type& x)
{
- typename map<Key, T, Compare, Allocator>::iterator i = lower_bound(x);
+ typename map<Key, T, Compare, Allocator>::iterator i = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if( i != end() && !c(x, i->first) ){
++i;
}
@@ -741,7 +741,7 @@
typename map<Key, T, Compare, Allocator>::const_iterator
map<Key, T, Compare, Allocator>::upper_bound(const key_type& x) const
{
- typename map<Key, T, Compare, Allocator>::const_iterator i = lower_bound(x);
+ typename map<Key, T, Compare, Allocator>::const_iterator i = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if(i != end() && !c(x, i->first)){
++i;
}
@@ -757,8 +757,8 @@
pair< typename map<Key, T, Compare, Allocator>::iterator,
typename map<Key, T, Compare, Allocator>::iterator
> retval;
- retval.first = lower_bound(x);
- retval.second = upper_bound(x);
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
+ retval.second = __base_map<Key, T, Compare, Allocator>::upper_bound(x);
return retval;
}
@@ -770,8 +770,8 @@
pair< typename map<Key, T, Compare, Allocator>::const_iterator,
typename map<Key, T, Compare, Allocator>::const_iterator
> retval;
- retval.first = lower_bound(x);
- retval.second = upper_bound(x);
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
+ retval.second = __base_map<Key, T, Compare, Allocator>::upper_bound(x);
return retval;
}
@@ -902,7 +902,7 @@
return end();
}
- retval = lower_bound(x.first);
+ retval = __base_map<Key, T, Compare, Allocator>::lower_bound(x.first);
//No match - this should never happen
if(retval == end()){
@@ -973,8 +973,8 @@
typename multimap<Key, T, Compare, Allocator>::size_type
multimap<Key, T, Compare, Allocator>::erase(const key_type& x)
{
- typename multimap<Key, T, Compare, Allocator>::iterator f = lower_bound(x);
- typename multimap<Key, T, Compare, Allocator>::iterator l = upper_bound(x);
+ typename multimap<Key, T, Compare, Allocator>::iterator f = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
+ typename multimap<Key, T, Compare, Allocator>::iterator l = __base_map<Key, T, Compare, Allocator>::upper_bound(x);
size_type t = l.element - f.element;
erase(f, l);
return t;
@@ -999,7 +999,7 @@
return end();
}
- iterator retval = lower_bound(x);
+ iterator retval = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if(retval == end()){
return retval;
@@ -1027,7 +1027,7 @@
if(data.size() == 0){
return end();
}
- const_iterator retval = lower_bound(x);
+ const_iterator retval = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
if(retval == end()){
return retval;
@@ -1065,7 +1065,7 @@
typename multimap<Key, T, Compare, Allocator>::iterator
multimap<Key, T, Compare, Allocator>::upper_bound(const key_type& x)
{
- typename multimap<Key, T, Compare, Allocator>::iterator i = lower_bound(x);
+ typename multimap<Key, T, Compare, Allocator>::iterator i = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
while(i != end() && !c(x, i->first)){
++i;
@@ -1077,7 +1077,7 @@
typename multimap<Key, T, Compare, Allocator>::const_iterator
multimap<Key, T, Compare, Allocator>::upper_bound(const key_type& x) const
{
- typename multimap<Key, T, Compare, Allocator>::const_iterator i = lower_bound(x);
+ typename multimap<Key, T, Compare, Allocator>::const_iterator i = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
while(i != end() && !c(x, i->first)){
++i;
@@ -1094,8 +1094,8 @@
pair< typename multimap<Key, T, Compare, Allocator>::iterator,
typename multimap<Key, T, Compare, Allocator>::iterator
> retval;
- retval.first = lower_bound(x);
- retval.second = upper_bound(x);
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
+ retval.second = __base_map<Key, T, Compare, Allocator>::upper_bound(x);
return retval;
}
@@ -1107,8 +1107,8 @@
pair< typename multimap<Key, T, Compare, Allocator>::const_iterator,
typename multimap<Key, T, Compare, Allocator>::const_iterator
> retval;
- retval.first = lower_bound(x);
- retval.second = upper_bound(x);
+ retval.first = __base_map<Key, T, Compare, Allocator>::lower_bound(x);
+ retval.second = __base_map<Key, T, Compare, Allocator>::upper_bound(x);
return retval;
}

View File

@ -0,0 +1,30 @@
diff -ur old/Makefile dev/Makefile
--- old/Makefile Sat Oct 14 17:49:55 2006
+++ dev/Makefile Sat Oct 14 17:50:18 2006
@@ -1,4 +1,3 @@
-MAKE = make
SUBDIRS = bin include src
# User defines:
@@ -43,10 +42,10 @@
#Menu configuration system
extra/config/conf:
- make -C extra/config conf
+ $(MAKE) -C extra/config conf
extra/config/mconf:
- make -C extra/config ncurses mconf
+ $(MAKE) -C extra/config ncurses mconf
menuconfig: extra/config/mconf
@./extra/config/mconf extra/Configs/Config.in
@@ -71,7 +70,7 @@
include/system_configuration.h: .config
@if [ ! -x ./extra/config/conf ] ; then \
- make -C extra/config conf; \
+ $(MAKE) -C extra/config conf; \
fi;
@./extra/config/conf -o extra/Configs/Config.in

View File

@ -0,0 +1,12 @@
diff -ur old/bin/Makefile dev/bin/Makefile
--- old/bin/Makefile Sat Oct 14 17:49:54 2006
+++ dev/bin/Makefile Sat Oct 14 17:57:33 2006
@@ -13,7 +13,7 @@
$(INSTALL) -m 755 $(WRAPPER) $(PREFIX)$(UCLIBCXX_RUNTIME_BINDIR)
$(WRAPPER):
- echo "#!/bin/bash" > $(WRAPPER)
+ echo "#!/usr/bin/env bash" > $(WRAPPER)
echo "" >> $(WRAPPER)
echo 'WRAPPER_INCLUDEDIR="$${WRAPPER_INCLUDEDIR:=-I$(UCLIBCXX_RUNTIME_INCLUDEDIR)}"' >> $(WRAPPER)
echo 'WRAPPER_LIBDIR="$${WRAPPER_LIBDIR:=-L$(UCLIBCXX_RUNTIME_LIBDIR)}"' >> $(WRAPPER)

View File

@ -0,0 +1,19 @@
diff -ur old/src/Makefile dev/src/Makefile
--- old/src/Makefile Sat Oct 14 17:49:54 2006
+++ dev/src/Makefile Sat Oct 14 18:02:30 2006
@@ -25,12 +25,14 @@
all: libgcc_eh libsupc $(EXOBJS) $(ALLBIN)
+CP = cp -fPR
+
install:
$(INSTALL) -d $(PREFIX)$(UCLIBCXX_RUNTIME_LIBDIR)
ifneq ($(BUILD_ONLY_STATIC_LIB),y)
$(INSTALL) -m 755 $(SHARED_FULLNAME) \
$(PREFIX)$(UCLIBCXX_RUNTIME_LIBDIR)
- cp -fa $(SHARED_MAJORNAME) $(LIBNAME).so $(PREFIX)$(UCLIBCXX_RUNTIME_LIBDIR)
+ $(CP) $(SHARED_MAJORNAME) $(LIBNAME).so $(PREFIX)$(UCLIBCXX_RUNTIME_LIBDIR)
endif
ifeq ($(BUILD_STATIC_LIB),y)
$(INSTALL) -m 644 $(LIBNAME).a $(PREFIX)$(UCLIBCXX_RUNTIME_LIBDIR)