X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=macros%2Fnetatalk.m4;h=4a87efcec2ea8e8d07bf42c910aa0fe02d63d146;hb=d6871a38bd010d27e29aff572d291808b9da278a;hp=c190405fae301f1b6e717f55c4c5d2d4a5591bd3;hpb=793ceb303ae22266e55f8b681ab21f00aebd35e9;p=netatalk.git diff --git a/macros/netatalk.m4 b/macros/netatalk.m4 index c190405f..4a87efce 100644 --- a/macros/netatalk.m4 +++ b/macros/netatalk.m4 @@ -1,5 +1,47 @@ dnl Kitchen sink for configuration macros +dnl Check for docbook +AC_DEFUN(AX_CHECK_DOCBOOK, [ + # It's just rude to go over the net to build + XSLTPROC_FLAGS=--nonet + DOCBOOK_ROOT= + XSLTPROC_WORKS=no + + AC_ARG_WITH(docbook, + AS_HELP_STRING( + [--with-docbook], + [Path to Docbook XSL directory] + ), + [DOCBOOK_ROOT=$withval] + ) + + if test -n "$DOCBOOK_ROOT" ; then + AC_CHECK_PROG(XSLTPROC,xsltproc,xsltproc,) + if test -n "$XSLTPROC"; then + AC_MSG_CHECKING([whether xsltproc works]) + DB_FILE="$DOCBOOK_ROOT/html/docbook.xsl" + $XSLTPROC $XSLTPROC_FLAGS $DB_FILE >/dev/null 2>&1 << END + + + + +END + if test "$?" = 0; then + XSLTPROC_WORKS=yes + fi + AC_MSG_RESULT($XSLTPROC_WORKS) + fi + fi + + AC_MSG_CHECKING([whether to build Docbook documentation]) + AC_MSG_RESULT($XSLTPROC_WORKS) + + AM_CONDITIONAL(HAVE_XSLTPROC, test x"$XSLTPROC_WORKS" = x"yes") + AC_SUBST(XSLTPROC_FLAGS) + AC_SUBST(DOCBOOK_ROOT) + AC_SUBST(XSLTPROC) +]) + dnl Check for dtrace AC_DEFUN([AC_NETATALK_DTRACE], [ AC_ARG_WITH(dtrace, @@ -46,7 +88,13 @@ AC_DEFUN([AC_NETATALK_DBUS_GLIB], [ AC_SUBST(DBUS_GTHREAD_CFLAGS) AC_SUBST(DBUS_GTHREAD_LIBS) if test x$have_dbus_glib = xyes -a x$have_dbus = xyes -a x$have_dbus_gthread = xyes ; then - atalk_cv_with_dbus=yes + saved_CFLAGS=$CFLAGS + saved_LIBS=$LIBS + CFLAGS="$CFLAGS $DBUS_GLIB_CFLAGS" + LIBS="$LIBS $DBUS_GLIB_LIBS" + AC_CHECK_FUNC([dbus_g_bus_get_private], [atalk_cv_with_dbus=yes], [atalk_cv_with_dbus=no]) + CFLAGS="$saved_CFLAGS" + LIBS="$saved_LIBS" fi AM_CONDITIONAL(HAVE_DBUS_GLIB, test x$atalk_cv_with_dbus = xyes) @@ -100,7 +148,9 @@ AC_DEFUN([AC_NETATALK_LIBEVENT], [ AC_MSG_ERROR([--with-libevent requires a path]) fi AC_MSG_RESULT([$use_bundled_libevent]) - AC_CONFIG_SUBDIRS([libevent]) + if test x"$use_bundled_libevent" = x"yes" ; then + AC_CONFIG_SUBDIRS([libevent]) + fi AC_SUBST(LIBEVENT_CFLAGS) AC_SUBST(LIBEVENT_LDFLAGS) AM_CONDITIONAL(USE_BUILTIN_LIBEVENT, test x"$use_bundled_libevent" = x"yes") @@ -347,7 +397,7 @@ AC_ARG_ENABLE(shell-check, ) ]) -dnl Check for optional sysv initscript install +dnl Check for optional initscript install AC_DEFUN([AC_NETATALK_INIT_STYLE], [ AC_ARG_WITH(init-style, [ --with-init-style use OS specific init config [[redhat-sysv|redhat-systemd|suse-sysv|suse-systemd|gentoo|netbsd|debian|solaris|systemd]]], @@ -359,36 +409,46 @@ AC_DEFUN([AC_NETATALK_INIT_STYLE], [ ;; "redhat-sysv") AC_MSG_RESULT([enabling redhat-style sysv initscript support]) + ac_cv_init_dir="/etc/rc.d/init.d" ;; "redhat-systemd") AC_MSG_RESULT([enabling redhat-style systemd support]) + ac_cv_init_dir="/usr/lib/systemd/system" ;; "suse") AC_MSG_ERROR([--with-init-style=suse is obsoleted. Use suse-sysv or suse-systemd.]) ;; "suse-sysv") AC_MSG_RESULT([enabling suse-style sysv initscript support]) + ac_cv_init_dir="/etc/init.d" ;; "suse-systemd") AC_MSG_RESULT([enabling suse-style systemd support (>=openSUSE12.1)]) + ac_cv_init_dir="/usr/lib/systemd/system" ;; "gentoo") AC_MSG_RESULT([enabling gentoo-style initscript support]) + ac_cv_init_dir="/etc/init.d" ;; "netbsd") AC_MSG_RESULT([enabling netbsd-style initscript support]) + ac_cv_init_dir="/etc/rc.d" ;; "debian") AC_MSG_RESULT([enabling debian-style initscript support]) + ac_cv_init_dir="/etc/init.d" ;; "solaris") AC_MSG_RESULT([enabling solaris-style SMF support]) + ac_cv_init_dir="/lib/svc/manifest/network/" ;; "systemd") AC_MSG_RESULT([enabling general systemd support]) + ac_cv_init_dir="/usr/lib/systemd/system" ;; "none") AC_MSG_RESULT([disabling init-style support]) + ac_cv_init_dir="none" ;; *) AC_MSG_ERROR([illegal init-style]) @@ -403,6 +463,12 @@ AC_DEFUN([AC_NETATALK_INIT_STYLE], [ AM_CONDITIONAL(USE_SYSTEMD, test x$init_style = xsystemd || test x$init_style = xredhat-systemd || test x$init_style = xsuse-systemd) AM_CONDITIONAL(USE_UNDEF, test x$init_style = xnone) + AC_ARG_WITH(init-dir, + [ --with-init-dir=PATH path to OS specific init directory], + ac_cv_init_dir="$withval", ac_cv_init_dir="$ac_cv_init_dir" + ) + INIT_DIR="$ac_cv_init_dir" + AC_SUBST(INIT_DIR, ["$ac_cv_init_dir"]) ]) dnl OS specific configuration @@ -504,87 +570,8 @@ if test x"$this_os" = "xsolaris"; then AC_DEFINE(SOLARIS, 1, [Solaris compatibility macro]) AC_DEFINE(_XOPEN_SOURCE, 600, [Solaris compilation environment]) AC_DEFINE(__EXTENSIONS__, 1, [Solaris compilation environment]) - CFLAGS="-I\$(top_srcdir)/sys/generic $CFLAGS" need_dash_r=yes init_style=solaris - - solaris_module=no - AC_MSG_CHECKING([if we can build Solaris kernel module]) - if test -x /usr/ccs/bin/ld && test x"$netatalk_cv_ddp_enabled" = x"yes" ; then - solaris_module=yes - fi - AC_MSG_RESULT([$solaris_module]) - - COMPILE_64BIT_KMODULE=no - KCFLAGS="" - KLDFLAGS="" - COMPILE_KERNEL_GCC=no - - if test "$solaris_module" = "yes"; then - dnl Solaris kernel module stuff - AC_MSG_CHECKING([if we have to build a 64bit kernel module]) - - # check for isainfo, if not found it has to be a 32 bit kernel (<=2.6) - if test -x /usr/bin/isainfo; then - # check for 64 bit platform - if isainfo -kv | grep '^64-bit'; then - COMPILE_64BIT_KMODULE=yes - fi - fi - - AC_MSG_RESULT([$COMPILE_64BIT_KMODULE]) - - if test "${GCC}" = yes; then - COMPILE_KERNEL_GCC=yes - if test "$COMPILE_64BIT_KMODULE" = yes; then - - AC_MSG_CHECKING([if we can build a 64bit kernel module]) - - case `$CC --version 2>/dev/null` in - [[12]].* | 3.0.*) - COMPILE_64BIT_KMODULE=no - COMPILE_KERNEL_GCC=no - solaris_module=no;; - *) - # use for 64 bit - KCFLAGS="-m64" - #KLDFLAGS="-melf64_sparc" - KLDFLAGS="-64";; - esac - - AC_MSG_RESULT([$COMPILE_64BIT_KMODULE]) - - else - KCFLAGS="" - KLDFLAGS="" - fi - KCFLAGS="$KCFLAGS -D_KERNEL -Wall -Wstrict-prototypes" - else - if test "$COMPILE_64BIT_KMODULE" = yes; then - # use Sun CC (for a 64-bit kernel, uncomment " -xarch=v9 -xregs=no%appl ") - KCFLAGS="-xarch=v9 -xregs=no%appl" - KLDFLAGS="-64" - else - KCFLAGS="" - KLDFLAGS="" - fi - KCFLAGS="-D_KERNEL $KCFLAGS -mno-app-regs -munaligned-doubles -fpcc-struct-return" - fi - - AC_CACHE_CHECK([for timeout_id_t],netatalk_cv_HAVE_TIMEOUT_ID_T,[ - AC_LINK_IFELSE([AC_LANG_PROGRAM([[\ -#include -#include ]], [[\ -timeout_id_t dummy; -]])],[netatalk_cv_HAVE_TIMEOUT_ID_T=yes],[netatalk_cv_HAVE_TIMEOUT_ID_T=no])]) - - AC_DEFINE(HAVE_TIMEOUT_ID_T, test x"$netatalk_cv_HAVE_TIMEOUT_ID" = x"yes", [define for timeout_id_t]) - fi - - AC_SUBST(COMPILE_KERNEL_GCC) - AC_SUBST(COMPILE_64BIT_KMODULE) - AC_SUBST(KCFLAGS) - AC_SUBST(KLDFLAGS) fi dnl Whether to run ldconfig after installing libraries @@ -751,7 +738,7 @@ AC_SUBST(LDAP_CFLAGS) AC_SUBST(LDAP_LDFLAGS) AC_SUBST(LDAP_LIBS) CFLAGS="$save_CFLAGS" -LDLFLAGS="$save_LDLFLAGS" +LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ])