blob: e75374303635a750ec993a2bbacd7ee6e1abf45c [file] [log] [blame]
Patrick Williamsddad1a12017-02-23 20:36:32 -06001DESCRIPTION = "FFTW"
2SECTION = "libs"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05005
Patrick Williamsddad1a12017-02-23 20:36:32 -06006SRC_URI = "http://www.fftw.org/fftw-${PV}.tar.gz"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05007SRC_URI[md5sum] = "2edab8c06b24feeb3b82bbb3ebf3e7b3"
8SRC_URI[sha256sum] = "8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982"
9
Patrick Williamsddad1a12017-02-23 20:36:32 -060010inherit autotools pkgconfig
11
12# we had multiple recipes in the past
13PROVIDES = "fftwl fftwf"
14
15EXTRA_OECONF = "--disable-fortran --enable-shared --enable-threads"
16
17FFTW_NEON = "${@bb.utils.contains('TUNE_FEATURES', 'neon', '--enable-neon', '', d)}"
18FFTW_NEON_class-native = ""
19
20do_configure() {
21 # configure fftw
22 rm -rf ${WORKDIR}/build-fftw
23 mkdir -p ${B}
24 cd ${B}
25 # full (re)configure
26 autotools_do_configure
27 mv ${B} ${WORKDIR}/build-fftw
28
29 # configure fftwl
30 rm -rf ${WORKDIR}/build-fftwl
31 mkdir -p ${B}
32 cd ${B}
33 # configure only
34 oe_runconf --enable-long-double
35 mv ${B} ${WORKDIR}/build-fftwl
36
37 # configure fftwf
38 rm -rf ${WORKDIR}/build-fftwf
39 mkdir -p ${B}
40 cd ${B}
41 # configure only
42 oe_runconf --enable-single ${FFTW_NEON}
43 mv ${B} ${WORKDIR}/build-fftwf
44}
45
46do_compile() {
47 for lib in fftw fftwl fftwf; do
48 cd ${WORKDIR}/build-$lib
49 autotools_do_compile
50 done
51}
52
53do_install() {
54 for lib in fftw fftwl fftwf; do
55 cd ${WORKDIR}/build-$lib
56 autotools_do_install
57 done
58}
59
60
61PACKAGES =+ "libfftw libfftwl libfftwf"
62FILES_libfftw = "${libdir}/libfftw3.so.* ${libdir}/libfftw3_*.so.*"
63FILES_libfftwl = "${libdir}/libfftw3l.so.* ${libdir}/libfftw3l_*.so.*"
64FILES_libfftwf = "${libdir}/libfftw3f.so.* ${libdir}/libfftw3f_*.so.*"
65
66PACKAGES =+ "fftw-wisdom fftwl-wisdom fftwf-wisdom fftw-wisdom-to-conf"
67FILES_fftw-wisdom = "${bindir}/fftw-wisdom"
68FILES_fftwl-wisdom = "${bindir}/fftwl-wisdom"
69FILES_fftwf-wisdom = "${bindir}/fftwf-wisdom"
70FILES_fftw-wisdom-to-conf = "${bindir}/fftw-wisdom-to-conf"
71
72RDEPENDS_${PN}-dev = ""
73
Patrick Williamsb48b7b42016-08-17 15:04:38 -050074BBCLASSEXTEND = "native"