summaryrefslogtreecommitdiffstats
path: root/testing/userspace-rcu/APKBUILD
diff options
context:
space:
mode:
authorFabian Affolter <fabian@affolter-engineering.ch>2012-06-26 11:29:00 +0000
committerBartłomiej Piotrowski <b@bpiotrowski.pl>2012-07-09 09:08:06 +0200
commitcaf64840785ad915f5b60847b82fff9160de21ae (patch)
tree3012864bbd3435e727c8e4d6e09c4a4898444ed2 /testing/userspace-rcu/APKBUILD
parent93207de5f934de9970ee1bd428fac260deeb67e7 (diff)
downloadaports-caf64840785ad915f5b60847b82fff9160de21ae.tar.bz2
aports-caf64840785ad915f5b60847b82fff9160de21ae.tar.xz
testing/userspace-rcu: new aport
liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This data synchronization library provides read-side access which scales linearly with the number of cores. It does so by allowing multiples copies of a given data structure to live at the same time, and by monitoring the data structure accesses to detect grace periods after which memory reclamation is possible. liburcu-cds provides efficient data structures based on RCU and lock-free algorithms. Those structures include hash tables, queues, stacks, and doubly- linked lists. http://lttng.org/urcu/
Diffstat (limited to 'testing/userspace-rcu/APKBUILD')
-rw-r--r--testing/userspace-rcu/APKBUILD47
1 files changed, 47 insertions, 0 deletions
diff --git a/testing/userspace-rcu/APKBUILD b/testing/userspace-rcu/APKBUILD
new file mode 100644
index 000000000..e9885f7bb
--- /dev/null
+++ b/testing/userspace-rcu/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+pkgname=userspace-rcu
+pkgver=0.7.3
+pkgrel=0
+pkgdesc="A userspace RCU (read-copy-update) library"
+url="http://lttng.org/urcu/"
+arch="all"
+license="LGPL2+"
+depends=""
+depends_dev=""
+makedepends="$depends_dev"
+install=""
+subpackages="$pkgname-dev $pkgname-doc"
+source="http://lttng.org/files/urcu/$pkgname-$pkgver.tar.bz2"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --localstatedir=/var \
+ || return 1
+ make || return 1
+# Tests are extremly time-consuming
+# make check || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="c40b726f13bff80982c1ffa1bc2db31d userspace-rcu-0.7.3.tar.bz2"