diff options
author | Andreas Müller <schnitzeltony@googlemail.com> | 2016-09-18 02:47:25 +0200 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2016-09-26 08:29:12 +0200 |
commit | 395cb2d90b0c6341f8884e436dafdc91b210e442 (patch) | |
tree | b821bcb80f7eb5c28a5e4769bb85105f47c0dcbe /meta-oe/recipes-support/fftw | |
parent | 1edf97a010bdb234aed0f763e4d2f374f4a65a6b (diff) | |
download | meta-openembedded-contrib-395cb2d90b0c6341f8884e436dafdc91b210e442.tar.gz |
fftw: build all configurations by one recipe
* avoids conflicts installing same files into sysroot
* for packages requiring a specific version of fftw: simply add fftw to DEPENDS
* no need for some distro decision - recipes depndong on fftw take what they
need
* each executable is packed into an own package to avoid dragging in all
libraries
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/fftw')
-rw-r--r-- | meta-oe/recipes-support/fftw/fftw.inc | 25 | ||||
-rw-r--r-- | meta-oe/recipes-support/fftw/fftw_3.3.4.bb | 62 | ||||
-rw-r--r-- | meta-oe/recipes-support/fftw/fftwf_3.3.4.bb | 11 | ||||
-rw-r--r-- | meta-oe/recipes-support/fftw/fftwl_3.3.4.bb | 9 |
4 files changed, 61 insertions, 46 deletions
diff --git a/meta-oe/recipes-support/fftw/fftw.inc b/meta-oe/recipes-support/fftw/fftw.inc deleted file mode 100644 index a0adf59be1..0000000000 --- a/meta-oe/recipes-support/fftw/fftw.inc +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "FFTW" -SECTION = "libs" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" - -PROVIDES = "virtual/fftw" - -RPROVIDES_${PN} += "libfftw3" - -SRC_URI = "http://www.fftw.org/fftw-${PV}.tar.gz" - -S = "${WORKDIR}/fftw-${PV}" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-fortran --enable-shared --enable-threads" - -do_configure_prepend() { - echo 'AM_PROG_AS' >> ${S}/configure.ac -} - -PACKAGES =+ "lib${BPN}" -FILES_lib${BPN} = "${libdir}/lib*.so.*" - -# rename binary in /bin and use u-a tpo choose between different precision implementations? diff --git a/meta-oe/recipes-support/fftw/fftw_3.3.4.bb b/meta-oe/recipes-support/fftw/fftw_3.3.4.bb index 990f01e2f7..cbcd1b915c 100644 --- a/meta-oe/recipes-support/fftw/fftw_3.3.4.bb +++ b/meta-oe/recipes-support/fftw/fftw_3.3.4.bb @@ -1,6 +1,66 @@ -require fftw.inc +DESCRIPTION = "FFTW" +SECTION = "libs" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" +SRC_URI = "http://www.fftw.org/fftw-${PV}.tar.gz" SRC_URI[md5sum] = "2edab8c06b24feeb3b82bbb3ebf3e7b3" SRC_URI[sha256sum] = "8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982" +inherit autotools pkgconfig + +# we had multiple recipes in the past +PROVIDES = "fftwl fftwf" + +EXTRA_OECONF = "--disable-fortran --enable-shared --enable-threads" + +do_configure() { + # configure fftw + mkdir -p ${B} + cd ${B} + # full (re)configure + autotools_do_configure + mv ${B} ${WORKDIR}/build-fftw + + # configure fftwl + mkdir -p ${B} + cd ${B} + # configure only + oe_runconf --enable-long-double + mv ${B} ${WORKDIR}/build-fftwl + + # configure fftwf + mkdir -p ${B} + cd ${B} + # configure only + oe_runconf --enable-single ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--enable-neon', '', d)} + mv ${B} ${WORKDIR}/build-fftwf +} + +do_compile() { + for lib in fftw fftwl fftwf; do + cd ${WORKDIR}/build-$lib + autotools_do_compile + done +} + +do_install() { + for lib in fftw fftwl fftwf; do + cd ${WORKDIR}/build-$lib + autotools_do_install + done +} + + +PACKAGES =+ "libfftw libfftwl libfftwf" +FILES_libfftw = "${libdir}/libfftw3.so.* ${libdir}/libfftw3_*.so.*" +FILES_libfftwl = "${libdir}/libfftw3l.so.* ${libdir}/libfftw3l_*.so.*" +FILES_libfftwf = "${libdir}/libfftw3f.so.* ${libdir}/libfftw3f_*.so.*" + +PACKAGES =+ "fftw-wisdom fftwl-wisdom fftwf-wisdom fftw-wisdom-to-conf" +FILES_fftw-wisdom = "${bindir}/fftw-wisdom" +FILES_fftwl-wisdom = "${bindir}/fftwl-wisdom" +FILES_fftwf-wisdom = "${bindir}/fftwf-wisdom" +FILES_fftw-wisdom-to-conf = "${bindir}/fftw-wisdom-to-conf" + BBCLASSEXTEND = "native" diff --git a/meta-oe/recipes-support/fftw/fftwf_3.3.4.bb b/meta-oe/recipes-support/fftw/fftwf_3.3.4.bb deleted file mode 100644 index 4a659867d5..0000000000 --- a/meta-oe/recipes-support/fftw/fftwf_3.3.4.bb +++ /dev/null @@ -1,11 +0,0 @@ -require fftw.inc - -# conflicts with fftw and fftwl -EXCLUDE_FROM_WORLD = "1" - -EXTRA_OECONF += "--enable-single \ - ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--enable-neon', '', d)} \ -" - -SRC_URI[md5sum] = "2edab8c06b24feeb3b82bbb3ebf3e7b3" -SRC_URI[sha256sum] = "8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982" diff --git a/meta-oe/recipes-support/fftw/fftwl_3.3.4.bb b/meta-oe/recipes-support/fftw/fftwl_3.3.4.bb deleted file mode 100644 index 432ff1241e..0000000000 --- a/meta-oe/recipes-support/fftw/fftwl_3.3.4.bb +++ /dev/null @@ -1,9 +0,0 @@ -require fftw.inc - -# conflicts with fftw and fftwf -EXCLUDE_FROM_WORLD = "1" - -EXTRA_OECONF += "--enable-long-double" - -SRC_URI[md5sum] = "2edab8c06b24feeb3b82bbb3ebf3e7b3" -SRC_URI[sha256sum] = "8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982" |