summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/numactl/APKBUILD47
-rw-r--r--user/numactl/musl.patch21
2 files changed, 68 insertions, 0 deletions
diff --git a/user/numactl/APKBUILD b/user/numactl/APKBUILD
new file mode 100644
index 000000000..a6122fcc5
--- /dev/null
+++ b/user/numactl/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Daniel Sabogal <dsabogalcc@gmail.com>
+# Maintainer: Dan Theisen <djt@hxx.in>
+pkgname=numactl
+pkgver=2.0.12
+pkgrel=0
+pkgdesc="Simple NUMA policy support"
+url="https://github.com/numactl/numactl"
+# ARM lacks the __NR_migrate_pages syscall
+arch="all !armhf !armv7"
+license="GPL-2.0+ AND LGPL-2.1"
+makedepends="autoconf automake libtool linux-headers"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-tools"
+source="$pkgname-$pkgver.tar.gz::https://github.com/numactl/$pkgname/archive/v$pkgver.tar.gz
+ musl.patch"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --mandir=/usr/share/man
+ make
+}
+
+check() {
+ make check VERBOSE=1 TESTS='test/distance test/nodemap test/tbitmap'
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # provided by linux man-pages
+ rm -r "$pkgdir"/usr/share/man/man2
+}
+
+tools() {
+ pkgdesc="NUMA policy control tools"
+
+ mkdir -p "$subpkgdir"/usr
+ mv "$pkgdir"/usr/bin "$subpkgdir"/usr
+}
+
+sha512sums="3814efd924d1c9152a30f6ae5b665afc20648226cd475d72b933c0ec4f30249af4e25110de17f144734b787ed765644dca09a657219806ab5c9c550abd45bf8e numactl-2.0.12.tar.gz
+c24affa5a8a8ea83d7f0ee384dc0629e17a5c4201357132f770f894ad4236772116d96d8389d54fb99095af40d1ccbffc3170b5fb9cc88cfca39179f50bee9c9 musl.patch"
diff --git a/user/numactl/musl.patch b/user/numactl/musl.patch
new file mode 100644
index 000000000..009233f63
--- /dev/null
+++ b/user/numactl/musl.patch
@@ -0,0 +1,21 @@
+--- numactl-2.0.11/syscall.c.orig
++++ numactl-2.0.11/syscall.c
+@@ -115,14 +115,16 @@
+
+ #endif
+
+-#if defined(__GLIBC__) && __GLIBC_PREREQ(2, 11)
++#if defined(__GLIBC__)
++# if __GLIBC_PREREQ(2,11)
+
+ /* glibc 2.11 seems to have working 6 argument sycall. Use the
+ glibc supplied syscall in this case.
+ The version cut-off is rather arbitary and could be probably
+ earlier. */
+
+-#define syscall6 syscall
++# define syscall6 syscall
++#endif
+ #elif defined(__x86_64__)
+ /* 6 argument calls on x86-64 are often buggy in both glibc and
+ asm/unistd.h. Add a working version here. */