aboutsummaryrefslogtreecommitdiffstats
path: root/main/fftw
diff options
context:
space:
mode:
authorCarlo Landmeter <clandmeter@gmail.com>2016-08-16 11:08:13 +0000
committerCarlo Landmeter <clandmeter@gmail.com>2016-08-16 11:14:57 +0000
commit4362ec84b5ad412a9eac1cc4ef5380c6b8aace17 (patch)
tree596c70bcab218bdff449a8084d4e28d03015f659 /main/fftw
parent61531336690dc2ab4d843ac2019e066b747ae3b2 (diff)
downloadaports-4362ec84b5ad412a9eac1cc4ef5380c6b8aace17.tar.bz2
aports-4362ec84b5ad412a9eac1cc4ef5380c6b8aace17.tar.xz
main/fftw: build fix aarch64
Diffstat (limited to 'main/fftw')
-rw-r--r--main/fftw/APKBUILD25
-rw-r--r--main/fftw/cycle.h.patch29
2 files changed, 44 insertions, 10 deletions
diff --git a/main/fftw/APKBUILD b/main/fftw/APKBUILD
index b38a43c06e..679d6eed66 100644
--- a/main/fftw/APKBUILD
+++ b/main/fftw/APKBUILD
@@ -12,16 +12,18 @@ install=
# order of the libs split functions are important because of lib naming
subpackages="$pkgname-dev $pkgname-doc $pkgname-single-libs:single
$pkgname-long-double-libs:long_double $pkgname-double-libs:double"
-source="http://www.fftw.org/$pkgname-$pkgver.tar.gz"
+source="http://www.fftw.org/$pkgname-$pkgver.tar.gz
+ cycle.h.patch"
arch="all"
_precision="single double long-double"
-_builddir="$srcdir"
+builddir="$srcdir/$pkgname-$pkgver"
prepare() {
- cd "$_builddir"
+ cd "$builddir"
+ default_prepare || return 1
for i in $_precision; do
- cp -r "$srcdir"/$pkgname-$pkgver $srcdir/$i
+ cp -r "$builddir" $srcdir/$i
done
}
@@ -36,12 +38,12 @@ build() {
case "$i--$CARCH" in
single--x86_64 | double--x86_64)
_cf="$_cf --enable-sse2 --enable-avx";;
- single--arm*)
+ single--arm* | single--aarch64)
_cf="$_cf --enable-neon";;
esac
msg "Building for $i precision ($_cf)"
- cd "$_builddir"/$i
+ cd "$srcdir"/$i
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -59,7 +61,7 @@ build() {
package() {
for i in $_precision; do
- cd "$_builddir"/$i
+ cd "$srcdir"/$i
make DESTDIR="$pkgdir" install || return 1
done
}
@@ -82,6 +84,9 @@ long_double() {
"$subpkgdir"/usr/lib/ || return 1
}
-md5sums="6cc08a3b9c7ee06fdd5b9eb02e06f569 fftw-3.3.5.tar.gz"
-sha256sums="8ecfe1b04732ec3f5b7d279fdb8efcad536d555f9d1e8fabd027037d45ea8bcf fftw-3.3.5.tar.gz"
-sha512sums="a81f02d884cfe4171fab479b0e5ec76eceb9c5da6d4eda1f89281b7e1efa2d8176c9ba87051595c402889eb32172d216ce40eb2bef41289c646f01002fb4ba8e fftw-3.3.5.tar.gz"
+md5sums="6cc08a3b9c7ee06fdd5b9eb02e06f569 fftw-3.3.5.tar.gz
+81537a7e16451d3e66c025cbaba58973 cycle.h.patch"
+sha256sums="8ecfe1b04732ec3f5b7d279fdb8efcad536d555f9d1e8fabd027037d45ea8bcf fftw-3.3.5.tar.gz
+1f2e555ceda21146bf7fce408f1a9a12782c646df6d23f3e2202ec7342c4ad01 cycle.h.patch"
+sha512sums="a81f02d884cfe4171fab479b0e5ec76eceb9c5da6d4eda1f89281b7e1efa2d8176c9ba87051595c402889eb32172d216ce40eb2bef41289c646f01002fb4ba8e fftw-3.3.5.tar.gz
+d71ffb0aa658f7b22239491698426f4a97e657abc953020745f7581d2937a062a279eaa5980cd7f7fe2e8425a032eafc3d4c0cffdc79a83a3aef382c988d739a cycle.h.patch"
diff --git a/main/fftw/cycle.h.patch b/main/fftw/cycle.h.patch
new file mode 100644
index 0000000000..ff70cdb4d9
--- /dev/null
+++ b/main/fftw/cycle.h.patch
@@ -0,0 +1,29 @@
+--- ./kernel/cycle.h.orig
++++ ./kernel/cycle.h
+@@ -437,26 +437,6 @@
+ #define HAVE_TICK_COUNTER
+ #endif
+ /*----------------------------------------------------------------*/
+-/* SGI/Irix */
+-#if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_SGI_CYCLE) && !defined(HAVE_TICK_COUNTER)
+-typedef struct timespec ticks;
+-
+-static inline ticks getticks(void)
+-{
+- struct timespec t;
+- clock_gettime(CLOCK_SGI_CYCLE, &t);
+- return t;
+-}
+-
+-static inline double elapsed(ticks t1, ticks t0)
+-{
+- return ((double)t1.tv_sec - (double)t0.tv_sec) * 1.0E9 +
+- ((double)t1.tv_nsec - (double)t0.tv_nsec);
+-}
+-#define HAVE_TICK_COUNTER
+-#endif
+-
+-/*----------------------------------------------------------------*/
+ /* Cray UNICOS _rtc() intrinsic function */
+ #if defined(HAVE__RTC) && !defined(HAVE_TICK_COUNTER)
+ #ifdef HAVE_INTRINSICS_H