diff options
| author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2014-10-10 12:11:31 +0000 | 
|---|---|---|
| committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2014-10-10 12:11:31 +0000 | 
| commit | ea6f1557a0dd686fd74020509bdaadf689dd1c76 (patch) | |
| tree | 62e812e12ecf94d9165337dbbde0992c568ce6c7 | |
| parent | 3ae264aa4cf28ac8c860ad3f74fdc1c68b1a854e (diff) | |
| download | dabmod-ea6f1557a0dd686fd74020509bdaadf689dd1c76.tar.gz dabmod-ea6f1557a0dd686fd74020509bdaadf689dd1c76.tar.bz2 dabmod-ea6f1557a0dd686fd74020509bdaadf689dd1c76.zip | |
Get compilation working on ARM
| -rw-r--r-- | configure.ac | 20 | ||||
| -rw-r--r-- | src/Buffer.cpp | 2 | ||||
| -rw-r--r-- | src/DabMod.cpp | 4 | ||||
| -rw-r--r-- | src/Flowgraph.cpp | 6 | ||||
| -rw-r--r-- | src/Makefile.am | 8 | ||||
| -rw-r--r-- | src/Resampler.cpp | 6 | 
6 files changed, 36 insertions, 10 deletions
| diff --git a/configure.ac b/configure.ac index 9b8bcb7..07d6195 100644 --- a/configure.ac +++ b/configure.ac @@ -133,6 +133,26 @@ AC_COMPILE_IFELSE(          [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) AC_DEFINE([M_PIl], [M_PI], [Replacing define])])  AC_LANG_POP([C++]) +# Check for SSE +AC_MSG_CHECKING(for SSE in current arch/CFLAGS) +AC_LINK_IFELSE([ +AC_LANG_PROGRAM([[ +#include <xmmintrin.h> +__m128 testfunc(float *a, float *b) { +  return _mm_add_ps(_mm_loadu_ps(a), _mm_loadu_ps(b)); +} +]])], +[ +has_sse=yes +], +[ +has_sse=no +] +) +AC_MSG_RESULT($has_sse) + +AM_CONDITIONAL([HAVE_SSE], [test "x$has_sse" = "xyes"]) +  AM_CONDITIONAL([IS_GIT_REPO], [test -d '.git'])  AC_TYPE_SIGNAL diff --git a/src/Buffer.cpp b/src/Buffer.cpp index dff2623..aa0ef4c 100644 --- a/src/Buffer.cpp +++ b/src/Buffer.cpp @@ -26,7 +26,7 @@  #include <stdlib.h>  #include <string.h>  #include <malloc.h> -#ifdef HAVE_DECL__MM_MALLOC +#if HAVE_DECL__MM_MALLOC  #   include <mm_malloc.h>  #else  #   define memalign(a, b)   malloc(b) diff --git a/src/DabMod.cpp b/src/DabMod.cpp index 7ee65dc..67ad12d 100644 --- a/src/DabMod.cpp +++ b/src/DabMod.cpp @@ -56,11 +56,11 @@  #include <stdexcept>  #include <signal.h> -#ifdef HAVE_NETINET_IN_H +#if HAVE_NETINET_IN_H  #   include <netinet/in.h>  #endif -#ifdef HAVE_DECL__MM_MALLOC +#if HAVE_DECL__MM_MALLOC  #   include <mm_malloc.h>  #else  #   define memalign(a, b)   malloc(b) diff --git a/src/Flowgraph.cpp b/src/Flowgraph.cpp index 4e44f28..dd9c68b 100644 --- a/src/Flowgraph.cpp +++ b/src/Flowgraph.cpp @@ -23,10 +23,10 @@  #include "PcDebug.h" -#ifdef __ppc__ -#   define memalign(a, b)   malloc(b) -#else // !__ppc__ +#if HAVE_DECL__MM_MALLOC  #   include <mm_malloc.h> +#else +#   define memalign(a, b)   malloc(b)  #endif  #include <sys/types.h>  #include <stdexcept> diff --git a/src/Makefile.am b/src/Makefile.am index 3e851c4..f6102e9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -34,6 +34,12 @@ else  UHD_SOURCES    =  endif +if HAVE_SSE +SIMD_CFLAGS = -msse -msse2 +else +SIMD_CFLAGS = +endif +  FFT_DIR=$(top_builddir)/lib/kiss_fft129  FFT_INC=-I$(FFT_DIR) -I$(FFT_DIR)/tools  FFT_SRC=$(FFT_DIR)/kiss_fft.c $(FFT_DIR)/kiss_fft.h $(FFT_DIR)/tools/kiss_fftr.c $(FFT_DIR)/tools/kiss_fftr.h kiss_fftsimd.c kiss_fftsimd.h @@ -52,7 +58,7 @@ $(FFT_DIR):  		tar xzf $(top_srcdir)/lib/kiss_fft129.tar.gz -C $(top_builddir)/lib; \  	fi -odr_dabmod_CPPFLAGS = -Wall $(FFT_INC) $(FFT_FLG) -msse -msse2 $(GITVERSION_FLAGS) +odr_dabmod_CPPFLAGS = -Wall $(FFT_INC) $(FFT_FLG) $(SIMD_CFLAGS) $(GITVERSION_FLAGS)  odr_dabmod_LDADD    = $(ZMQ_LIBS)  odr_dabmod_SOURCES  = DabMod.cpp \                        PcDebug.h \ diff --git a/src/Resampler.cpp b/src/Resampler.cpp index 773b9cc..334be99 100644 --- a/src/Resampler.cpp +++ b/src/Resampler.cpp @@ -23,10 +23,10 @@  #include "PcDebug.h" -#ifdef __ppc__ -#   define memalign(a, b)   malloc(b) -#else // !__ppc__ +#if HAVE_DECL__MM_MALLOC  #   include <mm_malloc.h> +#else +#   define memalign(a, b)   malloc(b)  #endif  #include <sys/types.h>  #include <string.h> | 
