Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package
@ 2018-12-12  7:45 Gwenhael Goavec-Merou
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double " Gwenhael Goavec-Merou
                   ` (14 more replies)
  0 siblings, 15 replies; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

fftw's library name depends on the precision option. Consequently,
it's possible to install multiple flavor on the same target.

This patch breaks fftw single precision into a new package and:
- deprecates BR2_PACKAGE_FFTW_PRECISION_SINGLE, BR2_PACKAGE_FFTW_SINGLE must be
  used instead;
- suppress BR2_PACKAGE_FFTW_USE_SSE and BR2_PACKAGE_FFTW_USE_NEON since options
  are only available on single precision. Corresponding options are directly
  handled in fftw-single package;
- do fftw depends on fftw-single when this package is enabled.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
Changes v1 -> v2:
 * BR2_PACKAGE_FFTW_PRECISION_SINGLE -> BR2_PACKAGE_FFTW_SINGLE (Arnout)
 * old symbol deprecation (Arnout)
 * split big monolithic patch into a serie (Arnout)
 * add dependency between fftw and fftw-single (Yann)
---
 Config.in.legacy                          |  9 +++++++
 package/fftw/Config.in                    | 17 ++----------
 package/fftw/fftw-single/Config.in        |  5 ++++
 package/fftw/fftw-single/fftw-single.hash |  1 +
 package/fftw/fftw-single/fftw-single.mk   | 33 +++++++++++++++++++++++
 package/fftw/fftw.mk                      | 12 ++++-----
 6 files changed, 56 insertions(+), 21 deletions(-)
 create mode 100644 package/fftw/fftw-single/Config.in
 create mode 120000 package/fftw/fftw-single/fftw-single.hash
 create mode 100644 package/fftw/fftw-single/fftw-single.mk

diff --git a/Config.in.legacy b/Config.in.legacy
index 37119d7e58..1eef04923e 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -145,6 +145,15 @@ endif
 ###############################################################################
 comment "Legacy options removed in 2019.02"
 
+config BR2_PACKAGE_FFTW_PRECISION_SINGLE
+	bool "fftw single precision option was replaced by package"
+	select BR2_LEGACY
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_SINGLE
+	help
+	  fftw single precision option was replaced by dedicated
+	  package.
+
 config BR2_PACKAGE_LUA_5_2
 	bool "Lua 5.2.x version removed"
 	select BR2_LEGACY
diff --git a/package/fftw/Config.in b/package/fftw/Config.in
index d51f8f3c51..97b1c8a6dc 100644
--- a/package/fftw/Config.in
+++ b/package/fftw/Config.in
@@ -12,30 +12,15 @@ config BR2_PACKAGE_FFTW
 
 if BR2_PACKAGE_FFTW
 
-config BR2_PACKAGE_FFTW_USE_SSE
-	bool
-
 config BR2_PACKAGE_FFTW_USE_SSE2
 	bool
 
-config BR2_PACKAGE_FFTW_USE_NEON
-	bool
-
 choice
 	prompt "fftw precision"
 	default BR2_PACKAGE_FFTW_PRECISION_DOUBLE
 	help
 	  Selects fftw precision
 
-config BR2_PACKAGE_FFTW_PRECISION_SINGLE
-	bool "single"
-	select BR2_PACKAGE_FFTW_USE_SSE if BR2_X86_CPU_HAS_SSE
-	select BR2_PACKAGE_FFTW_USE_SSE2 if BR2_X86_CPU_HAS_SSE2
-	select BR2_PACKAGE_FFTW_USE_NEON if BR2_ARM_CPU_HAS_NEON && !BR2_ARM_SOFT_FLOAT
-	help
-	  Compile fftw in single precision, i.e. use 'float' for
-	  floating point type.
-
 config BR2_PACKAGE_FFTW_PRECISION_DOUBLE
 	bool "double"
 	select BR2_PACKAGE_FFTW_USE_SSE2 if BR2_X86_CPU_HAS_SSE2
@@ -62,6 +47,8 @@ config BR2_PACKAGE_FFTW_PRECISION_QUAD
 
 endchoice
 
+source "package/fftw/fftw-single/Config.in"
+
 config BR2_PACKAGE_FFTW_FAST
 	bool "optimise for speed over accuracy"
 	help
diff --git a/package/fftw/fftw-single/Config.in b/package/fftw/fftw-single/Config.in
new file mode 100644
index 0000000000..ff1486871d
--- /dev/null
+++ b/package/fftw/fftw-single/Config.in
@@ -0,0 +1,5 @@
+config BR2_PACKAGE_FFTW_SINGLE
+	bool "fftw-single"
+	help
+	  Compile fftw in single precision, i.e. use 'float'
+	  for floating point type.
diff --git a/package/fftw/fftw-single/fftw-single.hash b/package/fftw/fftw-single/fftw-single.hash
new file mode 120000
index 0000000000..3ee7ecb3ba
--- /dev/null
+++ b/package/fftw/fftw-single/fftw-single.hash
@@ -0,0 +1 @@
+../fftw.hash
\ No newline at end of file
diff --git a/package/fftw/fftw-single/fftw-single.mk b/package/fftw/fftw-single/fftw-single.mk
new file mode 100644
index 0000000000..9adfe08f5e
--- /dev/null
+++ b/package/fftw/fftw-single/fftw-single.mk
@@ -0,0 +1,33 @@
+################################################################################
+#
+# fftw-single
+#
+################################################################################
+
+FFTW_SINGLE_VERSION = $(FFTW_VERSION)
+FFTW_SINGLE_SOURCE = fftw-$(FFTW_VERSION).tar.gz
+FFTW_SINGLE_SITE = $(FFTW_SITE)
+FFTW_SINGLE_INSTALL_STAGING = $(FFTW_INSTALL_STAGING)
+FFTW_SINGLE_LICENSE = $(FFTW_LICENSE)
+FFTW_SINGLE_LICENSE_FILES = $(FFTW_LICENSE_FILES)
+
+FFTW_SINGLE_CONF_ENV = $(FFTW_CONF_ENV)
+
+FFTW_SINGLE_CONF_OPTS = $(FFTW_CONF_OPTS)
+FFTW_SINGLE_CONF_OPTS += --enable-single
+
+FFTW_SINGLE_CFLAGS = $(FFTW_CFLAGS)
+
+# x86 optimisations
+FFTW_SINGLE_CONF_OPTS += $(if $(BR2_X86_CPU_HAS_SSE),--enable,--disable)-sse
+FFTW_SINGLE_CONF_OPTS += $(if $(BR2_X86_CPU_HAS_SSE2),--enable,--disable)-sse2
+
+# ARM optimisations
+ifeq ($(BR2_ARM_CPU_HAS_NEON):$(BR2_ARM_SOFT_FLOAT),y:)
+FFTW_SINGLE_CONF_OPTS += --enable-neon
+FFTW_SINGLE_CFLAGS += -mfpu=neon
+else
+FFTW_SINGLE_CONF_OPTS += --disable-neon
+endif
+
+$(eval $(autotools-package))
diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk
index b167a2f6f7..0c11c6a720 100644
--- a/package/fftw/fftw.mk
+++ b/package/fftw/fftw.mk
@@ -10,6 +10,10 @@ FFTW_INSTALL_STAGING = YES
 FFTW_LICENSE = GPL-2.0+
 FFTW_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_PACKAGE_FFTW_SINGLE),y)
+FFTW_DEPENDENCIES += fftw-single
+endif
+
 # fortran support only enables generation and installation of fortran sources
 ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y)
 FFTW_CONF_OPTS += --enable-fortran
@@ -18,7 +22,6 @@ else
 FFTW_CONF_OPTS += --disable-fortran
 endif
 
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_SINGLE),--enable,--disable)-single
 FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),--enable,--disable)-long-double
 FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_QUAD),--enable,--disable)-quad-precision
 
@@ -28,13 +31,8 @@ FFTW_CFLAGS += -O3 -ffast-math
 endif
 
 # x86 optimisations
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_USE_SSE),--enable,--disable)-sse
 FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_USE_SSE2),--enable,--disable)-sse2
 
-# ARM optimisations
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_USE_NEON),--enable,--disable)-neon
-FFTW_CFLAGS += $(if $(BR2_PACKAGE_FFTW_USE_NEON),-mfpu=neon)
-
 # Generic optimisations
 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
 FFTW_CONF_OPTS += --enable-threads
@@ -47,3 +45,5 @@ FFTW_CONF_OPTS += $(if $(BR2_GCC_ENABLE_OPENMP),--enable,--disable)-openmp
 FFTW_CONF_OPTS += CFLAGS="$(FFTW_CFLAGS)"
 
 $(eval $(autotools-package))
+
+include $(sort $(wildcard package/fftw/*/*.mk))
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double into a dedicated package
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:18   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad " Gwenhael Goavec-Merou
                   ` (13 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

fftw's library name depends on the precision option. Consequently,
it's possible to install multiple flavor on the same target.

This patch breaks fftw long double precision into a new package and:
- deprecates BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE,
  BR2_PACKAGE_FFTW_LONG_DOUBLE must be used instead;
- do fftw depends on fftw-long-double when this package is enabled.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
Changes v1 -> v2:
 * BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE -> BR2_PACKAGE_FFTW_LONG_DOUBLE (Arnout)
 * old symbol deprecation (Arnout)
 * split big monolithic patch into a serie (Arnout)
 * add dependency between fftw and fftw-long-double (Yann)
---
 Config.in.legacy                              |  9 ++++++++
 package/fftw/Config.in                        | 10 +--------
 package/fftw/fftw-long-double/Config.in       |  8 +++++++
 .../fftw-long-double/fftw-long-double.hash    |  1 +
 .../fftw/fftw-long-double/fftw-long-double.mk | 21 +++++++++++++++++++
 package/fftw/fftw.mk                          |  5 ++++-
 6 files changed, 44 insertions(+), 10 deletions(-)
 create mode 100644 package/fftw/fftw-long-double/Config.in
 create mode 120000 package/fftw/fftw-long-double/fftw-long-double.hash
 create mode 100644 package/fftw/fftw-long-double/fftw-long-double.mk

diff --git a/Config.in.legacy b/Config.in.legacy
index 1eef04923e..b376a88217 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -145,6 +145,15 @@ endif
 ###############################################################################
 comment "Legacy options removed in 2019.02"
 
+config BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE
+	bool "fftw long double precision option was replaced by package"
+	select BR2_LEGACY
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_LONG_DOUBLE
+	help
+	  fftw long double precision option was replaced by dedicated
+	  package.
+
 config BR2_PACKAGE_FFTW_PRECISION_SINGLE
 	bool "fftw single precision option was replaced by package"
 	select BR2_LEGACY
diff --git a/package/fftw/Config.in b/package/fftw/Config.in
index 97b1c8a6dc..5c87babed9 100644
--- a/package/fftw/Config.in
+++ b/package/fftw/Config.in
@@ -28,15 +28,6 @@ config BR2_PACKAGE_FFTW_PRECISION_DOUBLE
 	  Compile fftw in double precision (the default), i.e. use
 	  'double' for floating point type.
 
-config BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE
-	bool "long double"
-	# long-double precision require long-double trigonometric routines
-	depends on !(BR2_TOOLCHAIN_BUILDROOT_UCLIBC && \
-		(BR2_arm || BR2_mips || BR2_mipsel))
-	help
-	  Compile fftw in long double precision, i.e. use 'long double'
-	  for floating point type.
-
 config BR2_PACKAGE_FFTW_PRECISION_QUAD
 	bool "quad"
 	# quad-precision needs to have a gcc with libquadmath
@@ -47,6 +38,7 @@ config BR2_PACKAGE_FFTW_PRECISION_QUAD
 
 endchoice
 
+source "package/fftw/fftw-long-double/Config.in"
 source "package/fftw/fftw-single/Config.in"
 
 config BR2_PACKAGE_FFTW_FAST
diff --git a/package/fftw/fftw-long-double/Config.in b/package/fftw/fftw-long-double/Config.in
new file mode 100644
index 0000000000..3ee1762850
--- /dev/null
+++ b/package/fftw/fftw-long-double/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_FFTW_LONG_DOUBLE
+	bool "fftw-long-double"
+	# long-double precision require long-double trigonometric routines
+	depends on !(BR2_TOOLCHAIN_USES_UCLIBC && \
+		(BR2_arm || BR2_mips || BR2_mipsel))
+	help
+	  Compile fftw in long double precision, i.e. use 'long double'
+	  for floating point type.
diff --git a/package/fftw/fftw-long-double/fftw-long-double.hash b/package/fftw/fftw-long-double/fftw-long-double.hash
new file mode 120000
index 0000000000..3ee7ecb3ba
--- /dev/null
+++ b/package/fftw/fftw-long-double/fftw-long-double.hash
@@ -0,0 +1 @@
+../fftw.hash
\ No newline at end of file
diff --git a/package/fftw/fftw-long-double/fftw-long-double.mk b/package/fftw/fftw-long-double/fftw-long-double.mk
new file mode 100644
index 0000000000..dfbf198e85
--- /dev/null
+++ b/package/fftw/fftw-long-double/fftw-long-double.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# fftw-long-double
+#
+################################################################################
+
+FFTW_LONG_DOUBLE_VERSION = $(FFTW_VERSION)
+FFTW_LONG_DOUBLE_SOURCE = fftw-$(FFTW_VERSION).tar.gz
+FFTW_LONG_DOUBLE_SITE = $(FFTW_SITE)
+FFTW_LONG_DOUBLE_INSTALL_STAGING = $(FFTW_INSTALL_STAGING)
+FFTW_LONG_DOUBLE_LICENSE = $(FFTW_LICENSE)
+FFTW_LONG_DOUBLE_LICENSE_FILES = $(FFTW_LICENSE_FILES)
+
+FFTW_LONG_DOUBLE_CONF_ENV = $(FFTW_CONF_ENV)
+
+FFTW_LONG_DOUBLE_CONF_OPTS = $(FFTW_CONF_OPTS)
+FFTW_LONG_DOUBLE_CONF_OPTS += --enable-long-double
+
+FFTW_LONG_DOUBLE_CFLAGS = $(FFTW_CFLAGS)
+
+$(eval $(autotools-package))
diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk
index 0c11c6a720..4e30778a78 100644
--- a/package/fftw/fftw.mk
+++ b/package/fftw/fftw.mk
@@ -10,6 +10,10 @@ FFTW_INSTALL_STAGING = YES
 FFTW_LICENSE = GPL-2.0+
 FFTW_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_PACKAGE_FFTW_LONG_DOUBLE),y)
