aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support
diff options
context:
space:
mode:
authorAndreas Müller <schnitzeltony@googlemail.com>2016-09-18 02:47:25 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2016-09-26 08:29:12 +0200
commit395cb2d90b0c6341f8884e436dafdc91b210e442 (patch)
treeb821bcb80f7eb5c28a5e4769bb85105f47c0dcbe /meta-oe/recipes-support
parent1edf97a010bdb234aed0f763e4d2f374f4a65a6b (diff)
downloadmeta-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')
-rw-r--r--meta-oe/recipes-support/fftw/fftw.inc25
-rw-r--r--meta-oe/recipes-support/fftw/fftw_3.3.4.bb62
-rw-r--r--meta-oe/recipes-support/fftw/fftwf_3.3.4.bb11
-rw-r--r--meta-oe/recipes-support/fftw/fftwl_3.3.4.bb9
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"