[alsa-plugins] include speexdsp_types.h, not speex_types.h
diff mbox

Message ID s5hpp41flpv.wl-tiwai@suse.de
State New
Headers show

Commit Message

Takashi Iwai July 9, 2015, 2:29 p.m. UTC
On Thu, 09 Jul 2015 15:27:53 +0200,
Takashi Iwai wrote:
> 
> On Thu, 09 Jul 2015 11:43:29 +0200,
> Tanu Kaskinen wrote:
> > 
> > Speexdsp was separated from speex in 1.2rc2. speex_types.h is not
> > shipped by speexdsp, so alsa-plugins shouldn't use that file. speexdsp
> > has speexdsp_types.h, which has the same contents as speex_types.h.
> > 
> > speexdsp_types.h is a new file introduced in 1.2rc2, so this change
> > bumps the minimum supported speexdsp version. The version check in
> > configure.ac will actually break if speexdsp 1.2 ever gets released,
> > because pkg-config thinks that "1.2" < "1.2rc2", but I think it's
> > useful to fail if the installed speexdsp version is 1.2rc1 (which I
> > believe is very common on current distributions). If a non-rc version
> > of speexdsp will ever get released, I hope version number 1.2 will be
> > skipped for this reason. (A non-rc version seems unlikely, since
> > 1.2rc1 was released years ago, so it's pretty likely that the project
> > is stuck on so called "release candidates" forever...)
> > 
> > Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
> 
> While I take this as is, I think we can work around the old header
> file by just checking the new path and creating a dummy header
> including the old header in configure script.  Let me give some
> try...

OK, below seems working for both 1.2rc1 and 1.2rc2.


Takashi

---
From: Takashi Iwai <tiwai@suse.de>
Subject: [PATCH] pph: Fix build with older speex

The previous commit fixed the build of the recent speexdsp, but it
also broke the build with the old library.  Actually the only needed
change is the inclusion of speex/speex_types.h instead of
speex/speexdsp_types.h, so it can be easily worked around via the
check in configure script.

Along with this change, make the version check back to 1.2 from
1.2rc2, as 1.2rc1 works fine now again, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 configure.ac          | 6 +++++-
 pph/speex_resampler.h | 4 ++++
 2 files changed, 9 insertions(+), 1 deletion(-)

Patch
diff mbox

diff --git a/configure.ac b/configure.ac
index c554d2260b63..e786d8e7194b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -108,7 +108,7 @@  AC_SUBST(AVCODEC_CFLAGS)
 AC_SUBST(AVCODEC_LIBS)
 AC_SUBST(AVCODEC_HEADER)
 
-PKG_CHECK_MODULES(speexdsp, [speexdsp >= 1.2rc2], [HAVE_SPEEXDSP="yes"], [HAVE_SPEEXDSP=""])
+PKG_CHECK_MODULES(speexdsp, [speexdsp >= 1.2], [HAVE_SPEEXDSP="yes"], [HAVE_SPEEXDSP=""])
 AM_CONDITIONAL(HAVE_SPEEXDSP, test "$HAVE_SPEEXDSP" = "yes")
 
 AC_ARG_WITH([speex],
@@ -133,6 +133,10 @@  fi
 AM_CONDITIONAL(HAVE_PPH, test "$PPH" = "builtin" -o "$PPH" = "lib")
 AM_CONDITIONAL(USE_LIBSPEEX, test "$PPH" = "lib")
 
+if test "$PPH" = "lib"; then
+    AC_CHECK_HEADERS([speex/speexdsp_types.h])
+fi
+
 test "x$prefix" = xNONE && prefix=$ac_default_prefix
 test "x$exec_prefix" = xNONE && exec_prefix=$prefix
 
diff --git a/pph/speex_resampler.h b/pph/speex_resampler.h
index aa85abb8cc65..0e5ced45c580 100644
--- a/pph/speex_resampler.h
+++ b/pph/speex_resampler.h
@@ -82,7 +82,11 @@ 
       
 #else /* OUTSIDE_SPEEX */
 
+#ifdef HAVE_SPEEX_SPEEXDSP_TYPES_H
 #include "speex/speexdsp_types.h"
+#else
+#include "speex/speex_types.h"
+#endif
 
 #endif /* OUTSIDE_SPEEX */