aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.ac12
-rw-r--r--m4/mpd_with_flags.m423
2 files changed, 27 insertions, 8 deletions
diff --git a/configure.ac b/configure.ac
index 4ff334c8f..1f8f4f75d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1019,14 +1019,10 @@ if test x$enable_tremor = xyes; then
elif test "x$tremor_prefix" != "x" ; then
TREMOR_CFLAGS="-I$tremor_prefix/include"
fi
- ac_save_CFLAGS="$CFLAGS"
- ac_save_LIBS="$LIBS"
- CFLAGS="$CFLAGS $TREMOR_CFLAGS"
- LIBS="$LIBS $TREMOR_LIBS"
- AC_CHECK_LIB(vorbisidec,ov_read,,enable_tremor=no;
- AC_MSG_WARN([vorbisidec lib needed for ogg support with tremor -- disabling ogg support]))
- CFLAGS="$ac_save_CFLAGS"
- LIBS="$ac_save_LIBS"
+
+ MPD_WITH_LIBRARY([TREMOR],
+ [AC_CHECK_LIB(vorbisidec,ov_read,,enable_tremor=no;
+ AC_MSG_WARN([vorbisidec lib needed for ogg support with tremor -- disabling ogg support]))])
fi
if test x$enable_tremor = xyes; then
diff --git a/m4/mpd_with_flags.m4 b/m4/mpd_with_flags.m4
new file mode 100644
index 000000000..4f82b7973
--- /dev/null
+++ b/m4/mpd_with_flags.m4
@@ -0,0 +1,23 @@
+dnl Run code with the specified CFLAGS/CXXFLAGS and LIBS appended.
+dnl Restores the old values afterwards.
+dnl
+dnl Parameters: cflags, libs, code
+AC_DEFUN([MPD_WITH_FLAGS], [
+ ac_save_CFLAGS="$[]CFLAGS"
+ ac_save_CXXFLAGS="$[]CXXFLAGS"
+ ac_save_LIBS="$[]LIBS"
+ CFLAGS="$[]CFLAGS $1"
+ CXXFLAGS="$[]CXXFLAGS $1"
+ LIBS="$[]LIBS $2"
+ $3
+ CFLAGS="$[]ac_save_CFLAGS"
+ CXXFLAGS="$[]ac_save_CXXFLAGS"
+ LIBS="$[]ac_save_LIBS"
+])
+
+dnl Run code with the specified library's CFLAGS/CXXFLAGS and LIBS
+dnl appended. Restores the old values afterwards.
+dnl
+dnl Parameters: libname, code
+AC_DEFUN([MPD_WITH_LIBRARY],
+ [MPD_WITH_FLAGS([$[]$1_CFLAGS], [$[]$1_LIBS], [$2])])