+++ /dev/null
-#
-# Copyright (C) 2006-2012 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=uclibc++
-PKG_VERSION:=0.2.3
-PKG_RELEASE:=1
-
-PKG_SOURCE:=uClibc++-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=http://cxx.uclibc.org/src/
-PKG_MD5SUM:=fd71a433ce1de85885d658f47885ab30
-
-PKG_BUILD_DIR:=$(BUILD_DIR)/uClibc++-$(PKG_VERSION)
-PKG_BUILD_PARALLEL:=1
-
-PKG_INSTALL:=1
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/uclibcxx
- NAME:=uclibc++
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=C++ library for embedded systems
- URL:=http://cxx.uclibc.org/src/
-endef
-
-UCLIBC_TARGET_ARCH:=$(shell echo $(ARCH) | sed -e s'/-.*//' \
- -e 's/i.86/i386/' \
- -e 's/sparc.*/sparc/' \
- -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/' \
-)
-
-TARGET_CFLAGS += $(FPIC)
-
-MAKE_FLAGS:= \
- TOPDIR="$(PKG_BUILD_DIR)/" \
- $(TARGET_CONFIGURE_OPTS) \
- CPU_CFLAGS="$(TARGET_CFLAGS)" \
- CROSS="$(TARGET_CROSS)" \
- CP="$(CP)" \
- GEN_LIBS="-lc $(LIBGCC_S)" \
- check_as_needed=
-
-# check_as_needed overrides dependency on libgcc_s
-
-define Build/Configure
- if [ -f ./files/config.$(UCLIBC_TARGET_ARCH) ]; then \
- cp ./files/config.$(UCLIBC_TARGET_ARCH) $(PKG_BUILD_DIR)/.config; \
- else \
- cp ./files/config.default $(PKG_BUILD_DIR)/.config; \
- fi
-endef
-
-define Build/InstallDev
- $(INSTALL_DIR) $(2)/bin $(1)/usr/include/uClibc++ $(1)/usr/lib
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/bin/g++-uc $(2)/bin/
- $(CP) $(PKG_INSTALL_DIR)/include/* $(1)/usr/include/uClibc++/
- $(CP) $(PKG_INSTALL_DIR)/lib/libuClibc++*.{a,so}* $(1)/usr/lib/
- $(SED) 's|-I/include/|-I$(STAGING_DIR)/usr/include/uClibc++/|g' $(2)/bin/g++-uc
- $(SED) 's|-L/lib/|-L$(STAGING_DIR)/usr/lib/|g' $(2)/bin/g++-uc
-# add another wrapper which links against both uClibc++ and libstdc++
- $(INSTALL_BIN) $(2)/bin/g++-uc $(2)/bin/g++-uc+std
- $(SED) 's|^WRAPPER_INCLUDEDIR=.*||g' $(2)/bin/g++-uc+std
- $(SED) 's|-luClibc++|-Wl,-Bdynamic,-luClibc++,-Bstatic,-lstdc++,-Bdynamic|g' $(2)/bin/g++-uc+std
- $(SED) 's|-nostdinc++||g' $(2)/bin/g++-uc+std
-endef
-
-define Package/uclibcxx/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/lib/libuClibc++.so.* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/lib/libuClibc++-*.so $(1)/usr/lib/
-endef
-
-$(eval $(call BuildPackage,uclibcxx))
+++ /dev/null
-#
-# Automatically generated make config: don't edit
-#
-
-#
-# Target Features and Options
-#
-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
-
-#
-# String and I/O Stream Support
-#
-UCLIBCXX_HAS_WCHAR=y
-UCLIBCXX_IOSTREAM_BUFSIZE=32
-UCLIBCXX_HAS_LFS=y
-UCLIBCXX_SUPPORT_CDIR=y
-UCLIBCXX_SUPPORT_CIN=y
-UCLIBCXX_SUPPORT_COUT=y
-UCLIBCXX_SUPPORT_CERR=y
-UCLIBCXX_SUPPORT_CLOG=y
-UCLIBCXX_SUPPORT_WCIN=y
-UCLIBCXX_SUPPORT_WCOUT=y
-UCLIBCXX_SUPPORT_WCERR=y
-UCLIBCXX_SUPPORT_WCLOG=y
-
-#
-# STL and Code Expansion
-#
-UCLIBCXX_STL_BUFFER_SIZE=32
-UCLIBCXX_CODE_EXPANSION=y
-UCLIBCXX_EXPAND_CONSTRUCTORS_DESTRUCTORS=y
-UCLIBCXX_EXPAND_STRING_CHAR=y
-UCLIBCXX_EXPAND_VECTOR_BASIC=y
-UCLIBCXX_EXPAND_IOS_CHAR=y
-UCLIBCXX_EXPAND_STREAMBUF_CHAR=y
-UCLIBCXX_EXPAND_ISTREAM_CHAR=y
-UCLIBCXX_EXPAND_OSTREAM_CHAR=y
-UCLIBCXX_EXPAND_FSTREAM_CHAR=y
-UCLIBCXX_EXPAND_SSTREAM_CHAR=y
-
-#
-# Library Installation Options
-#
-UCLIBCXX_RUNTIME_PREFIX=""
-UCLIBCXX_RUNTIME_INCLUDE_SUBDIR="/include"
-UCLIBCXX_RUNTIME_LIB_SUBDIR="/lib"
-UCLIBCXX_RUNTIME_BIN_SUBDIR="/bin"
-UCLIBCXX_EXCEPTION_SUPPORT=y
-IMPORT_LIBSUP=y
-# IMPORT_LIBGCC_EH is not set
-BUILD_STATIC_LIB=y
-# BUILD_ONLY_STATIC_LIB is not set
-# DODEBUG is not set
+++ /dev/null
-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/sh' > $(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)
+++ /dev/null
-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)
+++ /dev/null
-diff -ruN uClibc++-0.2.2-old/src/abi/libgcc_eh/Makefile uClibc++-0.2.2-new/src/abi/libgcc_eh/Makefile
---- uClibc++-0.2.2-old/src/abi/libgcc_eh/Makefile 2007-06-04 00:51:13.000000000 +0200
-+++ uClibc++-0.2.2-new/src/abi/libgcc_eh/Makefile 2007-09-03 21:51:07.000000000 +0200
-@@ -16,7 +16,7 @@
- #
- #else
- # echo Binary
-- $(AR) x $(shell CC=$(CC) $(TOPDIR)/scripts/find_libgcc_eh.sh)
-+ $(AR) x $(shell CC="$(CC)" $(TOPDIR)/scripts/find_libgcc_eh.sh)
- #endif
- #endif
-
-diff -ruN uClibc++-0.2.2-old/src/abi/libsupc/Makefile uClibc++-0.2.2-new/src/abi/libsupc/Makefile
---- uClibc++-0.2.2-old/src/abi/libsupc/Makefile 2007-06-04 00:51:13.000000000 +0200
-+++ uClibc++-0.2.2-new/src/abi/libsupc/Makefile 2007-09-03 21:51:17.000000000 +0200
-@@ -14,7 +14,7 @@
- #
- #else
- # echo Binary
-- $(AR) x $(shell CC=$(CC) $(TOPDIR)/scripts/find_libsupc.sh)
-+ $(AR) x $(shell CC="$(CC)" $(TOPDIR)/scripts/find_libsupc.sh)
- $(RM) -f new_op*.o del_op*.o pure.o new_handler.o eh_alloc.o eh_globals.o
- #
- #endif
+++ /dev/null
-diff -ruN uClibc++-0.2.2-old/bin/Makefile uClibc++-0.2.2-new/bin/Makefile
---- uClibc++-0.2.2-old/bin/Makefile 2007-09-23 13:46:10.000000000 +0200
-+++ uClibc++-0.2.2-new/bin/Makefile 2007-09-23 13:47:03.000000000 +0200
-@@ -25,7 +25,7 @@
- echo 'while [ -n "$$1" ]' >> $(WRAPPER)
- echo 'do' >> $(WRAPPER)
- echo ' WRAPPER_OPTIONS="$$WRAPPER_OPTIONS $$1"' >> $(WRAPPER)
-- echo ' if [ "$$1" = "-c" -o "$$1" = "-E" -o "$$1" = "-S" ]' >> $(WRAPPER)
-+ echo ' if [ "$$1" = "-c" -o "$$1" = "-E" -o "$$1" = "-S" -o "$$1" = "-MF" ]' >> $(WRAPPER)
- echo ' then' >> $(WRAPPER)
- echo ' WRAPPER_INCLIB="N"' >> $(WRAPPER)
- echo ' fi' >> $(WRAPPER)
+++ /dev/null
-Index: uClibc++-0.2.2/include/typeinfo
-===================================================================
---- uClibc++-0.2.2.orig/include/typeinfo 2008-02-13 00:37:04.000000000 +0100
-+++ uClibc++-0.2.2/include/typeinfo 2008-02-13 00:37:34.000000000 +0100
-@@ -44,6 +44,7 @@
- class __class_type_info;
- } // namespace __cxxabiv1
-
-+#ifndef __GXX_MERGED_TYPEINFO_NAMES
- #if !__GXX_WEAK__
- // If weak symbols are not supported, typeinfo names are not merged.
- #define __GXX_MERGED_TYPEINFO_NAMES 0
-@@ -51,6 +52,7 @@
- // On platforms that support weak symbols, typeinfo names are merged.
- #define __GXX_MERGED_TYPEINFO_NAMES 1
- #endif
-+#endif
-
- namespace std
- {
-Index: uClibc++-0.2.2/include/unwind-cxx.h
-===================================================================
---- uClibc++-0.2.2.orig/include/unwind-cxx.h 2008-02-13 00:38:04.000000000 +0100
-+++ uClibc++-0.2.2/include/unwind-cxx.h 2008-02-13 00:40:32.000000000 +0100
-@@ -135,6 +135,7 @@
- \r
- // This is the exception class we report -- "GNUCC++\0".\r
- const _Unwind_Exception_Class __gxx_exception_class\r
-+#ifndef __ARM_EABI_UNWINDER__\r
- = ((((((((_Unwind_Exception_Class) 'G' \r
- << 8 | (_Unwind_Exception_Class) 'N')\r
- << 8 | (_Unwind_Exception_Class) 'U')\r
-@@ -143,6 +144,9 @@
- << 8 | (_Unwind_Exception_Class) '+')\r
- << 8 | (_Unwind_Exception_Class) '+')\r
- << 8 | (_Unwind_Exception_Class) '\0');\r
-+#else\r
-+= "GNUC++";\r
-+#endif\r
- \r
- // GNU C++ personality routine, Version 0.\r
- extern "C" _Unwind_Reason_Code __gxx_personality_v0\r
+++ /dev/null
---- a/include/associative_base
-+++ b/include/associative_base
-@@ -511,7 +511,7 @@
-
- pair<iterator, bool> insert(const value_type& x){
- pair<iterator, bool> retval;
-- iterator location = lower_bound(value_to_key(x));
-+ iterator location = lower_bound(this->value_to_key(x));
- retval.second = true;
- //Empty list or need to insert at end
- if(end() == location){
-@@ -520,7 +520,7 @@
- return retval;
- }
- //Something in the list
-- if(c(value_to_key(x), value_to_key(*location))){
-+ if(c(this->value_to_key(x), this->value_to_key(*location))){
- location = backing.insert(location.base_iterator(), x);
- retval.first = location;
- }else{
-@@ -604,7 +604,7 @@
- }
-
- iterator insert(const value_type& x){
-- iterator location = lower_bound(value_to_key(x));
-+ iterator location = lower_bound(this->value_to_key(x));
-
- if(location == begin()){
- backing.push_front(x);
---- a/include/fstream
-+++ b/include/fstream
-@@ -72,9 +72,9 @@
- pbuffer = new char_type[__UCLIBCXX_IOSTREAM_BUFSIZE__];
- gbuffer = new char_type[__UCLIBCXX_IOSTREAM_BUFSIZE__];
-
-- setp(pbuffer, pbuffer + __UCLIBCXX_IOSTREAM_BUFSIZE__);
-+ this->setp(pbuffer, pbuffer + __UCLIBCXX_IOSTREAM_BUFSIZE__);
- //Position get buffer so that there is no data available
-- setg(gbuffer, gbuffer + __UCLIBCXX_IOSTREAM_BUFSIZE__,
-+ this->setg(gbuffer, gbuffer + __UCLIBCXX_IOSTREAM_BUFSIZE__,
- gbuffer + __UCLIBCXX_IOSTREAM_BUFSIZE__);
- }
-
---- a/include/string
-+++ b/include/string
-@@ -426,7 +426,7 @@
- }
- _UCXXEXPORT size_type find (Ch c, size_type pos = 0) const{
- for(size_type i = pos; i < length(); ++i){
-- if(operator[](i) == c){
-+ if(this->operator[](i) == c){
- return i;
- }
- }
-@@ -456,7 +456,7 @@
- _UCXXEXPORT size_type find_first_of(const basic_string& str, size_type pos = 0) const{
- for(size_type i = pos; i < length(); ++i){
- for(size_type j = 0; j < str.length() ; ++j){
-- if( Tr::eq(str[j], operator[](i)) ){
-+ if( Tr::eq(str[j], this->operator[](i)) ){
- return i;
- }
- }
-@@ -472,7 +472,7 @@
- }
- _UCXXEXPORT size_type find_first_of(Ch c, size_type pos = 0) const{
- for(size_type i = pos; i< length(); ++i){
-- if( Tr::eq(operator[](i), c) ){
-+ if( Tr::eq(this->operator[](i), c) ){
- return i;
- }
- }
-@@ -485,7 +485,7 @@
- }
- for(size_type i = pos; i >0 ; --i){
- for(size_type j = 0 ; j < str.length(); ++j){
-- if( Tr::eq(operator[](i-1), str[j]) ){
-+ if( Tr::eq(this->operator[](i-1), str[j]) ){
- return i-1;
- }
- }
-@@ -503,7 +503,7 @@
- pos = length();
- }
- for(size_type i = pos; i >0 ; --i){
-- if( Tr::eq(operator[](i-1), c) ){
-+ if( Tr::eq(this->operator[](i-1), c) ){
- return i-1;
- }
- }
-@@ -515,7 +515,7 @@
- for(size_type i = pos; i < length(); ++i){
- foundCharacter = false;
- for(size_type j = 0; j < str.length() ; ++j){
-- if( Tr::eq(str[j], operator[](i)) ){
-+ if( Tr::eq(str[j], this->operator[](i)) ){
- foundCharacter = true;
- }
- }
-@@ -534,7 +534,7 @@
- }
- _UCXXEXPORT size_type find_first_not_of(Ch c, size_type pos = 0) const{
- for(size_type i = pos; i < length() ; ++i){
-- if(operator[](i) != c){
-+ if(this->operator[](i) != c){
- return i;
- }
- }
-@@ -546,7 +546,7 @@
- xpos = pos;
- }
-
-- while(xpos != npos && npos != str.find_first_of(at(xpos))){
-+ while(xpos != npos && npos != str.find_first_of(this->at(xpos))){
- --xpos;
- }
-
-@@ -564,7 +564,7 @@
- if(xpos > pos){
- xpos = pos;
- }
-- while(xpos != npos && Tr::eq(at(xpos), c)){
-+ while(xpos != npos && Tr::eq(this->at(xpos), c)){
- --xpos;
- }
- return xpos;