configure.ac: add macro MPD_AUTO

This commit is contained in:
Max Kellermann 2014-11-23 07:39:05 +01:00
parent c643b6ff16
commit 1a61b01315
2 changed files with 22 additions and 27 deletions

View File

@ -199,12 +199,10 @@ AC_ARG_ENABLE(syslog,
AS_HELP_STRING([--enable-syslog], AS_HELP_STRING([--enable-syslog],
[enable syslog support (default: auto)]),, [enable syslog support (default: auto)]),,
enable_syslog=auto) enable_syslog=auto)
if test x$enable_syslog != xno; then MPD_AUTO(syslog, [syslog support], [syslog() not available],
AC_SEARCH_LIBS([syslog], [bsd socket inet], [AC_SEARCH_LIBS([syslog], [bsd socket inet],
[found_syslog=yes], [found_syslog=yes],
[found_syslog=no]) [found_syslog=no])])
fi
MPD_AUTO_RESULT([syslog], [syslog support], [syslog() not available])
if test x$enable_syslog = xyes; then if test x$enable_syslog = xyes; then
AC_DEFINE(HAVE_SYSLOG, 1, [Define if syslog() is available]) AC_DEFINE(HAVE_SYSLOG, 1, [Define if syslog() is available])
fi fi
@ -774,14 +772,12 @@ MPD_ENABLE_AUTO_PKG(despotify, DESPOTIFY, [despotify],
[Despotify support], [despotify not found]) [Despotify support], [despotify not found])
dnl --------------------------------- Soundcloud ------------------------------ dnl --------------------------------- Soundcloud ------------------------------
if test x$enable_soundcloud != xno; then MPD_AUTO([soundcloud], [soundcloud.com support], [libyajl not found],
PKG_CHECK_MODULES([YAJL], [yajl >= 2.0], [PKG_CHECK_MODULES([YAJL], [yajl >= 2.0],
[found_soundcloud=yes], [found_soundcloud=yes],
AC_CHECK_LIB([yajl], [yajl_parse_complete], AC_CHECK_LIB([yajl], [yajl_parse_complete],
[found_soundcloud=yes YAJL_CFLAGS=-DHAVE_YAJL1 YAJL_LIBS=-lyajl], [found_soundcloud=yes YAJL_CFLAGS=-DHAVE_YAJL1 YAJL_LIBS=-lyajl],
[found_soundcloud=no])) [found_soundcloud=no]))])
fi
MPD_AUTO_RESULT([soundcloud], [soundcloud.com support], [libyajl not found])
if test x$enable_soundcloud = xyes; then if test x$enable_soundcloud = xyes; then
AC_DEFINE(ENABLE_SOUNDCLOUD, 1, [Define when soundcloud is enabled]) AC_DEFINE(ENABLE_SOUNDCLOUD, 1, [Define when soundcloud is enabled])
fi fi

View File

@ -35,30 +35,32 @@ AC_DEFUN([MPD_AUTO_RESULT], [
fi fi
]) ])
AC_DEFUN([MPD_AUTO_PKG], [ dnl Parameters: varname1, description, errmsg, check
AC_DEFUN([MPD_AUTO], [
if test x$[]enable_$1 != xno; then if test x$[]enable_$1 != xno; then
PKG_CHECK_MODULES([$2], [$3], $4
[found_$1=yes],
[found_$1=no])
fi fi
MPD_AUTO_RESULT([$1], [$2], [$3])
])
MPD_AUTO_RESULT([$1], [$4], [$5]) AC_DEFUN([MPD_AUTO_PKG], [
MPD_AUTO([$1], [$4], [$5],
[PKG_CHECK_MODULES([$2], [$3],
[found_$1=yes],
[found_$1=no])])
]) ])
dnl Check with pkg-config first, fall back to AC_CHECK_LIB. dnl Check with pkg-config first, fall back to AC_CHECK_LIB.
dnl dnl
dnl Parameters: varname1, varname2, pkgname, libname, symname, libs, cflags, description, errmsg dnl Parameters: varname1, varname2, pkgname, libname, symname, libs, cflags, description, errmsg
AC_DEFUN([MPD_AUTO_PKG_LIB], [ AC_DEFUN([MPD_AUTO_PKG_LIB], [
if test x$[]enable_$1 != xno; then MPD_AUTO([$1], [$8], [$9],
PKG_CHECK_MODULES([$2], [$3], [PKG_CHECK_MODULES([$2], [$3],
[found_$1=yes], [found_$1=yes],
AC_CHECK_LIB($4, $5, AC_CHECK_LIB($4, $5,
[found_$1=yes $2_LIBS='$6' $2_CFLAGS='$7'], [found_$1=yes $2_LIBS='$6' $2_CFLAGS='$7'],
[found_$1=no], [found_$1=no],
[$6])) [$6]))])
fi
MPD_AUTO_RESULT([$1], [$8], [$9])
]) ])
dnl Wrapper for AC_CHECK_LIB. dnl Wrapper for AC_CHECK_LIB.
@ -68,14 +70,11 @@ AC_DEFUN([MPD_AUTO_LIB], [
AC_SUBST([$2_LIBS], []) AC_SUBST([$2_LIBS], [])
AC_SUBST([$2_CFLAGS], []) AC_SUBST([$2_CFLAGS], [])
if test x$[]enable_$1 != xno; then MPD_AUTO([$1], [$7], [$8],
AC_CHECK_LIB($3, $4, [AC_CHECK_LIB($3, $4,
[found_$1=yes $2_LIBS='$5' $2_CFLAGS='$6'], [found_$1=yes $2_LIBS='$5' $2_CFLAGS='$6'],
[found_$1=no], [found_$1=no],
[$5]) [$5])])
fi
MPD_AUTO_RESULT([$1], [$7], [$8])
]) ])
dnl Wrapper for AC_ARG_ENABLE and MPD_AUTO_PKG dnl Wrapper for AC_ARG_ENABLE and MPD_AUTO_PKG