+FFTW_DEPENDENCIES += fftw-long-double
+endif
+
 ifeq ($(BR2_PACKAGE_FFTW_SINGLE),y)
 FFTW_DEPENDENCIES += fftw-single
 endif
@@ -22,7 +26,6 @@ else
 FFTW_CONF_OPTS += --disable-fortran
 endif
 
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),--enable,--disable)-long-double
 FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_QUAD),--enable,--disable)-quad-precision
 
 FFTW_CFLAGS = $(TARGET_CFLAGS)
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad into a dedicated package
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double " Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:21   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double " Gwenhael Goavec-Merou
                   ` (12 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

fftw's library name depends on the precision option. Consequently,
it's possible to install multiple flavor on the same target.

This patch breaks fftw quad precision into a new package and:
- deprecates BR2_PACKAGE_FFTW_PRECISION_QUAD, BR2_PACKAGE_FFTW_QUAD
  must be used instead;
- do fftw depends on fftw-long-quad when this package is enabled.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
Changes v1 -> v2:
 * BR2_PACKAGE_FFTW_PRECISION_QUAD -> BR2_PACKAGE_FFTW_QUAD (Arnout)
 * old symbol deprecation (Arnout)
 * split big monolithic patch into a serie (Arnout)
 * add dependency between fftw and fftw-long-double (Yann)
---
 Config.in.legacy                      |  9 +++++++++
 package/fftw/Config.in                |  9 +--------
 package/fftw/fftw-quad/Config.in      |  7 +++++++
 package/fftw/fftw-quad/fftw-quad.hash |  1 +
 package/fftw/fftw-quad/fftw-quad.mk   | 21 +++++++++++++++++++++
 package/fftw/fftw.mk                  |  6 ++++--
 6 files changed, 43 insertions(+), 10 deletions(-)
 create mode 100644 package/fftw/fftw-quad/Config.in
 create mode 120000 package/fftw/fftw-quad/fftw-quad.hash
 create mode 100644 package/fftw/fftw-quad/fftw-quad.mk

diff --git a/Config.in.legacy b/Config.in.legacy
index b376a88217..06a5803ff5 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -154,6 +154,15 @@ config BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE
 	  fftw long double precision option was replaced by dedicated
 	  package.
 
+config BR2_PACKAGE_FFTW_PRECISION_QUAD
+	bool "fftw quad precision option was replaced by package"
+	select BR2_LEGACY
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_QUAD
+	help
+	  fftw quad precision option was replaced by dedicated
+	  package.
+
 config BR2_PACKAGE_FFTW_PRECISION_SINGLE
 	bool "fftw single precision option was replaced by package"
 	select BR2_LEGACY
diff --git a/package/fftw/Config.in b/package/fftw/Config.in
index 5c87babed9..945fd5d173 100644
--- a/package/fftw/Config.in
+++ b/package/fftw/Config.in
@@ -28,18 +28,11 @@ config BR2_PACKAGE_FFTW_PRECISION_DOUBLE
 	  Compile fftw in double precision (the default), i.e. use
 	  'double' for floating point type.
 
-config BR2_PACKAGE_FFTW_PRECISION_QUAD
-	bool "quad"
-	# quad-precision needs to have a gcc with libquadmath
-	depends on (BR2_i386 || BR2_x86_64) && BR2_USE_WCHAR
-	help
-	  Compile fftw in quadruple precision, i.e. use '__float128' for
-	  floating point type.
-
 endchoice
 
 source "package/fftw/fftw-long-double/Config.in"
 source "package/fftw/fftw-single/Config.in"
+source "package/fftw/fftw-quad/Config.in"
 
 config BR2_PACKAGE_FFTW_FAST
 	bool "optimise for speed over accuracy"
diff --git a/package/fftw/fftw-quad/Config.in b/package/fftw/fftw-quad/Config.in
new file mode 100644
index 0000000000..bb724bc260
--- /dev/null
+++ b/package/fftw/fftw-quad/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_FFTW_QUAD
+	bool "fftw-quad"
+	# quad-precision needs to have a gcc with libquadmath
+	depends on (BR2_i386 || BR2_x86_64) && BR2_USE_WCHAR
+	help
+	  Compile fftw in quadruple precision, i.e. use '__float128' for
+	  floating point type.
diff --git a/package/fftw/fftw-quad/fftw-quad.hash b/package/fftw/fftw-quad/fftw-quad.hash
new file mode 120000
index 0000000000..3ee7ecb3ba
--- /dev/null
+++ b/package/fftw/fftw-quad/fftw-quad.hash
@@ -0,0 +1 @@
+../fftw.hash
\ No newline at end of file
diff --git a/package/fftw/fftw-quad/fftw-quad.mk b/package/fftw/fftw-quad/fftw-quad.mk
new file mode 100644
index 0000000000..4eb2a1a441
--- /dev/null
+++ b/package/fftw/fftw-quad/fftw-quad.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# fftw-quad
+#
+################################################################################
+
+FFTW_QUAD_VERSION = $(FFTW_VERSION)
+FFTW_QUAD_SOURCE = fftw-$(FFTW_VERSION).tar.gz
+FFTW_QUAD_SITE = $(FFTW_SITE)
+FFTW_QUAD_INSTALL_STAGING = $(FFTW_INSTALL_STAGING)
+FFTW_QUAD_LICENSE = $(FFTW_LICENSE)
+FFTW_QUAD_LICENSE_FILES = $(FFTW_LICENSE_FILES)
+
+FFTW_QUAD_CONF_ENV = $(FFTW_CONF_ENV)
+
+FFTW_QUAD_CONF_OPTS = $(FFTW_CONF_OPTS)
+FFTW_QUAD_CONF_OPTS += --enable-quad-precision
+
+FFTW_QUAD_CFLAGS = $(FFTW_CFLAGS)
+
+$(eval $(autotools-package))
diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk
index 4e30778a78..499e0ed1ad 100644
--- a/package/fftw/fftw.mk
+++ b/package/fftw/fftw.mk
@@ -14,6 +14,10 @@ ifeq ($(BR2_PACKAGE_FFTW_LONG_DOUBLE),y)
 FFTW_DEPENDENCIES += fftw-long-double
 endif
 
+ifeq ($(BR2_PACKAGE_FFTW_QUAD),y)
+FFTW_DEPENDENCIES += fftw-quad
+endif
+
 ifeq ($(BR2_PACKAGE_FFTW_SINGLE),y)
 FFTW_DEPENDENCIES += fftw-single
 endif
@@ -26,8 +30,6 @@ else
 FFTW_CONF_OPTS += --disable-fortran
 endif
 
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_QUAD),--enable,--disable)-quad-precision
-
 FFTW_CFLAGS = $(TARGET_CFLAGS)
 ifeq ($(BR2_PACKAGE_FFTW_FAST),y)
 FFTW_CFLAGS += -O3 -ffast-math
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double into a dedicated package
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double " Gwenhael Goavec-Merou
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad " Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:22   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single Gwenhael Goavec-Merou
                   ` (11 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

fftw's library name depends on the precision option. Consequently,
it's possible to install multiple flavor on the same target.

This patch breaks fftw double precision into a new package and:
- deprecates BR2_PACKAGE_FFTW_PRECISION_DOUBLE, BR2_PACKAGE_FFTW_DOUBLE must be
  used instead;
- suppress BR2_PACKAGE_FFTW_USE_SSE2 since option is only available on single and
  double precision. Corresponding options are directly
  handled in fftw-double package;
- do fftw depends on fftw-double when this package is enabled.
- select this option when fftw is enabled and no precision is enabled

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
Changes v1 -> v2:
 * BR2_PACKAGE_FFTW_PRECISION_DOUBLE -> BR2_PACKAGE_FFTW_DOUBLE (Arnout)
 * old symbol deprecation (Arnout)
 * split big monolithic patch into a serie (Arnout)
 * add dependency between fftw and fftw-double (Yann)
---
 Config.in.legacy                          |  9 +++++++++
 package/fftw/Config.in                    | 23 +++++------------------
 package/fftw/fftw-double/Config.in        |  5 +++++
 package/fftw/fftw-double/fftw-double.hash |  1 +
 package/fftw/fftw-double/fftw-double.mk   | 23 +++++++++++++++++++++++
 package/fftw/fftw.mk                      |  9 ++++-----
 6 files changed, 47 insertions(+), 23 deletions(-)
 create mode 100644 package/fftw/fftw-double/Config.in
 create mode 120000 package/fftw/fftw-double/fftw-double.hash
 create mode 100644 package/fftw/fftw-double/fftw-double.mk

diff --git a/Config.in.legacy b/Config.in.legacy
index 06a5803ff5..fa157dc4ec 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -145,6 +145,15 @@ endif
 ###############################################################################
 comment "Legacy options removed in 2019.02"
 
+config BR2_PACKAGE_FFTW_PRECISION_DOUBLE
+	bool "fftw double precision option was replaced by package"
+	select BR2_LEGACY
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_DOUBLE
+	help
+	  fftw double precision option was replaced by dedicated
+	  package.
+
 config BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE
 	bool "fftw long double precision option was replaced by package"
 	select BR2_LEGACY
diff --git a/package/fftw/Config.in b/package/fftw/Config.in
index 945fd5d173..3f04f16454 100644
--- a/package/fftw/Config.in
+++ b/package/fftw/Config.in
@@ -1,5 +1,9 @@
 config BR2_PACKAGE_FFTW
 	bool "fftw"
+	select BR2_PACKAGE_FFTW_DOUBLE if \
+		!BR2_PACKAGE_FFTW_SINGLE && \
+		!BR2_PACKAGE_FFTW_QUAD && \
+		!BR2_PACKAGE_FFTW_LONG_DOUBLE
 	help
 	  Library for computing Fast Fourier Transforms.
 
@@ -12,24 +16,7 @@ config BR2_PACKAGE_FFTW
 
 if BR2_PACKAGE_FFTW
 
-config BR2_PACKAGE_FFTW_USE_SSE2
-	bool
-
-choice
-	prompt "fftw precision"
-	default BR2_PACKAGE_FFTW_PRECISION_DOUBLE
-	help
-	  Selects fftw precision
-
-config BR2_PACKAGE_FFTW_PRECISION_DOUBLE
-	bool "double"
-	select BR2_PACKAGE_FFTW_USE_SSE2 if BR2_X86_CPU_HAS_SSE2
-	help
-	  Compile fftw in double precision (the default), i.e. use
-	  'double' for floating point type.
-
-endchoice
-
+source "package/fftw/fftw-double/Config.in"
 source "package/fftw/fftw-long-double/Config.in"
 source "package/fftw/fftw-single/Config.in"
 source "package/fftw/fftw-quad/Config.in"
diff --git a/package/fftw/fftw-double/Config.in b/package/fftw/fftw-double/Config.in
new file mode 100644
index 0000000000..cfcd1ef997
--- /dev/null
+++ b/package/fftw/fftw-double/Config.in
@@ -0,0 +1,5 @@
+config BR2_PACKAGE_FFTW_DOUBLE
+	bool "fftw-double"
+	help
+	  Compile fftw in double precision (the default), i.e. use
+	  'double' for floating point type.
diff --git a/package/fftw/fftw-double/fftw-double.hash b/package/fftw/fftw-double/fftw-double.hash
new file mode 120000
index 0000000000..3ee7ecb3ba
--- /dev/null
+++ b/package/fftw/fftw-double/fftw-double.hash
@@ -0,0 +1 @@
+../fftw.hash
\ No newline at end of file
diff --git a/package/fftw/fftw-double/fftw-double.mk b/package/fftw/fftw-double/fftw-double.mk
new file mode 100644
index 0000000000..2923a86783
--- /dev/null
+++ b/package/fftw/fftw-double/fftw-double.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# fftw-double
+#
+################################################################################
+
+FFTW_DOUBLE_VERSION = $(FFTW_VERSION)
+FFTW_DOUBLE_SOURCE = fftw-$(FFTW_VERSION).tar.gz
+FFTW_DOUBLE_SITE = $(FFTW_SITE)
+FFTW_DOUBLE_INSTALL_STAGING = $(FFTW_INSTALL_STAGING)
+FFTW_DOUBLE_LICENSE = $(FFTW_LICENSE)
+FFTW_DOUBLE_LICENSE_FILES = $(FFTW_LICENSE_FILES)
+
+FFTW_DOUBLE_CONF_ENV = $(FFTW_CONF_ENV)
+
+FFTW_DOUBLE_CONF_OPTS= $(FFTW_CONF_OPTS)
+
+FFTW_DOUBLE_CFLAGS = $(FFTW_CFLAGS)
+
+# x86 optimisations
+FFTW_DOUBLE_CONF_OPTS += $(if $(BR2_X86_CPU_HAS_SSE2),--enable,--disable)-sse2
+
+$(eval $(autotools-package))
diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk
index 499e0ed1ad..69db09dcd4 100644
--- a/package/fftw/fftw.mk
+++ b/package/fftw/fftw.mk
@@ -10,6 +10,10 @@ FFTW_INSTALL_STAGING = YES
 FFTW_LICENSE = GPL-2.0+
 FFTW_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_PACKAGE_FFTW_DOUBLE),y)
