From ccdadf251a2b4bd4be008dd8c8f21ed7ed95dc9d Mon Sep 17 00:00:00 2001
From: Cameron Cawley <[EMAIL REDACTED]>
Date: Tue, 11 Jan 2022 22:10:02 +0000
Subject: [PATCH] Use pkg-config to detect fluidsynth, tremor, libvorbis, FLAC
and libmpg123
---
configure.ac | 65 ++++++++++++++++++++++++++++++++++++----------------
1 file changed, 45 insertions(+), 20 deletions(-)
diff --git a/configure.ac b/configure.ac
index 215574b5..96a3b196 100644
--- a/configure.ac
+++ b/configure.ac
@@ -466,8 +466,13 @@ if test x$enable_music_midi = xyes; then
[AS_HELP_STRING([--enable-music-midi-fluidsynth-shared], [dynamically load FluidSynth library [default=yes]])],
[], [enable_music_midi_fluidsynth_shared=yes])
if test x$enable_music_midi_fluidsynth = xyes; then
- AC_CHECK_HEADER([fluidsynth.h], [have_fluidsynth_hdr=yes])
- AC_CHECK_LIB([fluidsynth], [fluid_player_add_mem], [have_fluidsynth_lib=yes])
+ PKG_CHECK_MODULES([FLUIDSYNTH], [fluidsynth], [dnl
+ have_fluidsynth_hdr=yes
+ have_fluidsynth_lib=yes
+ ], [dnl
+ AC_CHECK_HEADER([fluidsynth.h], [have_fluidsynth_hdr=yes])
+ AC_CHECK_LIB([fluidsynth], [fluid_player_add_mem], [have_fluidsynth_lib=yes;FLUIDSYNTH_LIBS="-lfluidsynth"])
+ ])
if test x$have_fluidsynth_hdr = xyes -a x$have_fluidsynth_lib = xyes; then
have_fluidsynth=yes
case "$host" in
@@ -487,12 +492,12 @@ if test x$enable_music_midi = xyes; then
fi
;;
esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_MID_FLUIDSYNTH"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_MID_FLUIDSYNTH $FLUIDSYNTH_CFLAGS"
if test x$enable_music_midi_fluidsynth_shared = xyes && test x$fluidsynth_lib != x; then
echo "-- dynamic libfluidsynth -> $fluidsynth_lib"
EXTRA_CFLAGS="$EXTRA_CFLAGS -DFLUIDSYNTH_DYNAMIC=\\\"$fluidsynth_lib\\\""
else
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lfluidsynth"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FLUIDSYNTH_LIBS"
fi
else
AC_MSG_WARN([*** Unable to find FluidSynth library (http://www.fluidsynth.org/)])
@@ -519,8 +524,13 @@ AC_ARG_ENABLE([music-ogg-shared],
if test x$enable_music_ogg = xyes; then
LIBS_SAVED="$LIBS"
if test x$enable_music_ogg_tremor = xyes; then
- AC_CHECK_HEADER([tremor/ivorbisfile.h], [have_tremor_hdr=yes])
- AC_CHECK_LIB([vorbisidec], [ov_open_callbacks], [have_tremor_lib=yes], [], [-logg])
+ PKG_CHECK_MODULES([TREMOR], [vorbisidec], [dnl
+ have_tremor_hdr=yes
+ have_tremor_lib=yes
+ ], [dnl
+ AC_CHECK_HEADER([tremor/ivorbisfile.h], [have_tremor_hdr=yes])
+ AC_CHECK_LIB([vorbisidec], [ov_open_callbacks], [have_tremor_lib=yes;TREMOR_LIBS="-lvorbisidec -logg"], [], [-logg])
+ ])
if test x$have_tremor_hdr = xyes -a x$have_tremor_lib = xyes; then
case "$host" in
*-*-darwin*)
@@ -539,20 +549,25 @@ if test x$enable_music_ogg = xyes; then
fi
;;
esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_OGG -DOGG_USE_TREMOR"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_OGG -DOGG_USE_TREMOR $TREMOR_CFLAGS"
if test x$enable_music_ogg_shared = xyes && test x$ogg_lib != x; then
echo "-- dynamic libvorbisidec -> $ogg_lib"
EXTRA_CFLAGS="$EXTRA_CFLAGS -DOGG_DYNAMIC=\\\"$ogg_lib\\\""
else
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvorbisidec"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $TREMOR_LIBS"
fi
else
AC_MSG_WARN([*** Unable to find Ogg Vorbis Tremor library (http://www.xiph.org/)])
AC_MSG_WARN([Ogg Vorbis support disabled])
fi
else
- AC_CHECK_HEADER([vorbis/vorbisfile.h], [have_ogg_hdr=yes])
- AC_CHECK_LIB([vorbisfile], [ov_open_callbacks], [have_ogg_lib=yes], [], [-lvorbis -logg -lm])
+ PKG_CHECK_MODULES([VORBIS], [vorbisfile], [dnl
+ have_ogg_hdr=yes
+ have_ogg_lib=yes
+ ], [dnl
+ AC_CHECK_HEADER([vorbis/vorbisfile.h], [have_ogg_hdr=yes])
+ AC_CHECK_LIB([vorbisfile], [ov_open_callbacks], [have_ogg_lib=yes;VORBIS_LIBS="-lvorbisfile -lvorbis -logg -lm"], [], [-lvorbis -logg -lm])
+ ])
if test x$have_ogg_hdr = xyes -a x$have_ogg_lib = xyes; then
case "$host" in
*-*-darwin*)
@@ -568,12 +583,12 @@ if test x$enable_music_ogg = xyes; then
fi
;;
esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_OGG"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_OGG $VORBIS_CFLAGS"
if test x$enable_music_ogg_shared = xyes && test x$ogg_lib != x; then
echo "-- dynamic libvorbisfile -> $ogg_lib"
EXTRA_CFLAGS="$EXTRA_CFLAGS -DOGG_DYNAMIC=\\\"$ogg_lib\\\""
else
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvorbisfile -lvorbis"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $VORBIS_LIBS"
fi
else
AC_MSG_WARN([*** Unable to find Ogg Vorbis library (http://www.xiph.org/)])
@@ -611,8 +626,13 @@ if test x$enable_music_flac = xyes; then
fi
if test x$have_flac_ver = xyes; then
- AC_CHECK_HEADER([FLAC/stream_decoder.h], [have_flac_hdr=yes])
- AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_new], [have_flac_lib=yes])
+ PKG_CHECK_MODULES([FLAC], [flac], [dnl
+ have_flac_hdr=yes
+ have_flac_lib=yes
+ ], [dnl
+ AC_CHECK_HEADER([FLAC/stream_decoder.h], [have_flac_hdr=yes])
+ AC_CHECK_LIB([FLAC], [FLAC__stream_decoder_new], [have_flac_lib=yes;FLAC_LIBS="-lFLAC"])
+ ])
if test x$have_flac_hdr = xyes -a x$have_flac_lib = xyes; then
case "$host" in
*-*-darwin*)
@@ -628,12 +648,12 @@ if test x$enable_music_flac = xyes; then
fi
;;
esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_FLAC"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_FLAC $FLAC_CFLAGS"
if test x$enable_music_flac_shared = xyes && test x$flac_lib != x; then
echo "-- dynamic libFLAC -> $flac_lib"
EXTRA_CFLAGS="$EXTRA_CFLAGS -DFLAC_DYNAMIC=\\\"$flac_lib\\\""
else
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lFLAC"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FLAC_LIBS"
fi
fi
else
@@ -678,8 +698,13 @@ AC_ARG_ENABLE([music-mp3-mpg123-shared],
[AS_HELP_STRING([--enable-music-mp3-mpg123-shared], [dynamically load libmpg123 library [default=yes]])],
[], [enable_music_mp3_mpg123_shared=yes])
if test x$enable_music_mp3_mpg123 = xyes; then
- AC_CHECK_HEADER([mpg123.h], [have_mpg123_hdr=yes])
- AC_CHECK_LIB([mpg123], [mpg123_replace_reader_handle], [have_mpg123_lib=yes])
+ PKG_CHECK_MODULES([MPG123], [libmpg123], [dnl
+ have_mpg123_hdr=yes
+ have_mpg123_lib=yes
+ ], [dnl
+ AC_CHECK_HEADER([mpg123.h], [have_mpg123_hdr=yes])
+ AC_CHECK_LIB([mpg123], [mpg123_replace_reader_handle], [have_mpg123_lib=yes;MPG123_LIBS="-lmpg123"])
+ ])
if test x$have_mpg123_hdr = xyes -a x$have_mpg123_lib = xyes; then
have_libmpg123=yes
case "$host" in
@@ -693,12 +718,12 @@ if test x$enable_music_mp3_mpg123 = xyes; then
mpg123_lib=[`find_lib "libmpg123.so.*"`]
;;
esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_MP3_MPG123"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DMUSIC_MP3_MPG123 $MPG123_CFLAGS"
if test x$enable_music_mp3_mpg123_shared = xyes && test x$mpg123_lib != x; then
echo "-- dynamic libmpg123 -> $mpg123_lib"
EXTRA_CFLAGS="$EXTRA_CFLAGS -DMPG123_DYNAMIC=\\\"$mpg123_lib\\\""
else
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lmpg123"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MPG123_LIBS"
fi
else
AC_MSG_WARN([*** Unable to find mpg123 library (https://www.mpg123.de)])