2003-10-13 11:03:14 -04:00
|
|
|
dnl Process this file with autoconf to produce a configure script.
|
2009-04-01 08:33:00 -04:00
|
|
|
|
2003-10-13 11:32:43 -04:00
|
|
|
AC_INIT(config.h.in)
|
2009-04-01 08:33:00 -04:00
|
|
|
AC_CONFIG_HEADER(config.h)
|
2009-06-12 05:09:58 -04:00
|
|
|
AM_INIT_AUTOMAKE(forked-daapd, 0.10)
|
2003-10-13 11:03:14 -04:00
|
|
|
|
2007-01-16 20:06:16 -05:00
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
|
|
|
|
2003-10-13 11:03:14 -04:00
|
|
|
dnl Checks for programs.
|
|
|
|
AC_PROG_CC
|
2009-04-01 10:20:53 -04:00
|
|
|
AM_PROG_CC_C_O
|
2009-04-05 12:22:48 -04:00
|
|
|
LT_INIT([disable-static])
|
2006-10-18 23:08:13 -04:00
|
|
|
|
2009-06-02 09:51:38 -04:00
|
|
|
AC_CHECK_PROG(ANTLR, [antlr3], [antlr3])
|
|
|
|
if test "x$ANTLR" = x; then
|
|
|
|
AC_MSG_NOTICE([antlr3 wrapper not found, checking direct java invocation])
|
|
|
|
AC_CHECK_PROG(JAVA, [java], [java])
|
|
|
|
if test "x$JAVA" = x; then
|
|
|
|
AC_MSG_FAILURE([java not found; check your java installation])
|
|
|
|
else
|
|
|
|
if $JAVA org.antlr.Tool > /dev/null 2>&1; then
|
|
|
|
AC_MSG_NOTICE([Direct java invocation working, using java org.antlr.Tool to invoke antlr])
|
|
|
|
ANTLR="$JAVA org.antlr.Tool"
|
|
|
|
else
|
|
|
|
AC_MSG_FAILURE([antlr3 wrapper not found and direct java invocation failed; check your antlr3/java installation])
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
AC_SUBST(ANTLR)
|
|
|
|
|
2010-02-02 15:00:06 -05:00
|
|
|
CFLAGS="$CFLAGS -Wall -D_LARGEFILE_SOURCE"
|
2009-04-05 12:31:00 -04:00
|
|
|
|
2006-02-26 03:46:24 -05:00
|
|
|
AC_CHECK_HEADERS([sys/wait.h])
|
2006-03-07 02:57:03 -05:00
|
|
|
AC_CHECK_HEADERS([sys/param.h])
|
2007-04-17 23:10:40 -04:00
|
|
|
AC_CHECK_HEADERS([sys/select.h])
|
2006-10-08 19:14:37 -04:00
|
|
|
AC_CHECK_HEADERS([dirent.h])
|
2010-02-04 12:52:13 -05:00
|
|
|
AC_CHECK_HEADERS([sys/eventfd.h])
|
|
|
|
AC_CHECK_FUNCS(eventfd)
|
2010-02-02 14:59:46 -05:00
|
|
|
AC_CHECK_FUNCS(posix_fadvise)
|
2006-02-26 03:46:24 -05:00
|
|
|
AC_CHECK_FUNCS(strptime)
|
|
|
|
AC_CHECK_FUNCS(strtok_r)
|
2006-04-15 04:53:56 -04:00
|
|
|
AC_CHECK_FUNCS(timegm)
|
|
|
|
|
2010-02-02 15:00:06 -05:00
|
|
|
dnl Large File Support (LFS)
|
|
|
|
AC_SYS_LARGEFILE
|
|
|
|
AC_TYPE_OFF_T
|
|
|
|
|
2009-04-01 11:41:24 -04:00
|
|
|
AC_ARG_ENABLE(flac, AC_HELP_STRING([--enable-flac], [Enable FLAC support]),
|
2005-02-26 19:41:55 -05:00
|
|
|
use_flac=true;
|
|
|
|
CPPFLAGS="${CPPFLAGS} -DFLAC")
|
|
|
|
|
2009-04-01 11:41:24 -04:00
|
|
|
AC_ARG_ENABLE(musepack, AC_HELP_STRING([--enable-musepack], [Enable Musepack support]),
|
2005-11-01 23:45:25 -05:00
|
|
|
use_musepack=true;
|
|
|
|
CPPFLAGS="${CPPFLAGS} -DMUSEPACK")
|
|
|
|
|
2009-11-22 05:09:59 -05:00
|
|
|
AC_ARG_ENABLE(itunes, AC_HELP_STRING([--enable-itunes], [Enable iTunes library support]),
|
|
|
|
use_itunes=true;
|
|
|
|
CPPFLAGS="${CPPFLAGS} -DITUNES")
|
|
|
|
|
2005-02-26 19:41:55 -05:00
|
|
|
AM_CONDITIONAL(COND_FLAC, test x$use_flac = xtrue)
|
2005-11-01 23:45:25 -05:00
|
|
|
AM_CONDITIONAL(COND_MUSEPACK, test x$use_musepack = xtrue)
|
2009-11-22 05:09:59 -05:00
|
|
|
AM_CONDITIONAL(COND_ITUNES, test x$use_itunes = xtrue)
|
2007-04-13 17:37:42 -04:00
|
|
|
|
2003-10-13 11:03:14 -04:00
|
|
|
dnl Checks for libraries.
|
2009-04-18 08:14:26 -04:00
|
|
|
PKG_CHECK_MODULES(CONFUSE, [ libconfuse ])
|
2009-04-01 10:20:53 -04:00
|
|
|
PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.24 ])
|
2010-04-04 15:26:55 -04:00
|
|
|
PKG_CHECK_MODULES(SQLITE3, [ sqlite3 >= 3.5.0 ])
|
2010-04-26 12:24:09 -04:00
|
|
|
|
|
|
|
save_LIBS="$LIBS"
|
|
|
|
LIBS="$SQLITE3_LIBS"
|
2010-04-26 12:24:09 -04:00
|
|
|
dnl Check that SQLite3 has the unlock notify API built-in
|
|
|
|
AC_CHECK_LIB([sqlite3], [sqlite3_unlock_notify], [], AC_MSG_ERROR([SQLite3 was built without unlock notify support]))
|
2010-04-26 12:24:09 -04:00
|
|
|
dnl Check that SQLite3 has been built with threadsafe operations
|
|
|
|
AC_MSG_CHECKING([if SQLite3 was built with threadsafe operations support])
|
|
|
|
AC_LANG_PUSH([C])
|
|
|
|
AC_RUN_IFELSE(
|
|
|
|
[AC_LANG_PROGRAM([dnl
|
|
|
|
#include <sqlite3.h>
|
|
|
|
], [dnl
|
|
|
|
int ret = sqlite3_config(SQLITE_CONFIG_MULTITHREAD);
|
|
|
|
if (ret != SQLITE_OK)
|
|
|
|
return 1;
|
|
|
|
return 0;])],
|
|
|
|
[AC_MSG_RESULT([yes])], [AC_MSG_ERROR([SQLite3 was not built with threadsafe operations support])],
|
|
|
|
[AC_MSG_RESULT([runtime will tell])])
|
|
|
|
AC_LANG_POP([C])
|
|
|
|
LIBS="$save_LIBS"
|
|
|
|
|
2010-03-07 04:30:29 -05:00
|
|
|
PKG_CHECK_MODULES(FFMPEG, [ libavcodec libavformat libswscale libavutil ])
|
2009-04-24 09:41:20 -04:00
|
|
|
PKG_CHECK_MODULES(MINIXML, [ mxml ])
|
2009-04-05 04:06:03 -04:00
|
|
|
|
2009-04-07 06:50:46 -04:00
|
|
|
AC_CHECK_HEADER(event.h, , AC_MSG_ERROR([event.h not found]))
|
|
|
|
AC_CHECK_LIB([event_core], [event_init], [LIBEVENT_LIBS="-levent_core"], AC_MSG_ERROR([libevent not found]))
|
2009-04-22 11:42:17 -04:00
|
|
|
AC_CHECK_HEADER(evhttp.h, , AC_MSG_ERROR([evhttp.h not found]))
|
2009-05-02 11:58:38 -04:00
|
|
|
dnl save_LIBS="$LIBS"
|
|
|
|
dnl LIBS=-levent_core
|
|
|
|
dnl AC_CHECK_LIB([event_extra], [evhttp_new], [LIBEVENT_LIBS="$LIBEVENT_LIBS -levent_extra"], AC_MSG_ERROR([libevent not found]))
|
|
|
|
dnl LIBS="$save_LIBS"
|
2009-04-07 06:50:46 -04:00
|
|
|
AC_SUBST(LIBEVENT_LIBS)
|
|
|
|
|
2009-04-19 09:10:19 -04:00
|
|
|
AC_CHECK_HEADER(avl.h, , AC_MSG_ERROR([avl.h not found]))
|
|
|
|
AC_CHECK_LIB([avl], [avl_alloc_tree], [LIBAVL_LIBS="-lavl"], AC_MSG_ERROR([libavl not found]))
|
|
|
|
AC_SUBST(LIBAVL_LIBS)
|
|
|
|
|
2009-06-02 09:51:38 -04:00
|
|
|
AC_CHECK_HEADER(antlr3.h, , AC_MSG_ERROR([antlr3.h not found]))
|
|
|
|
AC_CHECK_LIB([antlr3c], [antlr3BaseRecognizerNew], [ANTLR3C_LIBS="-lantlr3c"], AC_MSG_ERROR([ANTLR3 C runtime (libantlr3c) not found]))
|
|
|
|
AC_SUBST(ANTLR3C_LIBS)
|
|
|
|
|
2010-02-05 12:38:39 -05:00
|
|
|
AM_PATH_LIBGCRYPT([], , AC_MSG_ERROR([libgcrypt not found]))
|
|
|
|
|
2009-04-01 12:12:22 -04:00
|
|
|
if test x$use_flac = xtrue; then
|
|
|
|
PKG_CHECK_MODULES(FLAC, [ flac ])
|
|
|
|
fi
|
|
|
|
|
2009-04-01 12:18:31 -04:00
|
|
|
if test x$use_musepack = xtrue; then
|
|
|
|
PKG_CHECK_MODULES(TAGLIB, [ taglib_c ])
|
|
|
|
fi
|
|
|
|
|
2009-11-22 05:09:59 -05:00
|
|
|
if test x$use_itunes = xtrue; then
|
2009-12-09 13:16:20 -05:00
|
|
|
PKG_CHECK_MODULES(LIBPLIST, [ libplist >= 0.16 ])
|
2009-11-22 05:09:59 -05:00
|
|
|
fi
|
|
|
|
|
2010-01-09 07:40:28 -05:00
|
|
|
case "$host" in
|
|
|
|
*linux*)
|
2010-04-04 06:40:47 -04:00
|
|
|
use_alsa=true
|
|
|
|
PKG_CHECK_MODULES(ALSA, [ alsa ])
|
|
|
|
AC_DEFINE(LAUDIO_USE_ALSA, 1, [define if local audio output uses ALSA])
|
|
|
|
|
2010-01-09 07:40:28 -05:00
|
|
|
AC_CHECK_HEADER(sys/signalfd.h, , AC_MSG_ERROR([signalfd required; glibc 2.9+ recommended]))
|
|
|
|
;;
|
|
|
|
esac
|
2009-04-08 07:52:26 -04:00
|
|
|
|
2010-04-04 06:40:47 -04:00
|
|
|
AM_CONDITIONAL(COND_ALSA, test x$use_alsa = xtrue)
|
|
|
|
|
2010-01-09 07:39:45 -05:00
|
|
|
AC_CHECK_SIZEOF(void *)
|
|
|
|
|
2005-02-28 16:49:23 -05:00
|
|
|
AC_CHECK_HEADERS(getopt.h,,)
|
2006-06-14 00:19:17 -04:00
|
|
|
AC_CHECK_HEADERS(stdint.h,,)
|
2005-02-28 23:19:27 -05:00
|
|
|
|
2003-10-13 11:03:14 -04:00
|
|
|
dnl Checks for header files.
|
|
|
|
AC_HEADER_STDC
|
2003-10-13 11:32:43 -04:00
|
|
|
AC_HEADER_SYS_WAIT
|
2009-04-01 12:31:02 -04:00
|
|
|
|
2009-06-12 05:18:56 -04:00
|
|
|
AC_OUTPUT(src/Makefile Makefile)
|