summaryrefslogtreecommitdiffstats
path: root/main/uclibc++
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-07-23 18:24:11 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-07-23 18:24:11 +0000
commit2d2ddf507bf1ae2f4cc595b23b8e018398cbe8dd (patch)
treea63d3b3b1c89018b5419358eed5c2bb0acf1cd92 /main/uclibc++
parente374901731eb35599bd6735de4dd38560e3a79b8 (diff)
downloadaports-2d2ddf507bf1ae2f4cc595b23b8e018398cbe8dd.tar.bz2
aports-2d2ddf507bf1ae2f4cc595b23b8e018398cbe8dd.tar.xz
move core/* to main/
added maintainer to several packages as well
Diffstat (limited to 'main/uclibc++')
-rw-r--r--main/uclibc++/APKBUILD47
-rw-r--r--main/uclibc++/associative_base.patch13
-rw-r--r--main/uclibc++/uclibc++-gcc-4.3.patch73
-rw-r--r--main/uclibc++/uclibc++config54
4 files changed, 187 insertions, 0 deletions
diff --git a/main/uclibc++/APKBUILD b/main/uclibc++/APKBUILD
new file mode 100644
index 00000000..e6545e48
--- /dev/null
+++ b/main/uclibc++/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=uclibc++
+pkgver=0.2.2
+pkgrel=3
+pkgdesc="Embedded C++ library"
+url="http://cxx.uclibc.org/"
+license='GPL-2'
+depends=
+makedepends=
+subpackages="$pkgname-dev"
+source="http://cxx.uclibc.org/src/uClibc++-$pkgver.tar.bz2
+ associative_base.patch
+ uclibc++-gcc-4.3.patch
+ uclibc++config
+ "
+
+build() {
+ cd "$srcdir/uClibc++-$pkgver"
+ cp ../uclibc++config .config
+ make oldconfig
+
+ for i in ../*.patch; do
+ if ! patch -p1 < $i; then
+ error "failed to apply $i"
+ return 1
+ fi
+ done
+ sed -i -e 's:bin/bash:bin/sh:' bin/Makefile scripts/find_lib*
+ make || return 1
+ make DESTDIR="$pkgdir/" install
+}
+
+dev() {
+ depends="$pkgname g++"
+ mkdir -p "$subpkgdir"
+ # move everything to -dev package except *.so files
+ mv "$pkgdir"/* "$subpkgdir"/
+ mkdir -p "$pkgdir"/usr/lib/
+ mv "$subpkgdir"/usr/lib/*.so* \
+ "$pkgdir"/usr/lib/
+}
+
+
+md5sums="1ceef3209cca88be8f1bd9de99735954 uClibc++-0.2.2.tar.bz2
+5689baa3f3bf8488c0a5d27a690d30fa associative_base.patch
+4c7b499e4697225378acef25f6364e9b uclibc++-gcc-4.3.patch
+2f573c1e2a0c7a320ea4685cc3ce9e2a uclibc++config"
diff --git a/main/uclibc++/associative_base.patch b/main/uclibc++/associative_base.patch
new file mode 100644
index 00000000..3453c996
--- /dev/null
+++ b/main/uclibc++/associative_base.patch
@@ -0,0 +1,13 @@
+--- a/include/associative_base.orig 2008-03-18 08:46:20 +0000
++++ b/include/associative_base 2008-03-18 08:46:56 +0000
+@@ -221,9 +221,9 @@
+ bool operator!=(const __base_associative & x){
+ return !(x.backing == backing);
+ }
++ void swap(__base_associative & x);
+
+ protected:
+- void swap(__base_associative & x);
+
+ Compare c;
+ std::list<value_type> backing;
diff --git a/main/uclibc++/uclibc++-gcc-4.3.patch b/main/uclibc++/uclibc++-gcc-4.3.patch
new file mode 100644
index 00000000..37d45a5d
--- /dev/null
+++ b/main/uclibc++/uclibc++-gcc-4.3.patch
@@ -0,0 +1,73 @@
+diff -ru uClibc++-0.2.2.orig/include/associative_base uClibc++-0.2.2/include/associative_base
+--- uClibc++-0.2.2.orig/include/associative_base 2009-03-03 14:03:40.000000000 +0000
++++ uClibc++-0.2.2/include/associative_base 2009-03-03 14:03:52.000000000 +0000
+@@ -318,7 +318,7 @@
+ typedef std::list<ValueType> listtype;
+
+ typename listtype::iterator base_iter;
+- typedef _associative_citer<ValueType, Compare, Allocator> _associative_citer;
++ typedef _associative_citer<ValueType, Compare, Allocator> __associative_citer;
+
+
+ public:
+@@ -347,13 +347,13 @@
+ bool operator==(const _associative_iter & m) const{
+ return m.base_iter == base_iter;
+ }
+- bool operator==(const _associative_citer & m) const{
++ bool operator==(const __associative_citer & m) const{
+ return m.base_iter == base_iter;
+ }
+ bool operator!=(const _associative_iter & m) const{
+ return m.base_iter != base_iter;
+ }
+- bool operator!=(const _associative_citer & m) const{
++ bool operator!=(const __associative_citer & m) const{
+ return m.base_iter != base_iter;
+ }
+ _associative_iter & operator++(){
+@@ -378,8 +378,8 @@
+ --base_iter;
+ return temp;
+ }
+- operator _associative_citer() const{
+- return _associative_citer(base_iter);
++ operator __associative_citer() const{
++ return __associative_citer(base_iter);
+ }
+ typename listtype::iterator base_iterator(){
+ return base_iter;
+diff -ru uClibc++-0.2.2.orig/include/string uClibc++-0.2.2/include/string
+--- uClibc++-0.2.2.orig/include/string 2009-03-03 14:03:40.000000000 +0000
++++ uClibc++-0.2.2/include/string 2009-03-03 14:03:52.000000000 +0000
+@@ -1017,11 +1017,11 @@
+
+ template <> _UCXXEXPORT bool operator==(const string & lhs, const string & rhs);
+ template <> _UCXXEXPORT bool operator==(const char * lhs, const string & rhs);
+-template <> _UCXXEXPORT bool operator==(const string & rhs, const char * rhs);
++template <> _UCXXEXPORT bool operator==(const string & lhs, const char * rhs);
+
+ template <> _UCXXEXPORT bool operator!=(const string & lhs, const string & rhs);
+ template <> _UCXXEXPORT bool operator!=(const char * lhs, const string & rhs);
+-template <> _UCXXEXPORT bool operator!=(const string & rhs, const char * rhs);
++template <> _UCXXEXPORT bool operator!=(const string & lhs, const char * rhs);
+
+ template <> _UCXXEXPORT string operator+(const string & lhs, const char* rhs);
+ template <> _UCXXEXPORT string operator+(const char* lhs, const string & rhs);
+diff -ru uClibc++-0.2.2.orig/src/string.cpp uClibc++-0.2.2/src/string.cpp
+--- uClibc++-0.2.2.orig/src/string.cpp 2009-03-03 14:03:41.000000000 +0000
++++ uClibc++-0.2.2/src/string.cpp 2009-03-03 14:03:52.000000000 +0000
+@@ -76,11 +76,11 @@
+
+ template _UCXXEXPORT bool operator==(const string & lhs, const string & rhs);
+ template _UCXXEXPORT bool operator==(const char * lhs, const string & rhs);
+- template _UCXXEXPORT bool operator==(const string & rhs, const char * rhs);
++ template _UCXXEXPORT bool operator==(const string & lhs, const char * rhs);
+
+ template _UCXXEXPORT bool operator!=(const string & lhs, const string & rhs);
+ template _UCXXEXPORT bool operator!=(const char * lhs, const string & rhs);
+- template _UCXXEXPORT bool operator!=(const string & rhs, const char * rhs);
++ template _UCXXEXPORT bool operator!=(const string & lhs, const char * rhs);
+
+ template _UCXXEXPORT string operator+(const string & lhs, const char* rhs);
+ template _UCXXEXPORT string operator+(const char* lhs, const string & rhs);
diff --git a/main/uclibc++/uclibc++config b/main/uclibc++/uclibc++config
new file mode 100644
index 00000000..181bd4e7
--- /dev/null
+++ b/main/uclibc++/uclibc++config
@@ -0,0 +1,54 @@
+#
+# Automatically generated make config: don't edit
+#
+
+#
+# Target Features and Options
+#
+UCLIBCXX_HAS_FLOATS=y
+UCLIBCXX_HAS_LONG_DOUBLE=y
+# UCLIBCXX_HAS_TLS is not set
+WARNINGS="-Wall"
+BUILD_EXTRA_LIBRARIES=""
+HAVE_DOT_CONFIG=y
+
+#
+# String and I/O Stream Support
+#
+# UCLIBCXX_HAS_WCHAR is not set
+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 is not set
+
+#
+# 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="/usr"
+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=y
+BUILD_STATIC_LIB=y
+# BUILD_ONLY_STATIC_LIB is not set
+# DODEBUG is not set