250 lines
7.3 KiB
Plaintext
250 lines
7.3 KiB
Plaintext
dnl $Id$
|
|
dnl
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
AC_INIT(config.h.in)
|
|
|
|
AM_CONFIG_HEADER(config.h)
|
|
AM_INIT_AUTOMAKE(mt-daapd,0.2.1.1)
|
|
|
|
dnl Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_YACC
|
|
AM_PROG_LEX
|
|
|
|
AC_CANONICAL_HOST
|
|
|
|
AM_CONDITIONAL(COND_REND_OSX,false)
|
|
|
|
use_gdbm=true
|
|
use_sqlite=false
|
|
rend_posix=true
|
|
|
|
STATIC_LIBS=no
|
|
CPPFLAGS="${CPPFLAGS} -g"
|
|
|
|
dnl fix freebsd's broken (?) libpthread
|
|
AC_CHECK_LIB(c_r,pthread_creat,LDFLAGS="${LDFLAGS} -lc_r", [
|
|
AC_CHECK_LIB(pthread,pthread_create,LDFLAGS="${LDFLAGS} -lpthread") ])
|
|
|
|
AC_ARG_ENABLE(debug,[ --enable-debug Enable debugging features],
|
|
CPPFLAGS="${CPPFLAGS} -Wall")
|
|
AC_ARG_ENABLE(debug-memory,[ --enable-debug-memory Enable mem leak debugging],
|
|
CPPFLAGS="${CPPFLAGS} -DDEBUG_MEMORY")
|
|
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 ])
|
|
|
|
AC_ARG_ENABLE(efence,[ --enable-efence Enable electric fence],
|
|
LDFLAGS="${LDFLAGS} -lefence")
|
|
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
|
|
yes) rend_howl=true; rend_posix=false; LDFLAGS="${LDFLAGS} -lhowl";
|
|
CPPFLAGS="${CPPFLAGS} -DWITH_HOWL";;
|
|
no) rend_howl=false;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-howl);;
|
|
esac ])
|
|
|
|
AC_ARG_ENABLE(oggvorbis,[ --enable-oggvorbis Enable Ogg/Vorbis support],
|
|
use_oggvorbis=true;
|
|
CPPFLAGS="${CPPFLAGS} -DOGGVORBIS")
|
|
|
|
AC_ARG_ENABLE(flac,[ --enable-flac Enable FLAC support],
|
|
use_flac=true;
|
|
CPPFLAGS="${CPPFLAGS} -DFLAC")
|
|
|
|
AC_ARG_ENABLE(sqlite,[ --enable-sqlite Enable SQLite backend],
|
|
use_sqlite=true;
|
|
LDFLAGS="${LDFLAGS} -lsqlite";
|
|
use_gdbm=false)
|
|
|
|
|
|
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)
|
|
|
|
AM_CONDITIONAL(COND_NEED_STRCASESTR,false)
|
|
AM_CONDITIONAL(COND_NEED_STRSEP,false)
|
|
|
|
AM_CONDITIONAL(COND_SQLITE,test x$use_sqlite = xtrue)
|
|
AM_CONDITIONAL(COND_GDBM,test x$use_gdbm = xtrue)
|
|
|
|
dnl Darwin's stupid cpp preprocessor....
|
|
echo Host type is $host
|
|
CPPFLAGS="$CPPFLAGS -DHOST='\"$host\"'"
|
|
|
|
dnl
|
|
dnl The apple mDNS stuff wants these compile flags.
|
|
dnl
|
|
|
|
case $host in
|
|
*solaris*)
|
|
CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN -D_XPG4_2"
|
|
CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME"
|
|
CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
|
|
LDFLAGS="$LDFLAGS -lnsl -lsocket";;
|
|
*linux*)
|
|
CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN";;
|
|
*openbsd*)
|
|
CPPFLAGS="$CPPFLAGS -DHAVE_BROKEN_RECVDSTADDR";;
|
|
*darwin*)
|
|
CPPFLAGS="$CPPFLAGS -no-cpp-precomp -DMAC"
|
|
LDFLAGS="$LDFLAGS -framework CoreFoundation"
|
|
|
|
AM_CONDITIONAL(COND_REND_OSX,true)
|
|
AM_CONDITIONAL(COND_REND_HOWL,false)
|
|
AM_CONDITIONAL(COND_REND_POSIX,false);;
|
|
esac
|
|
|
|
dnl Checks for libraries.
|
|
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
|
|
])
|
|
|
|
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(howl-includes,
|
|
[--with-howl-includes[[=DIR]] use howl 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"
|
|
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"
|
|
fi
|
|
])
|
|
|
|
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"
|
|
fi
|
|
])
|
|
|
|
AC_CHECK_HEADERS(getopt.h,,)
|
|
|
|
AC_CHECK_HEADERS(gdbm.h,, [
|
|
AC_MSG_ERROR([gdbm.h not found... try --with-gdbm-includes=dir])])
|
|
AC_CHECK_LIB(gdbm,gdbm_open,,echo "no libgdbm. Try --with-gdbm-lib=dir";exit)
|
|
|
|
if test "$STATIC_LIBS" != "no"; then
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libgdbm.a"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -lgdbm"
|
|
fi
|
|
|
|
AC_CHECK_HEADERS(id3tag.h,, [
|
|
AC_MSG_ERROR([id3tag.h not found... try --with-id3tag=dir])])
|
|
|
|
oldcflags=$CFLAGS
|
|
|
|
CFLAGS="$CFLAGS -lz"
|
|
AC_CHECK_LIB(id3tag,id3_file_open,,echo "no libid3tag. Try --with-id3tag=dir";exit)
|
|
|
|
if test "$STATIC_LIBS" != "no"; then
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libid3tag.a -lz"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -lid3tag -lz"
|
|
fi
|
|
CFLAGS=$oldcflags
|
|
|
|
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
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libogg.a"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -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
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libvorbis.a"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -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
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libvorbisfile.a"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -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 "Have FLAC",echo "Must have libFLAC for FLAC support";exit)
|
|
|
|
if test x"$STATIC_LIBS" != x"no"; then
|
|
LDFLAGS="${LDFLAGS} ${STATIC_LIBS}/libFLAC.a"
|
|
else
|
|
LDFLAGS="${LDFLAGS} -lFLAC"
|
|
fi
|
|
fi
|
|
|
|
AC_REPLACE_FUNCS(strcasestr)
|
|
AC_REPLACE_FUNCS(strsep)
|
|
AC_CHECK_FUNCS(atoll)
|
|
|
|
dnl Checks for header files.
|
|
AC_HEADER_STDC
|
|
AC_HEADER_SYS_WAIT
|
|
AC_CHECK_HEADERS(fcntl.h sys/ioctl.h sys/time.h syslog.h unistd.h \
|
|
sys/filio.h termio.h)
|
|
|
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
|
AC_HEADER_TIME
|
|
|
|
dnl Checks for library functions.
|
|
AC_PROG_GCC_TRADITIONAL
|
|
AC_FUNC_SETPGRP
|
|
AC_TYPE_SIGNAL
|
|
AC_CHECK_FUNCS(select socket strdup strerror)
|
|
|
|
dnl check to see if we need -lsocket (solaris)
|
|
|
|
V_NETLIBS=""
|
|
AC_CHECK_LIB(socket,socket,V_NETLIBS="-lsocket $V_NETLIBS",,)
|
|
|
|
AC_SUBST(V_NETLIBS)
|
|
|
|
AC_OUTPUT(src/Makefile admin-root/Makefile contrib/Makefile debian/Makefile Makefile)
|