| Name |
fftw |
| Description |
Discrete Fourier transform (DFT) library |
| Version |
3.3.10-r6 |
| Package Base |
fftw |
| Homepage |
http://www.fftw.org/ |
| Maintainers |
['Magnus Sandin <magnus.sandin@valitron.se>'] |
| Contributors |
['Magnus Sandin <magnus.sandin@valitron.se>'] |
| Distro-repo |
https://gitlab.alpinelinux.org/alpine/aports/-/tree/3.22-stable/main/fftw |
| Sources |
['cycle.h.patch', 'http://www.fftw.org/fftw-$_pkgver.tar.gz'] |
| Dependencies |
['libc.musl-x86_64.so.1', 'libfftw3.so.3', 'libfftw3_threads.so.3', 'libfftw3f.so.3', 'libfftw3f_threads.so.3', 'libfftw3l.so.3', 'libfftw3l_threads.so.3'] |
| Optional-Dependencies |
[] |
| Build-Dependencies |
['texinfo'] |
| Provides |
['cmd:fftw-wisdom-to-conf=3.3.10-r6', 'cmd:fftw-wisdom=3.3.10-r6', 'cmd:fftwf-wisdom=3.3.10-r6', 'cmd:fftwl-wisdom=3.3.10-r6'] |
| Builddate |
13-11-2024 07:18:17 |
| Architecture |
x86_64 |
| Distro-Version |
v3.22 |
| Licenses |
['GPL-2.0-or-later'] |
| Hash |
Q1hFYbNzsu37cKctZOknPaAzQMyYo= |
# Contributor: Magnus Sandin <magnus.sandin@valitron.se>
# Maintainer: Magnus Sandin <magnus.sandin@valitron.se>
pkgname=fftw
pkgver=3.3.10
_pkgver=${pkgver//p/-pl}
pkgrel=6
pkgdesc="Discrete Fourier transform (DFT) library"
url="http://www.fftw.org/"
arch="all"
license="GPL-2.0-or-later"
makedepends="texinfo"
# 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/fftw-$_pkgver.tar.gz
cycle.h.patch
"
_precision="single double long-double"
# disable tests for arm due to bug with gcc >= 9
# see https://github.com/FFTW/fftw3/issues/213
case "$CARCH" in
armhf|armv7) options="$options !check";;
esac
prepare() {
default_prepare
update_config_sub
local i; for i in $_precision; do
cp -r "$builddir" $srcdir/$i
done
}
build() {
export CFLAGS="$CFLAGS -O2"
export CXXFLAGS="$CXXFLAGS -O2"
local cf
local i; for i in $_precision; do
case "$i" in
single) cf="--enable-single" ;;
double) cf="" ;;
long-double) cf="--enable-long-double" ;;
esac
case "$i--$CARCH" in
single--x86_64|double--x86_64) cf="$cf --enable-sse2 --enable-avx" ;;
single--x86|double--x86) cf="$cf --enable-sse2" ;;
single--arm*|single--aarch64) cf="$cf --enable-neon" ;;
esac
msg "Building for $i precision ($cf)"
cd "$srcdir"/$i
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--enable-shared \
--enable-threads \
$cf
make
done
}
check() {
local i; for i in $_precision; do
cd "$srcdir"/$i
make check
done
}
package() {
local i; for i in $_precision; do
cd "$srcdir"/$i
make DESTDIR="$pkgdir" install
done
}
single() {
amove usr/lib/libfftw3f*.so*
}
double() {
amove usr/lib/libfftw3*.so*
}
long_double() {
amove usr/lib/libfftw3l*.so*
}
sha512sums="
2d34b5ccac7b08740dbdacc6ebe451d8a34cf9d9bfec85a5e776e87adf94abfd803c222412d8e10fbaa4ed46f504aa87180396af1b108666cde4314a55610b40 fftw-3.3.10.tar.gz
7da269fc43dabd02ae6fad2ebad92b07e06825b6b7c6f8987fc6444f02e0d55080db4ba6e401760e071f5c33015faf8c710f643636cab7a79bdf1af5d434dbb4 cycle.h.patch
"