diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2009-01-11 22:13:02 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2009-01-11 22:13:02 +0000 |
commit | d679bbf9ae0781ba7e2d9cf4039d27ab771671ae (patch) | |
tree | a5d7c252ed51e9ab03743c1cde26611a15ffdc9f /core/uclibc++ | |
parent | e3e22d61ae354b60dc9e22dacb816748e910d286 (diff) | |
download | aports-d679bbf9ae0781ba7e2d9cf4039d27ab771671ae.tar.bz2 aports-d679bbf9ae0781ba7e2d9cf4039d27ab771671ae.tar.xz |
core/uclibc++: new aport
Diffstat (limited to 'core/uclibc++')
-rw-r--r-- | core/uclibc++/APKBUILD | 39 | ||||
-rw-r--r-- | core/uclibc++/associative_base.patch | 13 | ||||
-rw-r--r-- | core/uclibc++/uclibc++.patch | 97 |
3 files changed, 149 insertions, 0 deletions
diff --git a/core/uclibc++/APKBUILD b/core/uclibc++/APKBUILD new file mode 100644 index 0000000000..7a40065764 --- /dev/null +++ b/core/uclibc++/APKBUILD @@ -0,0 +1,39 @@ +# This is an example APKBUILD file. Use this as a start to creating your own, +# and remove these comments. +# NOTE: Please fill out the license field for your package! If it is unknown, +# then please put 'unknown'. + +# Contributor: Your Name <youremail@domain.com> +pkgname=uclibc++ +pkgver=0.2.2 +pkgrel=0 +pkgdesc="Embedded C++ library" +url="http://cxx.uclibc.org/" +license='GPL-2' +depends="uclibc" +subpackages="$pkgname-dev" +source="http://cxx.uclibc.org/src/uClibc++-$pkgver.tar.bz2 + associative_base.patch + uclibc++.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 +} + +md5sums="" #generate with 'abuild checksum' +md5sums="1ceef3209cca88be8f1bd9de99735954 uClibc++-0.2.2.tar.bz2 +3f84b1d45b32585d7050be486e4b20fe uclibc++config" diff --git a/core/uclibc++/associative_base.patch b/core/uclibc++/associative_base.patch new file mode 100644 index 0000000000..3453c996a4 --- /dev/null +++ b/core/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/core/uclibc++/uclibc++.patch b/core/uclibc++/uclibc++.patch new file mode 100644 index 0000000000..402f25d5b7 --- /dev/null +++ b/core/uclibc++/uclibc++.patch @@ -0,0 +1,97 @@ +--- a/include/associative_base Sun Jun 3 22:51:12 2007 ++++ b/include/associative_base Sun Jan 11 21:50:05 2009 +@@ -74,7 +74,7 @@ + typedef typename std::reverse_iterator<const_iterator> const_reverse_iterator; + + +- explicit __base_associative(const Compare& comp, const Allocator& A, const key_type (*v_to_k)(const value_type)) ++ explicit __base_associative(const Compare& comp, const Allocator& A, key_type (*v_to_k)(const value_type)) + : c(comp), value_to_key(v_to_k) { } + protected: + __base_associative(const associative_type& x) +@@ -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; +@@ -498,7 +498,7 @@ + using base::operator==; + using base::operator!=; + +- explicit __single_associative(const Compare& comp, const Allocator& A, const key_type (*v_to_k)(const value_type)) ++ explicit __single_associative(const Compare& comp, const Allocator& A, key_type (*v_to_k)(const value_type)) + : base(comp, A, v_to_k) { } + + template <class InputIterator> __single_associative( +@@ -506,7 +506,7 @@ + InputIterator last, + const Compare& comp, + const Allocator& A, +- const key_type (*v_to_k)(const value_type) ++ key_type (*v_to_k)(const value_type) + ) : base(comp, A, v_to_k) { + insert(first, last); + } +--- a/include/string Sun Jun 3 22:51:12 2007 ++++ b/include/string Sun Jan 11 21:50:18 2009 +@@ -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); +--- a/src/string.cpp Sun Jun 3 22:51:13 2007 ++++ b/src/string.cpp Sun Jan 11 21:50:33 2009 +@@ -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); |