From 77d71c4ee62485f74ac46cdced504db862b79750 Mon Sep 17 00:00:00 2001 From: Yuriy Kaminskiy Date: Sun, 9 Jan 2011 18:21:27 +0100 Subject: Makefile.am: resolve modplug vs. libsndfile cflags/headers conflict A bit of automake magic (see info automake "Per-Object Flags"). Compile-tested. --- Makefile.am | 10 +++++++--- NEWS | 1 + configure.ac | 15 +-------------- 3 files changed, 9 insertions(+), 17 deletions(-) diff --git a/Makefile.am b/Makefile.am index 0966a2a66..cf79d0903 100644 --- a/Makefile.am +++ b/Makefile.am @@ -7,6 +7,8 @@ AM_CPPFLAGS += -DSYSTEM_CONFIG_FILE_LOCATION='"$(sysconfdir)/mpd.conf"' bin_PROGRAMS = src/mpd +noinst_LIBRARIES = + src_mpd_CFLAGS = $(AM_CFLAGS) $(MPD_CFLAGS) src_mpd_CPPFLAGS = $(AM_CPPFLAGS) \ $(LIBWRAP_CFLAGS) \ @@ -432,7 +434,6 @@ DECODER_CFLAGS = \ $(SNDFILE_CFLAGS) \ $(AUDIOFILE_CFLAGS) \ $(LIBMIKMOD_CFLAGS) \ - $(MODPLUG_CFLAGS) \ $(GME_CFLAGS) \ $(SIDPLAY_CFLAGS) \ $(FLUIDSYNTH_CFLAGS) \ @@ -448,7 +449,6 @@ DECODER_LIBS = \ $(FLAC_LIBS) \ $(SNDFILE_LIBS) \ $(AUDIOFILE_LIBS) $(LIBMIKMOD_LIBS) \ - $(MODPLUG_LIBS) \ $(GME_LIBS) \ $(SIDPLAY_LIBS) \ $(FLUIDSYNTH_LIBS) \ @@ -521,7 +521,11 @@ DECODER_SRC += src/decoder/mikmod_decoder_plugin.c endif if HAVE_MODPLUG -DECODER_SRC += src/decoder/modplug_decoder_plugin.c +libmodplug_decoder_plugin_a_SOURCES = src/decoder/modplug_decoder_plugin.c +libmodplug_decoder_plugin_a_CFLAGS = $(src_mpd_CFLAGS) $(MODPLUG_CFLAGS) +libmodplug_decoder_plugin_a_CPPFLAGS = $(src_mpd_CPPFLAGS) +noinst_LIBRARIES += libmodplug_decoder_plugin.a +DECODER_LIBS += libmodplug_decoder_plugin.a $(MODPLUG_LIBS) endif if ENABLE_SIDPLAY diff --git a/NEWS b/NEWS index 18075bcee..1c4b84ab2 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,7 @@ ver 0.16.1 (2010/??/??) - ffado: disable by default * decoder: - mad: work around build failure on Solaris + - resolve modplug vs. libsndfile cflags/headers conflict * output: - solaris: add missing parameter to open_cloexec() cal - osx: fix up audio format first, then apply it to device diff --git a/configure.ac b/configure.ac index a7e1612a5..c8a568ab4 100644 --- a/configure.ac +++ b/configure.ac @@ -13,6 +13,7 @@ dnl Programs dnl --------------------------------------------------------------------------- AC_PROG_CC_C99 AC_PROG_CXX +AC_PROG_RANLIB HAVE_CXX=yes if test x$CXX = xg++; then @@ -849,15 +850,6 @@ if test x$enable_modplug = xyes; then fi AM_CONDITIONAL(HAVE_MODPLUG, test x$enable_modplug = xyes) -dnl --------------------------- sndfile/modplug test -------------------------- -if test x$enable_sndfile = xauto && test x$enable_modplug = xyes; then - dnl If modplug is enabled, enable sndfile only if explicitly - dnl requested - modplug's modplug/sndfile.h is known to - dnl conflict with libsndfile's sndfile.h. - AC_MSG_NOTICE([disabling libsndfile auto-detection, because the modplug decoder is enabled]) - enable_sndfile=no -fi - dnl -------------------------------- libsndfile ------------------------------- dnl See above test, which may disable this. MPD_AUTO_PKG(sndfile, SNDFILE, [sndfile], @@ -1582,11 +1574,6 @@ results(mms,[MMS]) printf '\n\n##########################################\n\n' -if test x$enable_sndfile = xyes && test x$enable_modplug = xyes; then - AC_MSG_WARN([compilation may fail, because libmodplug conflicts with libsndfile]) - AC_MSG_WARN([libmodplug ships modplug/sndfile.h, which hides libsndfile's sndfile.h]) -fi - echo 'Generating files needed for compilation' dnl --------------------------------------------------------------------------- -- cgit v1.2.3