+FFTW_DEPENDENCIES += fftw-double
+endif
+
 ifeq ($(BR2_PACKAGE_FFTW_LONG_DOUBLE),y)
 FFTW_DEPENDENCIES += fftw-long-double
 endif
@@ -35,9 +39,6 @@ ifeq ($(BR2_PACKAGE_FFTW_FAST),y)
 FFTW_CFLAGS += -O3 -ffast-math
 endif
 
-# x86 optimisations
-FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_USE_SSE2),--enable,--disable)-sse2
-
 # Generic optimisations
 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
 FFTW_CONF_OPTS += --enable-threads
@@ -49,6 +50,4 @@ FFTW_CONF_OPTS += $(if $(BR2_GCC_ENABLE_OPENMP),--enable,--disable)-openmp
 
 FFTW_CONF_OPTS += CFLAGS="$(FFTW_CFLAGS)"
 
-$(eval $(autotools-package))
-
 include $(sort $(wildcard package/fftw/*/*.mk))
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (2 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double " Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:25   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option Gwenhael Goavec-Merou
                   ` (10 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
Changes v1 -> v2:
 * suppress dependency between alsa-utils and fftw-single (Baruch)
---
 package/alsa-utils/alsa-utils.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/alsa-utils/alsa-utils.mk b/package/alsa-utils/alsa-utils.mk
index 0bf2b432bd..658ab01fff 100644
--- a/package/alsa-utils/alsa-utils.mk
+++ b/package/alsa-utils/alsa-utils.mk
@@ -41,7 +41,7 @@ endif
 ifeq ($(BR2_PACKAGE_ALSA_UTILS_BAT),y)
 ALSA_UTILS_CONF_OPTS += --enable-bat
 # Analysis support requires fftw single precision
-ALSA_UTILS_DEPENDENCIES += $(if $(BR2_PACKAGE_FFTW_PRECISION_SINGLE),fftw)
+ALSA_UTILS_DEPENDENCIES += $(if $(BR2_PACKAGE_FFTW_SINGLE),fftw-single)
 else
 ALSA_UTILS_CONF_OPTS += --disable-bat
 endif
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (3 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:26   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES Gwenhael Goavec-Merou
                   ` (9 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/aubio/aubio.mk | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/package/aubio/aubio.mk b/package/aubio/aubio.mk
index b0cc8b899e..69d0815ab5 100644
--- a/package/aubio/aubio.mk
+++ b/package/aubio/aubio.mk
@@ -27,7 +27,7 @@ AUBIO_CONF_OPTS += --disable-sndfile
 endif
 
 # Could not compile aubio in double precision mode with libsamplerate
-ifeq ($(BR2_PACKAGE_LIBSAMPLERATE)$(BR2_PACKAGE_FFTW_PRECISION_SINGLE),yy)
+ifeq ($(BR2_PACKAGE_LIBSAMPLERATE)$(BR2_PACKAGE_FFTW_SINGLE),yy)
 AUBIO_DEPENDENCIES += libsamplerate
 AUBIO_CONF_OPTS += --enable-samplerate
 else
@@ -42,12 +42,13 @@ AUBIO_CONF_OPTS += --disable-jack
 endif
 
 ifeq ($(BR2_PACKAGE_FFTW),y)
-AUBIO_DEPENDENCIES += fftw
 # fftw3 require double otherwise it will look for fftw3f
-ifeq ($(BR2_PACKAGE_FFTW_PRECISION_DOUBLE),y)
+ifeq ($(BR2_PACKAGE_FFTW_DOUBLE),y)
 AUBIO_CONF_OPTS += --enable-fftw3 --enable-double
-else ifeq ($(BR2_PACKAGE_FFTW_PRECISION_SINGLE),y)
+AUBIO_DEPENDENCIES += fftw-double
+else ifeq ($(BR2_PACKAGE_FFTW_SINGLE),y)
 AUBIO_CONF_OPTS += --enable-fftw3f --disable-double
+AUBIO_DEPENDENCIES += fftw-single
 endif
 else  # !BR2_PACKAGE_FFTW
 AUBIO_CONF_OPTS += --disable-fftw3
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (4 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:28   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio Gwenhael Goavec-Merou
                   ` (8 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

With fftw with multiple precision selectable without choise it's possible
to replace depend on by select.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/gnuradio/Config.in   | 8 ++------
 package/gnuradio/gnuradio.mk | 2 +-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/package/gnuradio/Config.in b/package/gnuradio/Config.in
index 56957d59e4..533a49c81e 100644
--- a/package/gnuradio/Config.in
+++ b/package/gnuradio/Config.in
@@ -78,11 +78,6 @@ config BR2_PACKAGE_GNURADIO_ZEROMQ
 	help
 	  zeromq communication support
 
-comment "gr-fft, -filter, -analog, -channels, -digital, -trellis, -pager, -qtgui depends fftw's single precision"
-	depends on !BR2_PACKAGE_FFTW_PRECISION_SINGLE
-
-if BR2_PACKAGE_FFTW_PRECISION_SINGLE
-
 config BR2_PACKAGE_GNURADIO_ANALOG
 	bool "gr-analog support"
 	select BR2_PACKAGE_GNURADIO_FILTER
@@ -103,6 +98,8 @@ config BR2_PACKAGE_GNURADIO_DIGITAL
 
 config BR2_PACKAGE_GNURADIO_FFT
 	bool "gr-fft support"
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_SINGLE
 	select BR2_PACKAGE_GNURADIO_BLOCKS
 	help
 	  FFT signal processing blocks
@@ -136,4 +133,3 @@ config BR2_PACKAGE_GNURADIO_TRELLIS
 	  Trellis coded modulation blocks
 
 endif
-endif
diff --git a/package/gnuradio/gnuradio.mk b/package/gnuradio/gnuradio.mk
index ed537e3934..564ad8b2a4 100644
--- a/package/gnuradio/gnuradio.mk
+++ b/package/gnuradio/gnuradio.mk
@@ -101,7 +101,7 @@ GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=OFF
 endif
 
 ifeq ($(BR2_PACKAGE_GNURADIO_FFT),y)
-GNURADIO_DEPENDENCIES += fftw
+GNURADIO_DEPENDENCIES += fftw-single
 GNURADIO_CONF_OPTS += -DENABLE_GR_FFT=ON
 else
 GNURADIO_CONF_OPTS += -DENABLE_GR_FFT=OFF
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (5 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:31   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES Gwenhael Goavec-Merou
                   ` (7 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/gqrx/Config.in | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/package/gqrx/Config.in b/package/gqrx/Config.in
index 1dc40c6d24..94ccb60d44 100644
--- a/package/gqrx/Config.in
+++ b/package/gqrx/Config.in
@@ -2,13 +2,11 @@ comment "gqrx needs a toolchain w/ C++, threads, wchar"
 	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
 		!BR2_USE_WCHAR
 
-comment "gqrx needs qt5, gnuradio, fftw's single precision"
-	depends on !BR2_PACKAGE_GNURADIO || !BR2_PACKAGE_FFTW_PRECISION_SINGLE || \
-		!BR2_PACKAGE_QT5
+comment "gqrx needs qt5, gnuradio"
+	depends on !BR2_PACKAGE_GNURADIO || !BR2_PACKAGE_QT5
 
 config BR2_PACKAGE_GQRX
 	bool "gqrx"
-	depends on BR2_PACKAGE_FFTW_PRECISION_SINGLE # gnuradio
 	depends on BR2_PACKAGE_GNURADIO
 	depends on BR2_PACKAGE_QT5
 	depends on BR2_INSTALL_LIBSTDCPP # boost
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (6 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:33   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure Gwenhael Goavec-Merou
                   ` (6 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/hackrf/Config.in | 6 ++----
 package/hackrf/hackrf.mk | 2 +-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/package/hackrf/Config.in b/package/hackrf/Config.in
index 4fa27699c4..b86790f2b0 100644
--- a/package/hackrf/Config.in
+++ b/package/hackrf/Config.in
@@ -2,7 +2,8 @@ config BR2_PACKAGE_HACKRF
 	bool "hackrf"
 	depends on !BR2_STATIC_LIBS
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-	depends on BR2_PACKAGE_FFTW_PRECISION_SINGLE
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_SINGLE
 	select BR2_PACKAGE_LIBUSB
 	help
 	  Library and tools for accessing HackRF SDR boards.
@@ -11,6 +12,3 @@ config BR2_PACKAGE_HACKRF
 
 comment "hackrf needs a toolchain w/ threads, dynamic library"
 	depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
-
-comment "hackrf needs fftw's single precision"
-	depends on !BR2_PACKAGE_FFTW_PRECISION_SINGLE
diff --git a/package/hackrf/hackrf.mk b/package/hackrf/hackrf.mk
index acab0be1d3..b83f6518e8 100644
--- a/package/hackrf/hackrf.mk
+++ b/package/hackrf/hackrf.mk
@@ -9,7 +9,7 @@ HACKRF_SITE = https://github.com/mossmann/hackrf/releases/download/v$(HACKRF_VER
 HACKRF_SOURCE = hackrf-$(HACKRF_VERSION).tar.xz
 HACKRF_LICENSE = GPL-2.0+ BSD-3c
 HACKRF_LICENSE_FILES = COPYING
-HACKRF_DEPENDENCIES = fftw libusb
+HACKRF_DEPENDENCIES = fftw-single libusb
 HACKRF_SUBDIR = host
 HACKRF_INSTALL_STAGING = YES
 
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (7 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:33   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double Gwenhael Goavec-Merou
                   ` (5 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/httping/httping.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/httping/httping.mk b/package/httping/httping.mk
index 955ee3131b..b3a625a8e1 100644
--- a/package/httping/httping.mk
+++ b/package/httping/httping.mk
@@ -17,9 +17,9 @@ HTTPING_DEPENDENCIES = \
 	$(if $(BR2_PACKAGE_LIBICONV),libiconv) \
 	$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncurses) \
 	$(if $(BR2_PACKAGE_OPENSSL),openssl) \
-	$(if $(BR2_PACKAGE_FFTW),fftw)
+	$(if $(BR2_PACKAGE_FFTW_DOUBLE),fftw-double)
 HTTPING_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) \
-	FW=$(if $(BR2_PACKAGE_FFTW),yes,no) \
+	FW=$(if $(BR2_PACKAGE_FFTW_DOUBLE),yes,no) \
 	NC=$(if $(BR2_PACKAGE_NCURSES_WCHAR),yes,no) \
 	SSL=$(if $(BR2_PACKAGE_OPENSSL),yes,no) \
 	TFO=$(if $(BR2_PACKAGE_HTTPING_TFO),yes,no) \
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (8 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:34   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 12/14] libvips: " Gwenhael Goavec-Merou
                   ` (4 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/imagemagick/imagemagick.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/imagemagick/imagemagick.mk b/package/imagemagick/imagemagick.mk
index 72482267ce..7678980582 100644
--- a/package/imagemagick/imagemagick.mk
+++ b/package/imagemagick/imagemagick.mk
@@ -113,11 +113,11 @@ else
 IMAGEMAGICK_CONF_OPTS += --without-lzma
 endif
 
-ifeq ($(BR2_PACKAGE_FFTW),y)
+ifeq ($(BR2_PACKAGE_FFTW_DOUBLE),y)
 # configure script misdetects these leading to build errors
 IMAGEMAGICK_CONF_ENV += ac_cv_func_creal=yes ac_cv_func_cimag=yes
 IMAGEMAGICK_CONF_OPTS += --with-fftw
-IMAGEMAGICK_DEPENDENCIES += fftw
+IMAGEMAGICK_DEPENDENCIES += fftw-double
 else
 IMAGEMAGICK_CONF_OPTS += --without-fftw
 endif
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 12/14] libvips: reference explicitly fftw double
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (9 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:35   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single Gwenhael Goavec-Merou
                   ` (3 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/libvips/libvips.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libvips/libvips.mk b/package/libvips/libvips.mk
index 8078e046d1..7622f32fbc 100644
--- a/package/libvips/libvips.mk
+++ b/package/libvips/libvips.mk
@@ -68,9 +68,9 @@ else
 LIBVIPS_CONF_OPTS += --without-tiff
 endif
 
-ifeq ($(BR2_PACKAGE_FFTW),y)
+ifeq ($(BR2_PACKAGE_FFTW_DOUBLE),y)
 LIBVIPS_CONF_OPTS += --with-fftw
-LIBVIPS_DEPENDENCIES += fftw
+LIBVIPS_DEPENDENCIES += fftw-double
 else
 LIBVIPS_CONF_OPTS += --without-fftw
 endif
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (10 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 12/14] libvips: " Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:36   ` Joel Carlson
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure Gwenhael Goavec-Merou
                   ` (2 subsequent siblings)
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/pulseaudio/pulseaudio.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/pulseaudio/pulseaudio.mk b/package/pulseaudio/pulseaudio.mk
index d1c35654cf..c91af22935 100644
--- a/package/pulseaudio/pulseaudio.mk
+++ b/package/pulseaudio/pulseaudio.mk
@@ -21,7 +21,7 @@ PULSEAUDIO_DEPENDENCIES = \
 	$(if $(BR2_PACKAGE_AVAHI_DAEMON),avahi) \
 	$(if $(BR2_PACKAGE_DBUS),dbus) \
 	$(if $(BR2_PACKAGE_OPENSSL),openssl) \
-	$(if $(BR2_PACKAGE_FFTW),fftw) \
+	$(if $(BR2_PACKAGE_FFTW_SINGLE),fftw-single) \
 	$(if $(BR2_PACKAGE_SYSTEMD),systemd)
 
 ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y)
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (11 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single Gwenhael Goavec-Merou
@ 2018-12-12  7:45 ` Gwenhael Goavec-Merou
  2018-12-12 19:37   ` Joel Carlson
  2018-12-12 19:17 ` [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Joel Carlson
  2018-12-16 20:18 ` Thomas Petazzoni
  14 siblings, 1 reply; 29+ messages in thread
From: Gwenhael Goavec-Merou @ 2018-12-12  7:45 UTC (permalink / raw)
  To: buildroot

From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
 package/liquid-dsp/liquid-dsp.mk | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/package/liquid-dsp/liquid-dsp.mk b/package/liquid-dsp/liquid-dsp.mk
index e3114a2d15..6aa27a5248 100644
--- a/package/liquid-dsp/liquid-dsp.mk
+++ b/package/liquid-dsp/liquid-dsp.mk
@@ -30,8 +30,9 @@ LIQUID_DSP_CFLAGS += -ffast-math
 endif
 
 # use FFTW instead of built-in FFT
-ifeq ($(BR2_PACKAGE_FFTW_PRECISION_SINGLE),y)
+ifeq ($(BR2_PACKAGE_FFTW_SINGLE),y)
 LIQUID_DSP_LDFLAGS += -lfftw3f
+LIQUID_DSP_DEPENDENCIES += fftw-single
 endif
 
 # disable altivec, it has build issues
@@ -39,12 +40,14 @@ ifeq ($(BR2_powerpc)$(BR2_powerpc64)$(BR2_powerpc64le),y)
 LIQUID_DSP_CONF_OPTS += --enable-simdoverride
 endif
 
-ifeq ($(BR2_PACKAGE_FFTW_PRECISION_DOUBLE),y)
+ifeq ($(BR2_PACKAGE_FFTW_DOUBLE),y)
 LIQUID_DSP_LDFLAGS += -lfftw3
+LIQUID_DSP_DEPENDENCIES += fftw-double
 endif
 
-ifeq ($(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),y)
+ifeq ($(BR2_PACKAGE_FFTW_LONG_DOUBLE),y)
 LIQUID_DSP_LDFLAGS += -lfftw3l
+LIQUID_DSP_DEPENDENCIES += fftw-long-double
 endif
 
 LIQUID_DSP_CONF_OPTS += \
-- 
2.19.2

^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (12 preceding siblings ...)
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure Gwenhael Goavec-Merou
@ 2018-12-12 19:17 ` Joel Carlson
  2018-12-16 20:18 ` Thomas Petazzoni
  14 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:17 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> fftw's library name depends on the precision option. Consequently,
> it's possible to install multiple flavor on the same target.
>
> This patch breaks fftw single precision into a new package and:
> - deprecates BR2_PACKAGE_FFTW_PRECISION_SINGLE, BR2_PACKAGE_FFTW_SINGLE must be
>   used instead;
> - suppress BR2_PACKAGE_FFTW_USE_SSE and BR2_PACKAGE_FFTW_USE_NEON since options
>   are only available on single precision. Corresponding options are directly
>   handled in fftw-single package;
> - do fftw depends on fftw-single when this package is enabled.
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested all the permutations of enabling/disabling
fftw-single, fftw-double, and fftw-long-double on an aarch64 build (so
no fftw-quad available)

Thanks for your work on this patch series, Gwenhael!  I ran into this
awhile back, where I noticed I could only select one FFTW build, and I
had some issues with liquid-dsp depending on which one was selected.
I decided to just pick the one option that worked even though I would
have liked to have another available. I was too busy at the time to
spend time trying to fix it.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double into a dedicated package
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double " Gwenhael Goavec-Merou
@ 2018-12-12 19:18   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:18 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> fftw's library name depends on the precision option. Consequently,
> it's possible to install multiple flavor on the same target.
>
> This patch breaks fftw long double precision into a new package and:
> - deprecates BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE,
>   BR2_PACKAGE_FFTW_LONG_DOUBLE must be used instead;
> - do fftw depends on fftw-long-double when this package is enabled.
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested all the permutations of enabling/disabling
fftw-single, fftw-double, and fftw-long-double on an aarch64 build (so
no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad into a dedicated package
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad " Gwenhael Goavec-Merou
@ 2018-12-12 19:21   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:21 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> fftw's library name depends on the precision option. Consequently,
> it's possible to install multiple flavor on the same target.
>
> This patch breaks fftw quad precision into a new package and:
> - deprecates BR2_PACKAGE_FFTW_PRECISION_QUAD, BR2_PACKAGE_FFTW_QUAD
>   must be used instead;
> - do fftw depends on fftw-long-quad when this package is enabled.
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double into a dedicated package
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double " Gwenhael Goavec-Merou
@ 2018-12-12 19:22   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:22 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> fftw's library name depends on the precision option. Consequently,
> it's possible to install multiple flavor on the same target.
>
> This patch breaks fftw double precision into a new package and:
> - deprecates BR2_PACKAGE_FFTW_PRECISION_DOUBLE, BR2_PACKAGE_FFTW_DOUBLE must be
>   used instead;
> - suppress BR2_PACKAGE_FFTW_USE_SSE2 since option is only available on single and
>   double precision. Corresponding options are directly
>   handled in fftw-double package;
> - do fftw depends on fftw-double when this package is enabled.
> - select this option when fftw is enabled and no precision is enabled
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested all the permutations of enabling/disabling
fftw-single, fftw-double, and fftw-long-double on an aarch64 build (so
no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single Gwenhael Goavec-Merou
@ 2018-12-12 19:25   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:25 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of alsa-utils with all the
permutations of enabling/disabling fftw-single, fftw-double, and
fftw-long-double on an aarch64 build (so no fftw-quad available)

Side-note: this patch didn't seem to end up in the same series on
patchwork... https://patchwork.ozlabs.org/project/buildroot/list/?series=81308
 and https://patchwork.ozlabs.org/patch/1011646/

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option Gwenhael Goavec-Merou
@ 2018-12-12 19:26   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:26 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of aubio with all the permutations of
enabling/disabling fftw-single, fftw-double, and fftw-long-double on
an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES Gwenhael Goavec-Merou
@ 2018-12-12 19:28   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:28 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> With fftw with multiple precision selectable without choise it's possible
> to replace depend on by select.
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of gnuradio with all the permutations
of enabling/disabling fftw-single, fftw-double, and fftw-long-double
on an aarch64 build (so no fftw-quad available).  Turned on
GNURADIO_FFT when on permutations with FFTW_SINGLE.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio Gwenhael Goavec-Merou
@ 2018-12-12 19:31   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:31 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES Gwenhael Goavec-Merou
@ 2018-12-12 19:33   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:33 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of hackrf with all the permutations of
enabling/disabling fftw-single, fftw-double, and fftw-long-double on
an aarch64 build (so no fftw-quad available). Only built hackrf with
permutations where I wanted FFTW_SINGLE enabled, since it selects it.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure Gwenhael Goavec-Merou
@ 2018-12-12 19:33   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:33 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of httping with all the permutations
of enabling/disabling fftw-single, fftw-double, and fftw-long-double
on an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double Gwenhael Goavec-Merou
@ 2018-12-12 19:34   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:34 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of imagemagick with all the
permutations of enabling/disabling fftw-single, fftw-double, and
fftw-long-double on an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 12/14] libvips: reference explicitly fftw double
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 12/14] libvips: " Gwenhael Goavec-Merou
@ 2018-12-12 19:35   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:35 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of libvips with all the permutations
of enabling/disabling fftw-single, fftw-double, and fftw-long-double
on an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single Gwenhael Goavec-Merou
@ 2018-12-12 19:36   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:36 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of pulseaudio with all the
permutations of enabling/disabling fftw-single, fftw-double, and
fftw-long-double on an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure
  2018-12-12  7:45 ` [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure Gwenhael Goavec-Merou
@ 2018-12-12 19:37   ` Joel Carlson
  0 siblings, 0 replies; 29+ messages in thread
From: Joel Carlson @ 2018-12-12 19:37 UTC (permalink / raw)
  To: buildroot

On Wed, Dec 12, 2018 at 12:45 AM Gwenhael Goavec-Merou
<gwenj@trabucayre.com> wrote:
>
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
>
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>

Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>

Testing: compile-tested a build of liquid-dsp with all the
permutations of enabling/disabling fftw-single, fftw-double, and
fftw-long-double on an aarch64 build (so no fftw-quad available)

^ permalink raw reply	[flat|nested] 29+ messages in thread

* [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package
  2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
                   ` (13 preceding siblings ...)
  2018-12-12 19:17 ` [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Joel Carlson
@ 2018-12-16 20:18 ` Thomas Petazzoni
  14 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni @ 2018-12-16 20:18 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 12 Dec 2018 08:45:26 +0100, Gwenhael Goavec-Merou wrote:
> From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
> 
> fftw's library name depends on the precision option. Consequently,
> it's possible to install multiple flavor on the same target.
> 
> This patch breaks fftw single precision into a new package and:
> - deprecates BR2_PACKAGE_FFTW_PRECISION_SINGLE, BR2_PACKAGE_FFTW_SINGLE must be
>   used instead;
> - suppress BR2_PACKAGE_FFTW_USE_SSE and BR2_PACKAGE_FFTW_USE_NEON since options
>   are only available on single precision. Corresponding options are directly
>   handled in fftw-single package;
> - do fftw depends on fftw-single when this package is enabled.
> 
> Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
> ---
> Changes v1 -> v2:
>  * BR2_PACKAGE_FFTW_PRECISION_SINGLE -> BR2_PACKAGE_FFTW_SINGLE (Arnout)
>  * old symbol deprecation (Arnout)
>  * split big monolithic patch into a serie (Arnout)
>  * add dependency between fftw and fftw-single (Yann)
> ---
>  Config.in.legacy                          |  9 +++++++
>  package/fftw/Config.in                    | 17 ++----------
>  package/fftw/fftw-single/Config.in        |  5 ++++
>  package/fftw/fftw-single/fftw-single.hash |  1 +
>  package/fftw/fftw-single/fftw-single.mk   | 33 +++++++++++++++++++++++
>  package/fftw/fftw.mk                      | 12 ++++-----
>  6 files changed, 56 insertions(+), 21 deletions(-)
>  create mode 100644 package/fftw/fftw-single/Config.in
>  create mode 120000 package/fftw/fftw-single/fftw-single.hash
>  create mode 100644 package/fftw/fftw-single/fftw-single.mk

For information: Yann and me have started reviewing/testing/tweaking
this patch series today. We found a number of things to improve, and
I'll continue working on this.

So I'd be nice if Arnout/Peter you could wait before applying this, and
consider it is in my queue of patches to apply. I'll mark the patches
as delegated to me.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2018-12-16 20:18 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-12  7:45 [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Gwenhael Goavec-Merou
2018-12-12  7:45 ` [Buildroot] [PATCH v2 02/14] fftw: breaks fftw-long-double " Gwenhael Goavec-Merou
2018-12-12 19:18   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 03/14] fftw: breaks fftw-quad " Gwenhael Goavec-Merou
2018-12-12 19:21   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 04/14] fftw: breaks fftw-double " Gwenhael Goavec-Merou
2018-12-12 19:22   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 05/14] alsa-utils: update DEPENDENCIES to fftw-single Gwenhael Goavec-Merou
2018-12-12 19:25   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 06/14] aubio: update DEPENDENCIES to ffw-single or fftw-double depending on enabled option Gwenhael Goavec-Merou
2018-12-12 19:26   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 07/14] gnuradio: change depend to select for fftw and use fftw-single in DEPENDENCIES Gwenhael Goavec-Merou
2018-12-12 19:28   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 08/14] gqrx: suppress fft depend since fft's precision is selected by gnuradio Gwenhael Goavec-Merou
2018-12-12 19:31   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 09/14] use select instead of depend for fftw package and fix DEPENDENCIES Gwenhael Goavec-Merou
2018-12-12 19:33   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 10/14] httping: update package to use new fftw structure Gwenhael Goavec-Merou
2018-12-12 19:33   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 11/14] imagemagick: reference explicitly fftw double Gwenhael Goavec-Merou
2018-12-12 19:34   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 12/14] libvips: " Gwenhael Goavec-Merou
2018-12-12 19:35   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 13/14] pulseaudio: update dependency to fftw-single Gwenhael Goavec-Merou
2018-12-12 19:36   ` Joel Carlson
2018-12-12  7:45 ` [Buildroot] [PATCH v2 14/14] liquid-dsp: update package to use new fftw structure Gwenhael Goavec-Merou
2018-12-12 19:37   ` Joel Carlson
2018-12-12 19:17 ` [Buildroot] [PATCH v2 01/14] fftw: breaks fftw-single into a dedicated package Joel Carlson
2018-12-16 20:18 ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox