From fee36ccf56088c3c8aa20576b8f7598f91deed51 Mon Sep 17 00:00:00 2001 From: Jakub Jirutka Date: Wed, 17 Aug 2016 15:25:12 +0200 Subject: community/openblas: move from testing --- ...0001-Use-strsignal-instead-of-sys_siglist.patch | 35 +++++++ community/openblas/APKBUILD | 104 +++++++++++++++++++++ ...0001-Use-strsignal-instead-of-sys_siglist.patch | 35 ------- testing/openblas/APKBUILD | 104 --------------------- 4 files changed, 139 insertions(+), 139 deletions(-) create mode 100644 community/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch create mode 100644 community/openblas/APKBUILD delete mode 100644 testing/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch delete mode 100644 testing/openblas/APKBUILD diff --git a/community/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch b/community/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch new file mode 100644 index 0000000000..6032fc0173 --- /dev/null +++ b/community/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch @@ -0,0 +1,35 @@ +From 518435f376fb7b1a1972ea44cd932f1314f34cbf Mon Sep 17 00:00:00 2001 +From: Isaac Dunham +Date: Sat, 26 Mar 2016 21:37:36 -0700 +Subject: [PATCH] Use strsignal() instead of sys_siglist[]. + +musl libc only implements strsignal(). +POSIX 2008 requires strsignal() but not sys_siglist[], and glibc, +the BSDs, Solaris, and OS X support both. +I'm not sure about the status on mingw; as far as I can tell, they +define strsignal(x) as sys_siglist[x]. + +Also use snprintf() because it's not strictly guaranteed that signal +descriptions be any particular length. +I'm not aware of any signal descriptions over 114 bytes long, so this +is mostly paranoia. +--- + utest/ctest.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/utest/ctest.h b/utest/ctest.h +index a62103f..1deea32 100644 +--- a/utest/ctest.h ++++ b/utest/ctest.h +@@ -637,7 +637,7 @@ static void *find_symbol(struct ctest *test, const char *fname) + static void sighandler(int signum) + { + char msg[128]; +- sprintf(msg, "[SIGNAL %d: %s]", signum, sys_siglist[signum]); ++ snprintf(msg, sizeof(msg), "[SIGNAL %d: %s]", signum, strsignal(signum)); + color_print(ANSI_BRED, msg); + fflush(stdout); + +-- +2.7.4 + diff --git a/community/openblas/APKBUILD b/community/openblas/APKBUILD new file mode 100644 index 0000000000..c5f7826abe --- /dev/null +++ b/community/openblas/APKBUILD @@ -0,0 +1,104 @@ +# Contributor: Isaac Dunham +# Contributor: Jakub Jirutka +# Maintainer: Isaac Dunham +pkgname=openblas +_pkgname=OpenBLAS +pkgver=0.2.18 +pkgrel=2 +pkgdesc="A fast BSD-licensed BLAS based on gotoBLAS2, with LAPACK" +url="http://www.openblas.net" +arch="all" +license="BSD" +depends="" +depends_dev="gfortran" +makedepends="$depends_dev perl linux-headers" +subpackages="$pkgname-dev $pkgname-doc" +source="$pkgname-$pkgver.tar.gz::http://github.com/xianyi/$_pkgname/archive/v$pkgver.tar.gz + 0001-Use-strsignal-instead-of-sys_siglist.patch + " +builddir="$srcdir/$_pkgname-$pkgver" +_builddir64="$builddir-64" + +# USE_OPENMP=0: see GCC bug 60035 +# NO_AFFINITY: don't expect to work on musl, also breaks R and not +# recommended for Julia +_flags="USE_OPENMP=0 + NO_LAPACK=0 + MAJOR_VERSION=3 + NO_AFFINITY=1 + " +case "$CARCH" in +x86_64 | aarch64) + subpackages="$subpackages $pkgname-ilp64" + _flags="$_flags NUM_THREADS=32" # match kernel's CONFIG_NR_CPUS + _ilp64=true +;; +*) + _flags="$_flags NUM_THREADS=8" # 32bit machines usually have less cores + _ilp64=false +;; +esac + +# DYNAMIC_ARCH is supported on x86* only, see https://github.com/xianyi/OpenBLAS/issues/709 +case "$CARCH" in +x86*) _flags="$_flags DYNAMIC_ARCH=1";; +*) _flags="$_flags DYNAMIC_ARCH=0";; +esac + +# Flags for ILP64 variant. +_flags64="$_flags + INTERFACE64=1 + SYMBOLSUFFIX=64_" + +prepare() { + default_prepare || return 1 + + cp -ar "$builddir" "$_builddir64" +} + +build() { + CFLAGS= make -C "$builddir" \ + $_flags CFLAGS="$CFLAGS" PREFIX=/usr || return 1 + + if $_ilp64; then + msg "Building with ILP64..." + CFLAGS= make -C "$_builddir64" \ + $_flags64 CFLAGS="$CFLAGS" PREFIX=/usr || return 1 + fi +} + +package() { + if $_ilp64; then + make -C "$_builddir64" $_flags64 \ + PREFIX="$pkgdir/usr" install || return 1 + fi + + cd "$builddir" + + make $_flags PREFIX="$pkgdir/usr" install || return 1 + + # Remove reference to $pkgdir. + sed -i "s|$pkgdir||" "$pkgdir"/usr/lib/cmake/$pkgname/OpenBLASConfig.cmake + + mkdir -p "$pkgdir"/usr/share/doc/$pkgname + install -m 0644 Changelog.txt TargetList.txt USAGE.md \ + "$pkgdir"/usr/share/doc/$pkgname/ || return 1 + + install -Dm 0644 LICENSE \ + "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +ilp64() { + pkgdesc="$pkgdesc (ILP64)" + arch="x86_64 aarch64" + + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/libopenblas64_* "$subpkgdir"/usr/lib/ +} + +md5sums="805e7f660877d588ea7e3792cda2ee65 openblas-0.2.18.tar.gz +ddce6ae8c2af85ebdd14e9150960d1c6 0001-Use-strsignal-instead-of-sys_siglist.patch" +sha256sums="7d9f8d4ea4a65ab68088f3bb557f03a7ac9cb5036ef2ba30546c3a28774a4112 openblas-0.2.18.tar.gz +4e662d5dd5d03e0067c856d3c359d4306a8fb1ad66c2a70a7cf851decf5fdea3 0001-Use-strsignal-instead-of-sys_siglist.patch" +sha512sums="224990959ead6247613519f52447c31968170349a0040e746862b948c851166499050f5db7cefc66f9c1695262457980ae8d0e49b14f3442267f2a43f5a14e47 openblas-0.2.18.tar.gz +d3dd7cad2c0bc5414642cf51a46bc57e681c4449bd829bf304c743c44c53f29d90ba0c43233bf5a7cce3e6b057d1c1cef27d0ccffecb50125993b34c913477c8 0001-Use-strsignal-instead-of-sys_siglist.patch" diff --git a/testing/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch b/testing/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch deleted file mode 100644 index 6032fc0173..0000000000 --- a/testing/openblas/0001-Use-strsignal-instead-of-sys_siglist.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 518435f376fb7b1a1972ea44cd932f1314f34cbf Mon Sep 17 00:00:00 2001 -From: Isaac Dunham -Date: Sat, 26 Mar 2016 21:37:36 -0700 -Subject: [PATCH] Use strsignal() instead of sys_siglist[]. - -musl libc only implements strsignal(). -POSIX 2008 requires strsignal() but not sys_siglist[], and glibc, -the BSDs, Solaris, and OS X support both. -I'm not sure about the status on mingw; as far as I can tell, they -define strsignal(x) as sys_siglist[x]. - -Also use snprintf() because it's not strictly guaranteed that signal -descriptions be any particular length. -I'm not aware of any signal descriptions over 114 bytes long, so this -is mostly paranoia. ---- - utest/ctest.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/utest/ctest.h b/utest/ctest.h -index a62103f..1deea32 100644 ---- a/utest/ctest.h -+++ b/utest/ctest.h -@@ -637,7 +637,7 @@ static void *find_symbol(struct ctest *test, const char *fname) - static void sighandler(int signum) - { - char msg[128]; -- sprintf(msg, "[SIGNAL %d: %s]", signum, sys_siglist[signum]); -+ snprintf(msg, sizeof(msg), "[SIGNAL %d: %s]", signum, strsignal(signum)); - color_print(ANSI_BRED, msg); - fflush(stdout); - --- -2.7.4 - diff --git a/testing/openblas/APKBUILD b/testing/openblas/APKBUILD deleted file mode 100644 index c5f7826abe..0000000000 --- a/testing/openblas/APKBUILD +++ /dev/null @@ -1,104 +0,0 @@ -# Contributor: Isaac Dunham -# Contributor: Jakub Jirutka -# Maintainer: Isaac Dunham -pkgname=openblas -_pkgname=OpenBLAS -pkgver=0.2.18 -pkgrel=2 -pkgdesc="A fast BSD-licensed BLAS based on gotoBLAS2, with LAPACK" -url="http://www.openblas.net" -arch="all" -license="BSD" -depends="" -depends_dev="gfortran" -makedepends="$depends_dev perl linux-headers" -subpackages="$pkgname-dev $pkgname-doc" -source="$pkgname-$pkgver.tar.gz::http://github.com/xianyi/$_pkgname/archive/v$pkgver.tar.gz - 0001-Use-strsignal-instead-of-sys_siglist.patch - " -builddir="$srcdir/$_pkgname-$pkgver" -_builddir64="$builddir-64" - -# USE_OPENMP=0: see GCC bug 60035 -# NO_AFFINITY: don't expect to work on musl, also breaks R and not -# recommended for Julia -_flags="USE_OPENMP=0 - NO_LAPACK=0 - MAJOR_VERSION=3 - NO_AFFINITY=1 - " -case "$CARCH" in -x86_64 | aarch64) - subpackages="$subpackages $pkgname-ilp64" - _flags="$_flags NUM_THREADS=32" # match kernel's CONFIG_NR_CPUS - _ilp64=true -;; -*) - _flags="$_flags NUM_THREADS=8" # 32bit machines usually have less cores - _ilp64=false -;; -esac - -# DYNAMIC_ARCH is supported on x86* only, see https://github.com/xianyi/OpenBLAS/issues/709 -case "$CARCH" in -x86*) _flags="$_flags DYNAMIC_ARCH=1";; -*) _flags="$_flags DYNAMIC_ARCH=0";; -esac - -# Flags for ILP64 variant. -_flags64="$_flags - INTERFACE64=1 - SYMBOLSUFFIX=64_" - -prepare() { - default_prepare || return 1 - - cp -ar "$builddir" "$_builddir64" -} - -build() { - CFLAGS= make -C "$builddir" \ - $_flags CFLAGS="$CFLAGS" PREFIX=/usr || return 1 - - if $_ilp64; then - msg "Building with ILP64..." - CFLAGS= make -C "$_builddir64" \ - $_flags64 CFLAGS="$CFLAGS" PREFIX=/usr || return 1 - fi -} - -package() { - if $_ilp64; then - make -C "$_builddir64" $_flags64 \ - PREFIX="$pkgdir/usr" install || return 1 - fi - - cd "$builddir" - - make $_flags PREFIX="$pkgdir/usr" install || return 1 - - # Remove reference to $pkgdir. - sed -i "s|$pkgdir||" "$pkgdir"/usr/lib/cmake/$pkgname/OpenBLASConfig.cmake - - mkdir -p "$pkgdir"/usr/share/doc/$pkgname - install -m 0644 Changelog.txt TargetList.txt USAGE.md \ - "$pkgdir"/usr/share/doc/$pkgname/ || return 1 - - install -Dm 0644 LICENSE \ - "$pkgdir"/usr/share/licenses/$pkgname/LICENSE -} - -ilp64() { - pkgdesc="$pkgdesc (ILP64)" - arch="x86_64 aarch64" - - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libopenblas64_* "$subpkgdir"/usr/lib/ -} - -md5sums="805e7f660877d588ea7e3792cda2ee65 openblas-0.2.18.tar.gz -ddce6ae8c2af85ebdd14e9150960d1c6 0001-Use-strsignal-instead-of-sys_siglist.patch" -sha256sums="7d9f8d4ea4a65ab68088f3bb557f03a7ac9cb5036ef2ba30546c3a28774a4112 openblas-0.2.18.tar.gz -4e662d5dd5d03e0067c856d3c359d4306a8fb1ad66c2a70a7cf851decf5fdea3 0001-Use-strsignal-instead-of-sys_siglist.patch" -sha512sums="224990959ead6247613519f52447c31968170349a0040e746862b948c851166499050f5db7cefc66f9c1695262457980ae8d0e49b14f3442267f2a43f5a14e47 openblas-0.2.18.tar.gz -d3dd7cad2c0bc5414642cf51a46bc57e681c4449bd829bf304c743c44c53f29d90ba0c43233bf5a7cce3e6b057d1c1cef27d0ccffecb50125993b34c913477c8 0001-Use-strsignal-instead-of-sys_siglist.patch" -- cgit v1.2.3