owntone-server/configure.in

418 lines
12 KiB
Plaintext
Raw Normal View History

2003-10-13 11:32:43 -04:00
dnl $Id$
2003-10-13 11:03:14 -04:00
dnl
dnl Process this file with autoconf to produce a configure script.
2003-10-13 11:32:43 -04:00
AC_INIT(config.h.in)
2003-10-13 11:03:14 -04:00
AM_CONFIG_HEADER(config.h)
2005-02-05 16:26:16 -05:00
AM_INIT_AUTOMAKE(mt-daapd,0.2.1.1)
2003-10-13 11:03:14 -04:00
dnl Checks for programs.
AC_PROG_CC
2005-07-13 01:32:16 -04:00
dnl AC_PROG_YACC
dnl AM_PROG_LEX
2006-05-01 04:07:56 -04:00
AC_PROG_LIBTOOL
2003-10-13 11:32:43 -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])
2006-02-26 03:46:24 -05:00
AC_CHECK_FUNCS(strptime)
AC_CHECK_FUNCS(strtok_r)
AC_CHECK_FUNCS(timegm)
2003-12-01 10:27:40 -05:00
AM_CONDITIONAL(COND_REND_OSX,false)
2005-02-28 23:19:27 -05:00
2006-04-10 18:26:57 -04:00
AC_FUNC_SETPGRP
if test "x$prefix" != xNONE -a "x$prefix" != "x/usr"; then
CONFFILE="$prefix/etc/mt-daapd.conf"
else
if test "x$prefix" = "xNONE"; then
CONFFILE="/usr/local/etc/mt-daapd.conf"
else
CONFFILE="/etc/mt-daapd.conf"
fi
fi
AC_DEFINE_UNQUOTED(CONFFILE,"${CONFFILE}",Where the config file is)
rend_posix=true
2006-01-16 17:28:44 -05:00
db_sqlite=false
2006-01-06 12:43:38 -05:00
db_sqlite3=false
2006-05-27 06:33:08 -04:00
use_ffmpeg=false;
2003-12-01 10:27:40 -05:00
2004-04-14 23:06:43 -04:00
STATIC_LIBS=no
2005-03-11 01:39:40 -05:00
CPPFLAGS="${CPPFLAGS} -g -Wall"
2004-04-14 23:06:43 -04:00
2005-01-23 20:03:43 -05:00
dnl fix freebsd's broken (?) libpthread
2006-01-16 15:23:50 -05:00
AC_CHECK_LIB(c_r,pthread_creat,LIBS="${LIBS} -lc_r", [
AC_CHECK_LIB(pthread,pthread_create,LIBS="${LIBS} -lpthread") ])
2005-03-11 01:39:40 -05:00
AC_ARG_ENABLE(sqlite,[ --enable-sqlite Enable the sqlite db backend],
[ case "${enableval}" in
2006-03-12 17:34:51 -05:00
yes) db_sqlite=true; have_sql=true;;
2005-03-11 01:39:40 -05:00
no) db_sqlite=false;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-sqlite);;
esac ])
2006-01-06 12:43:38 -05:00
AC_ARG_ENABLE(sqlite3,[ --enable-sqlite3 Enable sqlite3 db backend],
[ case "${enableval}" in
2006-03-12 17:34:51 -05:00
yes) db_sqlite3=true; have_sql=true;;
2006-01-06 12:43:38 -05:00
no) db_sqlite3=false;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-sqlite3);;
esac ])
AC_ARG_ENABLE(mdns,[ --enable-mdns Enable mDNS support],
[ case "${enableval}" in
yes) ;;
no) rend_posix=false; rend_howl=false; CPPFLAGS="${CPPFLAGS} -DWITHOUT_MDNS";;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-mdns);;
esac ])
2004-10-25 00:49:47 -04:00
AC_ARG_ENABLE(nslu2,[ --enable-nslu2 Build for NSLU2/uNSLUng],
CFLAGS="${CFLAGS} -DNSLU2")
AC_ARG_ENABLE(howl,[ --enable-howl Use howl 0.9.2 or later],
[ case "${enableval}" in
2006-01-16 15:23:50 -05:00
yes) rend_howl=true; rend_posix=false; LIBS="${LIBS} -lhowl";
CPPFLAGS="${CPPFLAGS} -DWITH_HOWL";;
no) rend_howl=false;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-howl);;
esac ])
2003-11-17 11:37:39 -05:00
AC_ARG_ENABLE(oggvorbis,[ --enable-oggvorbis Enable Ogg/Vorbis support],
2005-08-13 01:07:29 -04:00
[ case "${enableval}" in
yes) use_oggvorbis=true;
CPPFLAGS="${CPPFLAGS} -DOGGVORBIS";;
no) use_oggvorbis=false;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-oggvorbis);;
esac ])
AC_ARG_ENABLE(flac,[ --enable-flac Enable FLAC support],
use_flac=true;
CPPFLAGS="${CPPFLAGS} -DFLAC")
2005-11-01 23:45:25 -05:00
AC_ARG_ENABLE(musepack,[ --enable-musepack Enable Musepack support],
use_musepack=true;
CPPFLAGS="${CPPFLAGS} -DMUSEPACK")
2006-03-26 20:48:43 -05:00
AC_ARG_ENABLE(gdbm,[ --enable-gdbm Enable gdbm support],
use_gdbm=true;
CPPFLAGS="${CPPFLAGS} -DGDBM")
2006-05-27 06:33:08 -04:00
AC_ARG_ENABLE(ffmpeg,[ --enable-ffmpeg Enable ffmpeg transcode support],
use_ffmpeg=true;)
2006-03-26 20:48:43 -05:00
2003-11-17 11:37:39 -05:00
AM_CONDITIONAL(COND_REND_HOWL, test x$rend_howl = xtrue)
AM_CONDITIONAL(COND_REND_POSIX, test x$rend_posix = xtrue)
AM_CONDITIONAL(COND_OGGVORBIS, test x$use_oggvorbis = xtrue)
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)
2005-03-11 01:39:40 -05:00
AM_CONDITIONAL(COND_SQLITE,test x$db_sqlite = xtrue)
2006-01-06 12:43:38 -05:00
AM_CONDITIONAL(COND_SQLITE3,test x$db_sqlite3 = xtrue)
2006-03-26 20:48:43 -05:00
AM_CONDITIONAL(COND_GDBM,test x$use_gdbm = xtrue)
2006-05-27 06:33:08 -04:00
AM_CONDITIONAL(COND_FFMPEG,test x$use_ffmpeg = xtrue)
2004-01-12 23:29:30 -05:00
AM_CONDITIONAL(COND_NEED_STRCASESTR,false)
AM_CONDITIONAL(COND_NEED_STRSEP,false)
2006-05-27 06:33:08 -04:00
2006-03-12 17:34:51 -05:00
if test x$have_sql = xtrue; then
CPPFLAGS="${CPPFLAGS} -DHAVE_SQL"
fi
2006-01-06 12:43:38 -05:00
if test x$db_sqlite = xtrue -o x$db_sqlite3 = xtrue; then
AM_CONDITIONAL(COND_SQL,true)
fi
2006-01-16 17:28:44 -05:00
if test x$db_sqlite = xfalse -a x$db_sqlite3 = xfalse; then
echo "Must use either --enable-sqlite or --enable-sqlite3"
exit;
fi
2003-10-13 11:32:43 -04:00
dnl Darwin's stupid cpp preprocessor....
2003-10-25 15:38:14 -04:00
echo Host type is $host
CPPFLAGS="$CPPFLAGS -DHOST='\"$host\"'"
2004-04-02 01:48:24 -05:00
2004-05-09 23:24:25 -04:00
dnl
dnl The apple mDNS stuff wants these compile flags.
dnl
2004-04-02 01:48:24 -05:00
2003-10-13 11:32:43 -04:00
case $host in
2004-01-12 19:13:53 -05:00
*solaris*)
2004-05-10 23:10:28 -04:00
CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN -D_XPG4_2"
2004-03-01 19:33:05 -05:00
CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME"
2004-05-10 23:10:28 -04:00
CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lnsl -lsocket";;
2005-09-23 01:26:52 -04:00
*freebsd*)
CPPFLAGS="$CPPFLAGS -DFREEBSD";;
2003-11-03 14:02:00 -05:00
*linux*)
2004-03-01 19:33:05 -05:00
CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN";;
*openbsd*)
CPPFLAGS="$CPPFLAGS -DHAVE_BROKEN_RECVDSTADDR";;
2003-10-13 11:32:43 -04:00
*darwin*)
2004-03-01 19:33:05 -05:00
CPPFLAGS="$CPPFLAGS -no-cpp-precomp -DMAC"
LDFLAGS="$LDFLAGS -framework CoreFoundation"
2003-12-01 00:31:11 -05:00
AM_CONDITIONAL(COND_REND_OSX,true)
AM_CONDITIONAL(COND_REND_HOWL,false)
AM_CONDITIONAL(COND_REND_POSIX,false);;
2003-10-13 11:32:43 -04:00
esac
2006-03-25 18:19:21 -05:00
2003-10-13 11:03:14 -04:00
dnl Checks for libraries.
2004-04-14 23:06:43 -04:00
AC_ARG_WITH(static-libs,
[--with-static-libs[[=DIR]] use static libs in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
STATIC_LIBS="$withval"
fi
])
2004-01-27 17:41:35 -05:00
AC_ARG_WITH(howl-includes,
[--with-howl-includes[[=DIR]] use howl include files in DIR],[
2003-11-09 22:57:39 -05:00
if test "$withval" != "no" -a "$withval" != "yes"; then
2004-01-27 17:41:35 -05:00
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval"
fi
])
AC_ARG_WITH(howl-libs,
[--with-howl-libs[[=DIR]] use howl lib files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
LDFLAGS="${LDFLAGS} -L$withval -R$withval"
2003-11-09 22:57:39 -05:00
fi
])
2004-01-27 17:41:35 -05:00
2006-03-26 20:48:43 -05:00
AC_ARG_WITH(gdbm-includes,
[--with-gdbm-includes[[=DIR]] use gdbm include files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval"
fi
])
AC_ARG_WITH(gdbm-libs,
[--with-gdbm-libs[[=DIR]] use gdbm lib files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
LDFLAGS="${LDFLAGS} -L$withval -R$withval"
fi
])
AC_ARG_WITH(sqlite-includes,
[--with-sqlite-includes[[=DIR]] use sqlite include files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval -R$withval"
fi
])
AC_ARG_WITH(sqlite-libs,
[--with-sqlite-libs[[=DIR]] use sqlite lib files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
LDFLAGS="${LDFLAGS} -L$withval -R$withval"
fi
])
AC_ARG_WITH(sqlite3-includes,
[--with-sqlite3-includes[[=DIR]] use sqlite3 include files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval"
fi
])
AC_ARG_WITH(sqlite3-libs,
[--with-sqlite3-libs[[=DIR]] use sqlite3 lib files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
LDFLAGS="${LDFLAGS} -L$withval -R$withval"
2006-03-26 20:48:43 -05:00
fi
])
2006-05-27 06:33:08 -04:00
AC_ARG_WITH(ffmpeg-includes,
[--with-ffmpeg-includes[[=DIR]] use ffmpeg include files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval"
fi
])
AC_ARG_WITH(ffmpeg-libs,
[--with-ffmpeg-libs[[=DIR]] use ffmpeg lib files in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
LDFLAGS="${LDFLAGS} -L$withval -R$withval"
fi
])
2003-11-09 22:57:39 -05:00
AC_ARG_WITH(id3tag,
[--with-id3tag[[=DIR]] use id3tag in DIR],[
if test "$withval" != "no" -a "$withval" != "yes"; then
Z_DIR=$withval
CPPFLAGS="${CPPFLAGS} -I$withval/include"
LDFLAGS="${LDFLAGS} -L$withval/lib -R$withval/lib"
2003-11-09 22:57:39 -05:00
fi
])
2004-04-06 10:06:16 -04: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
2004-04-14 23:06:43 -04:00
AC_CHECK_HEADERS(id3tag.h,, [
2004-04-05 14:35:43 -04:00
AC_MSG_ERROR([id3tag.h not found... try --with-id3tag=dir])])
oldcflags=$CFLAGS
CFLAGS="$CFLAGS -lz"
OLDLIBS=$LIBS
2005-02-28 17:09:29 -05:00
AC_CHECK_LIB(id3tag,id3_file_open,,echo "no libid3tag. Try --with-id3tag=dir";exit)
2004-04-14 23:06:43 -04:00
LIBS=$OLDLIBS
2004-04-14 23:06:43 -04:00
if test "$STATIC_LIBS" != "no"; then
LIBS="${LIBS} ${STATIC_LIBS}/libid3tag.a ${STATIC_LIBS}/libz.a"
2004-04-14 23:06:43 -04:00
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lid3tag -lz"
2004-04-14 23:06:43 -04:00
fi
CFLAGS=$oldcflags
2003-11-09 22:57:39 -05:00
2006-03-26 20:48:43 -05:00
if test x$use_gdbm = xtrue; then
AC_CHECK_HEADERS(gdbm.h,, [
AC_MSG_ERROR([gdbm.h not found... Must have gdbm headers installed])])
AC_CHECK_LIB(gdbm,gdbm_open,,echo "Must have gdbm libraries installed";exit)
if test x"$STATIC_LIBS" != x"no"; then
LIBS="${LIBS} ${STATIC_LIBS}/libgdbm.a"
else
LIBS="${LIBS} -lgdbm"
fi
fi
OLDLIBS=$LIBS
2005-03-11 01:39:40 -05:00
if test x$db_sqlite = xtrue; then
AC_CHECK_HEADERS(sqlite.h,, [
AC_MSG_ERROR([sqlite.h not found... Must have sqlite headers installed])])
AC_CHECK_LIB(sqlite,sqlite_open,,echo "Must have sqlite libraries installed";exit)
LIBS=$OLDLIBS
2005-03-11 01:39:40 -05:00
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libsqlite.a"
2005-03-11 01:39:40 -05:00
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lsqlite"
2005-03-11 01:39:40 -05:00
fi
fi
OLDLIBS=$LIBS
2006-01-06 12:43:38 -05:00
if test x$db_sqlite3 = xtrue; then
AC_CHECK_HEADERS(sqlite3.h,, [
AC_MSG_ERROR([sqlite3.h not found... Must have sqlite3 headers installed])])
AC_CHECK_LIB(sqlite3,sqlite3_open,,echo "Must have sqlite3 libraries installed";exit)
LIBS=$OLDLIBS
2006-01-06 12:43:38 -05:00
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libsqlite3.a"
2006-01-06 12:43:38 -05:00
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lsqlite3"
2006-01-06 12:43:38 -05:00
fi
fi
2004-12-07 22:53:36 -05:00
if test x$use_oggvorbis = xtrue; then
AC_CHECK_HEADERS(ogg/ogg.h,, [
AC_MSG_ERROR([ogg/ogg.h not found... Must have libogg installed for Ogg/Vorbis support])])
AC_CHECK_LIB(ogg,ogg_sync_init,,echo "Must have libogg for Ogg/Vorbis support";exit)
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libogg.a"
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -logg"
fi
AC_CHECK_HEADERS(vorbis/codec.h,, [
AC_MSG_ERROR([vorbis/codec.h not found... Must have libvorbis installed for Ogg/Vorbis support])])
AC_CHECK_LIB(vorbis,vorbis_info_init,,echo "Must have libvorbis for Ogg/Vorbis support";exit)
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libvorbis.a"
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lvorbis"
fi
AC_CHECK_LIB(vorbisfile,ov_open,,echo "Must have libvorbisfile for Ogg/Vorbis support";exit)
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libvorbisfile.a"
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lvorbisfile"
fi
fi
if test x$use_flac = xtrue; then
AC_CHECK_HEADERS(FLAC/metadata.h,, [
AC_MSG_ERROR([FLAC/metadata.h not found... Must have libFLAC installed for FLAC support])])
AC_CHECK_LIB(FLAC,FLAC__metadata_chain_read,,echo "Must have libFLAC for FLAC support";exit)
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libFLAC.a"
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -lFLAC"
fi
fi
2006-05-27 06:33:08 -04:00
if test x$use_ffmpeg = xtrue; then
AC_CHECK_HEADERS(avcodec.h,, [
AC_MSG_ERROR([avcodec.h not found... Must have ffmpeg installed])])
dnl AC_CHECK_LIB(avcodec,avcodec_find_decoder,,echo "Must have libavcodec";exit)
if test x"$STATIC_LIBS" != x"no"; then
LIBS="${LIBS} ${STATIC_LIBS}/libavcodec.a ${STATIC_LIBS}/libavformat.a ${STATIC_LIBS}/libavutil.a"
else
LIBS="${LIBS} -lavcodec -lavformat -lavutil"
fi
fi
2005-11-01 23:45:25 -05:00
if test x$use_musepack = xtrue; then
AC_PATH_PROG(TAGLIB_CONFIG, taglib-config, no)
AC_CHECK_HEADERS(taglib/tag_c.h,, [
AC_MSG_ERROR([taglib/tag_c.h not found... TagLib must be installed for Musepack support])])
if test "x$TAGLIB_CONFIG" = "xno" ; then
AC_MSG_ERROR(['TagLib must be installed for Musepack support'])
fi
dnl if test ! -e "`taglib-config --prefix`/lib/libtag_c.so.0"; then
dnl AC_MSG_ERROR(['Taglib C bindings are not installed'])
dnl fi
if test x"$STATIC_LIBS" != x"no"; then
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} ${STATIC_LIBS}/libtag_c.a"
2005-11-01 23:45:25 -05:00
else
2006-01-16 15:23:50 -05:00
LIBS="${LIBS} -ltag_c"
2005-11-01 23:45:25 -05:00
fi
fi
2004-03-11 01:06:47 -05:00
AC_REPLACE_FUNCS(strcasestr)
AC_REPLACE_FUNCS(strsep)
2005-02-05 15:54:55 -05:00
AC_CHECK_FUNCS(atoll)
2004-03-11 01:06:47 -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
AC_CHECK_HEADERS(fcntl.h sys/ioctl.h sys/time.h syslog.h unistd.h \
sys/filio.h termio.h)
2003-10-13 11:03:14 -04:00
dnl Checks for typedefs, structures, and compiler characteristics.
2003-10-13 11:32:43 -04:00
AC_HEADER_TIME
2003-10-13 11:03:14 -04:00
dnl Checks for library functions.
2003-10-13 11:32:43 -04:00
AC_PROG_GCC_TRADITIONAL
AC_TYPE_SIGNAL
AC_CHECK_FUNCS(select socket strdup strerror)
dnl check to see if we need -lsocket (solaris)
AC_CHECK_LIB(dl,dlsym)
2003-10-13 11:32:43 -04:00
V_NETLIBS=""
AC_CHECK_LIB(socket,socket,V_NETLIBS="-lsocket $V_NETLIBS",,)
AC_SUBST(V_NETLIBS)
2006-05-01 04:07:56 -04:00
AC_OUTPUT(src/Makefile src/plugins/Makefile admin-root/Makefile admin-root/lib-js/Makefile admin-root/lib-js/script.aculo.us/Makefile contrib/Makefile contrib/init.d/Makefile debian/Makefile Makefile)