summaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-06-11 17:46:06 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-06-11 17:46:06 +0000
commit593359636551590886ed807c0222dd70a3a2746f (patch)
treef2c27b712f3ed09b85e9cc6f0d0bae8dec0f440d /testing
parent127468c5f8fbcc572babc6113a8029b2fac0a087 (diff)
downloadaports-593359636551590886ed807c0222dd70a3a2746f.tar.bz2
aports-593359636551590886ed807c0222dd70a3a2746f.tar.xz
testing/gc: new aport
A garbage collector for C and C++ http://www.hpl.hp.com/personal/Hans_Boehm/gc/
Diffstat (limited to 'testing')
-rw-r--r--testing/gc/APKBUILD38
-rw-r--r--testing/gc/uclibc-getcontext.patch11
2 files changed, 49 insertions, 0 deletions
diff --git a/testing/gc/APKBUILD b/testing/gc/APKBUILD
new file mode 100644
index 000000000..065fba140
--- /dev/null
+++ b/testing/gc/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=gc
+pkgver=7.1
+pkgrel=0
+pkgdesc="A garbage collector for C and C++"
+url="http://www.hpl.hp.com/personal/Hans_Boehm/gc/"
+license="GPL"
+depends=
+makedepends=
+subpackages="$pkgname-dev $pkgname-doc libgc++:libgccpp"
+source="http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-$pkgver.tar.gz
+ uclibc-getcontext.patch"
+
+prepare() {
+ cd "$srcdir"/$pkgname-$pkgver
+ patch -p1 -i "$srcdir"/uclibc-getcontext.patch || return 1
+}
+
+build() {
+ cd "$srcdir"/$pkgname-$pkgver
+ ./configure --prefix=/usr \
+ --datadir=/usr/share/doc/gc \
+ --enable-cplusplus || return 1
+ make || return 1
+}
+
+package() {
+ cd "$srcdir"/$pkgname-$pkgver
+ make DESTDIR="$pkgdir" install || return 1
+}
+
+libgccpp() {
+ install -d "$subpkgdir"/usr/lib
+ mv "$pkgdir"/usr/lib/libgccpp.* "$subpkgdir"/usr/lib/
+}
+
+md5sums="2ff9924c7249ef7f736ecfe6f08f3f9b gc-7.1.tar.gz
+bce75c75bf0cdb295ac0bf7ba0f6e267 uclibc-getcontext.patch"
diff --git a/testing/gc/uclibc-getcontext.patch b/testing/gc/uclibc-getcontext.patch
new file mode 100644
index 000000000..de48fc018
--- /dev/null
+++ b/testing/gc/uclibc-getcontext.patch
@@ -0,0 +1,11 @@
+--- ./mach_dep.c.orig
++++ ./mach_dep.c
+@@ -175,7 +175,7 @@
+ # if defined(HAVE_PUSH_REGS)
+ GC_push_regs();
+ # elif defined(UNIX_LIKE) && !defined(DARWIN) && !defined(ARM32) && \
+- !defined(HURD)
++ !defined(HURD) && !defined(__UCLIBC__)
+ /* Older versions of Darwin seem to lack getcontext(). */
+ /* ARM Linux often doesn't support a real getcontext(). */
+ ucontext_t ctxt;