aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac5
-rw-r--r--m4/faad.m473
-rw-r--r--src/decoder/DecoderList.cxx2
4 files changed, 4 insertions, 78 deletions
diff --git a/Makefile.am b/Makefile.am
index 3d0723501..d89610bab 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -923,7 +923,7 @@ libdecoder_a_SOURCES += \
src/decoder/plugins/AdPlugDecoderPlugin.h
endif
-if HAVE_FAAD
+if ENABLE_FAAD
libdecoder_a_SOURCES += \
src/decoder/plugins/FaadDecoderPlugin.cxx src/decoder/plugins/FaadDecoderPlugin.hxx
endif
diff --git a/configure.ac b/configure.ac
index f25ccddc9..6c525062a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -876,9 +876,8 @@ fi
AM_CONDITIONAL(ENABLE_DSD, test x$enable_dsd = xyes)
dnl ----------------------------------- FAAD ----------------------------------
-AM_PATH_FAAD()
-
-AM_CONDITIONAL(HAVE_FAAD, test x$enable_aac = xyes)
+MPD_ENABLE_AUTO_LIB(aac, FAAD, faad, NeAACDecOpen, [-lfaad], [],
+ [FAAD decoder plugin], [libfaad not found])
dnl ---------------------------------- ffmpeg ---------------------------------
MPD_ENABLE_AUTO_PKG(ffmpeg, FFMPEG,
diff --git a/m4/faad.m4 b/m4/faad.m4
deleted file mode 100644
index 9dcb1ccab..000000000
--- a/m4/faad.m4
+++ /dev/null
@@ -1,73 +0,0 @@
-AC_DEFUN([AM_PATH_FAAD],
-[dnl ##
-dnl faad
-dnl ##
-
-AC_ARG_ENABLE(aac,
- AS_HELP_STRING([--disable-aac],
- [disable AAC support (default: enable)]),,
- enable_aac=yes)
-
-if test x$enable_aac = xyes; then
- FAAD_LIBS="-lfaad"
- FAAD_CFLAGS=""
-
- oldcflags=$CFLAGS
- oldlibs=$LIBS
- oldcppflags=$CPPFLAGS
- CFLAGS="$CFLAGS $FAAD_CFLAGS"
- LIBS="$LIBS $FAAD_LIBS"
- CPPFLAGS=$CFLAGS
- AC_CHECK_HEADER(faad.h,,enable_aac=no)
- if test x$enable_aac = xyes; then
- AC_CHECK_DECL(FAAD2_VERSION,,enable_aac=no,[#include <faad.h>])
- fi
- if test x$enable_aac = xyes; then
- AC_CHECK_LIB(faad,NeAACDecInit2,,enable_aac=no)
- fi
- if test x$enable_aac = xyes; then
- AC_MSG_CHECKING(that FAAD2 can even be used)
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([
-#include <faad.h>
-
-int main() {
- char buffer;
- NeAACDecHandle decoder;
- NeAACDecFrameInfo frameInfo;
- NeAACDecConfigurationPtr config;
- unsigned char channels;
- long sampleRate;
- long bufferlen = 0;
-
- decoder = NeAACDecOpen();
- config = NeAACDecGetCurrentConfiguration(decoder);
- config->outputFormat = FAAD_FMT_16BIT;
- NeAACDecSetConfiguration(decoder,config);
- NeAACDecInit(decoder,&buffer,bufferlen,&sampleRate,&channels);
- NeAACDecInit2(decoder,&buffer,bufferlen,&sampleRate,&channels);
- NeAACDecDecode(decoder,&frameInfo,&buffer,bufferlen);
- NeAACDecClose(decoder);
-
- return 0;
-}
-])],AC_MSG_RESULT(yes),[AC_MSG_RESULT(no);enable_aac=no])
- fi
- if test x$enable_aac = xyes; then
- AC_DEFINE(HAVE_FAAD,1,[Define to use FAAD2 for AAC decoding])
- else
- AC_MSG_WARN([faad2 lib needed for MP4/AAC support -- disabling MP4/AAC support])
- fi
- CFLAGS=$oldcflags
- LIBS=$oldlibs
- CPPFLAGS=$oldcppflags
-fi
-
-if test x$enable_aac = xno; then
- FAAD_LIBS=""
- FAAD_CFLAGS=""
-fi
-
-AC_SUBST(FAAD_CFLAGS)
-AC_SUBST(FAAD_LIBS)
-
-])
diff --git a/src/decoder/DecoderList.cxx b/src/decoder/DecoderList.cxx
index 42d0a512a..19037433b 100644
--- a/src/decoder/DecoderList.cxx
+++ b/src/decoder/DecoderList.cxx
@@ -74,7 +74,7 @@ const struct DecoderPlugin *const decoder_plugins[] = {
&dsdiff_decoder_plugin,
&dsf_decoder_plugin,
#endif
-#ifdef HAVE_FAAD
+#ifdef ENABLE_FAAD
&faad_decoder_plugin,
#endif
#ifdef ENABLE_MPCDEC