blob: 172379c34a64b8f872e071c3442ce9ad79b6ea63 (
plain)
1 # Description: C subroutine library for computing discrete Fourier transform.
2 # URL: http://www.fftw.org/
3 # Maintainer: Danny Rawlins, crux at romster dot me
4 # Depends on: gcc-fortran
5
6 name=fftw
7 version=3.3.9
8 release=1
9 source=(http://www.fftw.org/$name-$version.tar.gz)
10
11 build() {
12 cd $name-$version
13
14 local config="
15 F77=gfortran
16 --prefix=/usr
17 --enable-threads
18 --with-gnu-ld
19 --enable-shared
20 --enable-openmp"
21
22 # use upstream default CFLAGS while keeping our -march/-mtune
23 CFLAGS+=" -O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math"
24
25 # compiling single precision library
26 ./configure \
27 $config \
28 --enable-single \
29 --enable-sse \
30 --enable-avx
31
32 make
33 make DESTDIR=$PKG install
34 make clean
35
36 # compiling double precision library
37 ./configure \
38 $config \
39 --enable-sse2 \
40 --enable-avx
41
42 make
43 make DESTDIR=$PKG install
44 make clean
45
46 # compiling long double precision library
47 ./configure \
48 $config \
49 --enable-long-double
50
51 make
52 make DESTDIR=$PKG install
53 make clean
54
55 # compiling quad precision library
56 ./configure \
57 $config \
58 --enable-quad-precision
59
60 make
61 make DESTDIR=$PKG install
62
63 # clean up
64 rm -r $PKG/usr/share/info
65 }
|