diff --git a/package/fftw/Config.in b/package/fftw/Config.in index 7feadd8b0f..d9a65d594f 100644 --- a/package/fftw/Config.in +++ b/package/fftw/Config.in @@ -18,6 +18,9 @@ config BR2_PACKAGE_FFTW_USE_SSE config BR2_PACKAGE_FFTW_USE_SSE2 bool +config BR2_PACKAGE_FFTW_USE_NEON + bool + choice prompt "fftw precision" default BR2_PACKAGE_FFTW_PRECISION_DOUBLE @@ -28,6 +31,7 @@ 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. diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk index daa3cc22fd..154f522ea3 100644 --- a/package/fftw/fftw.mk +++ b/package/fftw/fftw.mk @@ -23,6 +23,10 @@ endif 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) + FFTW_CONF_OPTS += CFLAGS="$(FFTW_CFLAGS)" $(eval $(autotools-package))