X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=configure.ac;h=cb6e151b123bec4f19dec5d88c97d127eb247b26;hb=81c60ecd26cd74fa7576b0331fe3edc3214e1b02;hp=8d8659b4549316e06ae872ccebe743e9f0679616;hpb=7ec1d734c64bc69fb467c88c99b130b8fc5eb9d7;p=catta diff --git a/configure.ac b/configure.ac index 8d8659b..cb6e151 100644 --- a/configure.ac +++ b/configure.ac @@ -21,20 +21,21 @@ # USA. AC_PREREQ(2.57) -AC_INIT([avahi],[0.6.21],[avahi (at) lists (dot) freedesktop (dot) org]) +AC_INIT([avahi],[0.6.25],[avahi (at) lists (dot) freedesktop (dot) org]) AC_CONFIG_SRCDIR([avahi-core/server.c]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([foreign 1.9 -Wall]) AC_SUBST(PACKAGE_URL, [http://avahi.org/]) -AC_SUBST(LIBAVAHI_COMMON_VERSION_INFO, [7:5:4]) -AC_SUBST(LIBAVAHI_CORE_VERSION_INFO, [5:3:0]) -AC_SUBST(LIBAVAHI_CLIENT_VERSION_INFO, [5:3:2]) +AC_SUBST(LIBAVAHI_COMMON_VERSION_INFO, [8:1:5]) +AC_SUBST(LIBAVAHI_CORE_VERSION_INFO, [6:1:0]) +AC_SUBST(LIBAVAHI_CLIENT_VERSION_INFO, [5:5:2]) AC_SUBST(LIBAVAHI_GLIB_VERSION_INFO, [1:1:0]) -AC_SUBST(LIBAVAHI_QT3_VERSION_INFO, [1:1:0]) -AC_SUBST(LIBAVAHI_QT4_VERSION_INFO, [1:1:0]) -AC_SUBST(LIBAVAHI_UI_VERSION_INFO, [0:2:0]) +AC_SUBST(LIBAVAHI_GOBJECT_VERSION_INFO, [0:1:0]) +AC_SUBST(LIBAVAHI_QT3_VERSION_INFO, [1:2:0]) +AC_SUBST(LIBAVAHI_QT4_VERSION_INFO, [1:2:0]) +AC_SUBST(LIBAVAHI_UI_VERSION_INFO, [1:1:1]) # Do not touch these, since they we took this version-info from upstream HOWL/Bonjour AC_SUBST(LIBAVAHI_COMPAT_LIBDNS_SD_VERSION_INFO, [1:0:0]) @@ -243,15 +244,20 @@ AC_TRY_COMPILE([#include ], [ # # Detecting the linux distribution for specific things like init scripts. # -AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of debian, gentoo, archlinux, fedora, mandriva, darwin, netbsd, freebsd, slackware or none])) +AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of lfs, debian, gentoo, archlinux, fedora, mandriva, darwin, netbsd, freebsd, slackware or none])) if test "z$with_distro" = "z"; then - AC_CHECK_FILE(/etc/SuSE-release,with_distro="suse") - AC_CHECK_FILE(/etc/gentoo-release,with_distro="gentoo") - AC_CHECK_FILE(/etc/arch-release,with_distro="archlinux") - AC_CHECK_FILE(/etc/debian_version,with_distro="debian") - AC_CHECK_FILE(/etc/redhat-release,with_distro="fedora") - AC_CHECK_FILE(/etc/mandriva-release,with_distro="mandriva") - AC_CHECK_FILE(/etc/slackware-version,with_distro="slackware") + if test "$cross_compiling" = yes; then + AC_MSG_WARN([Target distribution cannot be reliably detected when cross-compiling. You should specify it with --with-distro (see $0 --help for recognized distros)]) + else + AC_CHECK_FILE(/etc/lfs-release,with_distro="lfs") + AC_CHECK_FILE(/etc/SuSE-release,with_distro="suse") + AC_CHECK_FILE(/etc/gentoo-release,with_distro="gentoo") + AC_CHECK_FILE(/etc/arch-release,with_distro="archlinux") + AC_CHECK_FILE(/etc/debian_version,with_distro="debian") + AC_CHECK_FILE(/etc/redhat-release,with_distro="fedora") + AC_CHECK_FILE(/etc/mandriva-release,with_distro="mandriva") + AC_CHECK_FILE(/etc/slackware-version,with_distro="slackware") + fi if test "z$with_distro" = "z"; then with_distro=`uname -s` fi @@ -259,7 +265,7 @@ fi with_distro=`echo ${with_distro} | tr '[[:upper:]]' '[[:lower:]]' ` case $with_distro in - debian|gentoo|archlinux|suse|fedora|mandriva|darwin|freebsd|slackware|none) + lfs|debian|gentoo|archlinux|suse|fedora|mandriva|darwin|freebsd|slackware|none) ;; netbsd) AC_MSG_WARN([Your distribution (${with_distro}) is supported but no init script exist yet! (patches welcome)]) @@ -272,6 +278,7 @@ case $with_distro in ;; esac +AM_CONDITIONAL(TARGET_LFS, test x"$with_distro" = xlfs) AM_CONDITIONAL(TARGET_SUSE, test x"$with_distro" = xsuse) AM_CONDITIONAL(TARGET_GENTOO, test x"$with_distro" = xgentoo) AM_CONDITIONAL(TARGET_DEBIAN, test x"$with_distro" = xdebian) @@ -294,7 +301,7 @@ test_gcc_flag() { # If using GCC specify some additional parameters if test "x$GCC" = "xyes" ; then - DESIRED_FLAGS="-Wall -W -Wextra -pedantic -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wendif-labels -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Winline -fPIC" + DESIRED_FLAGS="-Wall -W -Wextra -pedantic -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wendif-labels -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Winline" if test "x$HAVE_NETLINK" = "xyes" ; then # Test whether rtnetlink.h can be included when compiled with -std=c99 @@ -348,8 +355,10 @@ AC_HEADER_SYS_WAIT # Checks for library functions. AC_FUNC_MEMCMP AC_FUNC_SELECT_ARGTYPES -AC_FUNC_MALLOC -AC_FUNC_REALLOC +# avahi_malloc actually returns NULL for avahi_malloc(0), so it does not matter +# whether libc's malloc does too. (Same for realloc.) +#AC_FUNC_MALLOC +#AC_FUNC_REALLOC AC_CHECK_FUNCS([gethostname memchr memmove memset mkdir select socket strchr strcspn strdup strerror strrchr strspn strstr uname setresuid setreuid setresgid setregid strcasecmp gettimeofday putenv strncasecmp strlcpy gethostbyname seteuid setegid setproctitle getprogname]) AC_FUNC_CHOWN @@ -359,6 +368,9 @@ AC_TYPE_PID_T AC_CHECK_DECLS(environ) +# check if gcc's -fvisibility is supported +CHECK_VISIBILITY_HIDDEN + enable_chroot=yes AC_CHECK_HEADERS([sys/capability.h],,enable_chroot=no) AC_CHECK_HEADERS([sys/prctl.h],,enable_chroot=no) @@ -377,7 +389,6 @@ fi AM_CONDITIONAL(HAVE_DLOPEN, test "x$HAVE_DLOPEN" = "xyes") have_inotify=no -AC_CHECK_HEADERS([linux/inotify.h], [have_inotify=yes]) AC_CHECK_HEADERS([sys/inotify.h], [have_inotify=yes]) AM_CONDITIONAL(HAVE_INOTIFY, test "x$have_inotify" = "xyes") @@ -395,6 +406,16 @@ if test "x$have_kqueue" = "xyes" ; then AC_DEFINE([HAVE_KQUEUE], 1, [Enable BSD kqueue() usage]) fi +IT_PROG_INTLTOOL([0.35.0]) +GETTEXT_PACKAGE=avahi +AC_SUBST([GETTEXT_PACKAGE]) +AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package]) +AM_GLIB_GNU_GETTEXT + +avahilocaledir='${prefix}/${DATADIRNAME}/locale' +AC_SUBST(avahilocaledir) + + # Check for pkg-config manually first, as if its not installed the # PKG_PROG_PKG_CONFIG macro won't be defined. AC_CHECK_PROG(have_pkg_config, pkg-config, yes, no) @@ -418,12 +439,31 @@ AC_ARG_ENABLE(glib, [HAVE_GLIB=yes]) if test "x$HAVE_GLIB" = "xyes" ; then - PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 gobject-2.0 ]) + PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ]) AC_SUBST(GLIB20_CFLAGS) AC_SUBST(GLIB20_LIBS) fi AM_CONDITIONAL(HAVE_GLIB, test "x$HAVE_GLIB" = "xyes") +# +# Check for GLIB's gobject 2.0 +# +AC_ARG_ENABLE(gobject, + AS_HELP_STRING([--disable-gobject],[Disable use of GLib GObject]), + [case "${enableval}" in + yes) HAVE_GOBJECT=yes ;; + no) HAVE_GOBJECT=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for --enable-gobject) ;; + esac], + [HAVE_GOBJECT=yes]) + +if test "x$HAVE_GOBJECT" = "xyes" ; then + PKG_CHECK_MODULES(GOBJECT, [ glib-2.0 >= 2.4.0 gobject-2.0 ]) + AC_SUBST(GOBJECT_CFLAGS) + AC_SUBST(GOBJECT_LIBS) +fi +AM_CONDITIONAL(HAVE_GOBJECT, test "x$HAVE_GOBJECT" = "xyes") + # # Check for Qt 3 # @@ -441,10 +481,10 @@ if test "x$HAVE_QT3" = "xyes" ; then AC_SUBST(QT3_CFLAGS) AC_SUBST(QT3_LIBS) QT3_PREFIX="`$PKG_CONFIG --variable=prefix qt-mt`/bin" - MOC_QT3="no" - AC_CHECK_FILE( "$QT3_PREFIX/moc-qt3", [ MOC_QT3=$QT3_PREFIX/moc-qt3 ], [ - AC_CHECK_FILE("$QT3_PREFIX/moc", [ MOC_QT3=$QT3_PREFIX/moc ], [ - AC_MSG_ERROR([Couldn't find QT3 moc])])]) + AC_PATH_PROGS(MOC_QT3, [moc-qt3 moc], no, [$QT3_PREFIX]) + if test "$MOC_QT3" = no; then + AC_MSG_ERROR([Could not find QT3 moc]) + fi AC_SUBST(MOC_QT3) fi AM_CONDITIONAL(HAVE_QT3, test "x$HAVE_QT3" = "xyes") @@ -466,10 +506,10 @@ if test "x$HAVE_QT4" = "xyes" ; then AC_SUBST(QT4_CFLAGS) AC_SUBST(QT4_LIBS) QT4_PREFIX="`$PKG_CONFIG --variable=prefix QtCore`/bin" - MOC_QT4="no" - AC_CHECK_FILE( "$QT4_PREFIX/moc-qt4", [ MOC_QT4=$QT4_PREFIX/moc-qt4 ], [ - AC_CHECK_FILE("$QT4_PREFIX/moc", [ MOC_QT4=$QT4_PREFIX/moc ], [ - AC_MSG_ERROR([Couldn't find QT4 moc])])]) + AC_PATH_PROGS(MOC_QT4, [moc-qt4 moc], no, [$QT4_PREFIX]) + if test "$MOC_QT4" = no; then + AC_MSG_ERROR([Could not find QT4 moc]) + fi AC_SUBST(MOC_QT4) fi AM_CONDITIONAL(HAVE_QT4, test "x$HAVE_QT4" = "xyes") @@ -592,23 +632,56 @@ AM_CONDITIONAL(HAVE_DBUS, test "x$HAVE_DBUS" = "xyes") # # Expat # -AC_ARG_ENABLE(expat, - AS_HELP_STRING([--disable-expat],[Disable use of Expat]), - [case "${enableval}" in - yes) HAVE_EXPAT=yes ;; - no) HAVE_EXPAT=no ;; - *) AC_MSG_ERROR(bad value ${enableval} for --enable-expat) ;; - esac], - [HAVE_EXPAT=yes]) +AC_ARG_WITH(xml, AS_HELP_STRING([--with-xml=[expat/bsdxml/none]],[XML library to use])) +use_expat=false +use_bsdxml=false + +# See what we have +AC_CHECK_LIB(expat, XML_ParserCreate, [ AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false) ], have_expat=false) +AC_CHECK_LIB(bsdxml, XML_ParserCreate, [ AC_CHECK_HEADERS(bsdxml.h, have_bsdxml=true, have_bsdxml=false) ], have_bsdxml=false) + +if test "x$with_xml" = "xnone"; then + : +elif test "x$with_xml" = "xexpat"; then + use_expat=true + if ! $have_expat ; then + AC_MSG_ERROR([*** libexpat requested, but not found ***]) + fi +elif test "x$with_xml" = "xbsdxml"; then + use_bsdxml=true + if ! $have_bsdxml ; then + AC_MSG_ERROR([*** libbsdxml requested, but not found ***]) + fi +elif test "x$with_xml" != "x"; then + AC_MSG_ERROR([*** unknown with-xml option ***]) +else + if $have_expat ; then + use_expat=true + elif $have_bsdxml ; then + use_bsdxml=true + else + AC_MSG_ERROR([*** neither libexpat not libbsdxml could be found ***]) + fi +fi -if test "x$HAVE_EXPAT" = "xyes" ; then - AC_CHECK_LIB(expat, XML_ParserCreate, [ AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false) ], have_expat=false) +if $use_expat; then + with_xml=expat + XML_CFLAGS=-DUSE_EXPAT_H + XML_LIBS=-lexpat +fi +if $use_bsdxml; then + with_xml=bsdxml + XML_CFLAGS=-DUSE_BSDXML_H + XML_LIBS=-lbsdxml +fi +AC_SUBST(XML_LIBS) +AC_SUBST(XML_CFLAGS) - if ! $have_expat ; then - AC_MSG_ERROR([*** libexpat not found ***]) - fi +if $use_expat || $use_bsdxml; then + HAVE_XML=yes fi -AM_CONDITIONAL(HAVE_EXPAT, test "x$HAVE_EXPAT" = "xyes") + +AM_CONDITIONAL(HAVE_XML, test "x$HAVE_XML" = "xyes") # # GDBM @@ -877,7 +950,7 @@ DX_CHM_FEATURE(OFF) DX_CHI_FEATURE(OFF) DX_MAN_FEATURE(OFF) DX_RTF_FEATURE(OFF) -DX_XML_FEATURE(OFF) +DX_XML_FEATURE(ON) DX_PDF_FEATURE(OFF) DX_PS_FEATURE(OFF) DX_INIT_DOXYGEN(avahi, doxygen.cfg, doxygen) @@ -980,6 +1053,7 @@ Makefile avahi-common/Makefile avahi-core/Makefile avahi-glib/Makefile +avahi-gobject/Makefile avahi-qt/Makefile avahi-daemon/Makefile avahi-daemon/avahi-dbus.conf @@ -991,6 +1065,7 @@ initscript/gentoo/Makefile initscript/archlinux/Makefile initscript/suse/Makefile initscript/fedora/Makefile +initscript/lfs/Makefile initscript/mandriva/Makefile initscript/darwin/Makefile initscript/freebsd/Makefile @@ -1012,6 +1087,7 @@ avahi-compat-howl/Makefile avahi-compat-howl/samples/Makefile avahi-autoipd/Makefile avahi-ui/Makefile +po/Makefile.in ]) AC_OUTPUT @@ -1029,9 +1105,10 @@ echo " C Compiler: ${CC} CFLAGS: ${CFLAGS} Enable GLIB: ${HAVE_GLIB} + Enable GLIB GObject: ${HAVE_GOBJECT} Enable GTK: ${HAVE_GTK} Enable D-Bus: ${HAVE_DBUS} - Enable Expat: ${HAVE_EXPAT} + With XML: ${with_xml} Enable GDBM: ${HAVE_GDBM} Enable DBM: ${HAVE_DBM} Enable libdaemon: ${HAVE_LIBDAEMON} @@ -1053,9 +1130,9 @@ echo " Enable stack-smashing protection: ${enable_ssp} " -BUILD_DAEMON="no (You need libdaemon and expat!)" +BUILD_DAEMON="no (You need libdaemon and expat/bsdxml!)" -if test "x$HAVE_EXPAT" = "xyes" -a "x$HAVE_LIBDAEMON" = "xyes" ; then +if test "x$HAVE_XML" = "xyes" -a "x$HAVE_LIBDAEMON" = "xyes" ; then BUILD_DAEMON=yes fi @@ -1086,6 +1163,11 @@ if test "x$HAVE_GTK" = "xyes" -a "x$BUILD_CLIENT" = "xyes" ; then BUILD_UI="yes" fi +BUILD_GOBJECT="no" +if test "x$BUILD_CLIENT" = "xyes" -a "x$HAVE_GOBJECT" = "xyes" ; then + BUILD_GOBJECT="yes" +fi + echo "\ Building libavahi-core yes Building avahi-daemon: ${BUILD_DAEMON} @@ -1094,6 +1176,7 @@ echo "\ Building avahi-utils: ${BUILD_CLIENT} Building avahi-python: ${BUILD_PYTHON} Building libavahi-glib: ${HAVE_GLIB} + Building libavahi-gobject: ${BUILD_GOBJECT} Building avahi-discover-standalone: ${HAVE_GTK} Building libavahi-qt3: ${HAVE_QT3} Building libavahi-qt4: ${HAVE_QT4}