From a1b880642244b9f732d327e1d93162652838bb06 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 1 Sep 2011 09:18:16 +0200 Subject: configure.ac: fail if libid3tag was enabled explicitly, but not found Add M4 function MPD_AUTO_PKG_LIB for pkg-config with AC_CHECK_LIB fallback. --- configure.ac | 15 +++++---------- m4/mpd_auto.m4 | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/configure.ac b/configure.ac index 4de63dac9..74aef61de 100644 --- a/configure.ac +++ b/configure.ac @@ -196,9 +196,9 @@ AC_ARG_ENABLE(httpd-output, [enable_httpd_output=auto]) AC_ARG_ENABLE(id3, - AS_HELP_STRING([--disable-id3], - [disable id3 support (default: enable)]),, - enable_id3=yes) + AS_HELP_STRING([--enable-id3], + [disable id3 support]),, + enable_id3=auto) AC_ARG_ENABLE(inotify, AS_HELP_STRING([--disable-inotify], @@ -510,13 +510,8 @@ fi AM_CONDITIONAL(HAVE_CUE, test x$enable_cue = xyes) dnl -------------------------------- libid3tag -------------------------------- -if test x$enable_id3 = xyes; then - PKG_CHECK_MODULES([ID3TAG], [id3tag],, - AC_CHECK_LIB(id3tag, id3_file_open, - [ID3TAG_LIBS="-lid3tag -lz" ID3TAG_CFLAGS=""], - enable_id3=no)) -fi - +MPD_AUTO_PKG_LIB(id3, ID3TAG, id3tag, id3tag, id3_file_open, [-lid3tag -lz], [], + [id3tag], [libid3tag not found]) if test x$enable_id3 = xyes; then AC_DEFINE(HAVE_ID3TAG, 1, [Define to use id3tag]) fi diff --git a/m4/mpd_auto.m4 b/m4/mpd_auto.m4 index 3f233938f..23713d5b7 100644 --- a/m4/mpd_auto.m4 +++ b/m4/mpd_auto.m4 @@ -63,3 +63,18 @@ AC_DEFUN([MPD_AUTO_PKG], [ MPD_AUTO_RESULT([$1], [$4], [$5]) ]) + +dnl Check with pkg-config first, fall back to AC_CHECK_LIB. +dnl +dnl Parameters: varname1, varname2, pkgname, libname, symname, libs, cflags, description, errmsg +AC_DEFUN([MPD_AUTO_PKG_LIB], [ + if eval "test x`echo '$'enable_$1` != xno"; then + PKG_CHECK_MODULES([$2], [$3], + [eval "found_$1=yes"], + AC_CHECK_LIB($4, $5, + [eval "found_$1=yes $2_LIBS='$6' $2_CFLAGS='$7'"], + [eval "found_$1=no"])) + fi + + MPD_AUTO_RESULT([$1], [$8], [$9]) +]) -- cgit v1.2.3