-dnl configure.in for netatalk
+dnl configure.ac for netatalk
AC_INIT(etc/afpd/main.c)
AC_PROG_GREP
AC_PROG_PS
AM_PROG_CC_C_O
-
-dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_BIGENDIAN
AC_C_INLINE
-
-dnl Request SUSv3 standard interfaces plus anything else the platform may have
-CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600 -D__EXTENSIONS__ -D_GNU_SOURCE"
+AC_PROG_LEX
+AC_PROG_YACC
dnl Check if we can use attribute unused (gcc only) from ethereal
AC_MSG_CHECKING(to see if we can add '__attribute__((unused))' to CFLAGS)
AC_MSG_RESULT(no)
fi
-dnl Configure libevent
-AC_CONFIG_SUBDIRS([libevent])
-
dnl Checks for header files, some checks are obsolete, unfortunately the code
dnl uses the resulting macros, so the code has to cleaned up too before
dnl we can remove the checks here.
AC_CHECK_HEADERS(sys/param.h sys/fcntl.h sys/termios.h)
AC_CHECK_HEADERS(sys/mnttab.h sys/statvfs.h sys/stat.h sys/vfs.h)
dnl Checks for header files, confirmed to be required as of 2011
-AC_CHECK_HEADERS(sys/epoll.h)
AC_CHECK_HEADERS([sys/mount.h], , ,
[#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
])
+AC_CHECK_TYPES([fshare_t], [], [], [[#include <fcntl.h>]])
AC_SYS_LARGEFILE([], AC_MSG_ERROR([AFP 3.x support requires Large File Support.]))
AC_CHECK_MEMBERS(struct tm.tm_gmtoff,,, [#include <time.h>])
dnl these tests have been comfirmed to be needed in 2011
-AC_CHECK_FUNC(epoll_create, AC_DEFINE([HAVE_EPOLL], 1, Whether Linux epoll is available))
AC_CHECK_FUNCS(backtrace_symbols dirfd getusershell pread pwrite pselect)
-AC_CHECK_FUNCS(setlinebuf strlcat strlcpy strnlen)
+AC_CHECK_FUNCS(setlinebuf strlcat strlcpy strnlen mempcpy vasprintf asprintf)
AC_CHECK_FUNCS(mmap utime getpagesize) dnl needed by tbd
dnl search for necessary libraries
AC_SEARCH_LIBS(gethostbyname, nsl)
AC_SEARCH_LIBS(connect, socket)
-AC_SEARCH_LIBS(pthread_sigmask, pthread,,[AC_MSG_ERROR([missing pthread_sigmask])])
-if test x"$ac_cv_search_pthread_sigmask" != x"none required" ; then
- PTHREAD_LIBS=$ac_cv_search_pthread_sigmask
-fi
-AC_SUBST(PTHREAD_LIBS)
+AC_CHECK_FUNCS(getifaddrs) dnl comes after gethostbyname and connect so it picks up the libs
-AC_DEFINE(OPEN_NOFOLLOW_ERRNO, ELOOP, errno returned by open with O_NOFOLLOW)
+AX_PTHREAD(, [AC_MSG_ERROR([missing pthread_sigmask])])
-AC_CACHE_SAVE
+AC_DEFINE(OPEN_NOFOLLOW_ERRNO, ELOOP, errno returned by open with O_NOFOLLOW)
-dnl --------------------------------------------------------------------------
dnl 64bit platform check
-dnl --------------------------------------------------------------------------
+AC_NETATALK_64BIT_LIBS
-AC_MSG_CHECKING([whether to check for 64bit libraries])
-# Test if the compiler is in 64bit mode
-echo 'int i;' > conftest.$ac_ext
-atalk_cv_cc_64bit_output=no
-if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.$ac_objext` in
- *"ELF 64"*)
- atalk_cv_cc_64bit_output=yes
- ;;
- esac
-fi
-rm -rf conftest*
-
-case $host_cpu:$atalk_cv_cc_64bit_output in
-powerpc64:yes | s390x:yes | sparc*:yes | x86_64:yes | i386:yes)
- case $target_os in
- solaris2*)
- AC_MSG_RESULT([yes])
- atalk_libname="lib/64"
- ;;
- *bsd* | dragonfly*)
- AC_MSG_RESULT([no])
- atalk_libname="lib"
- ;;
- *)
- AC_MSG_RESULT([yes])
- atalk_libname="lib64"
- ;;
- esac
- ;;
-*:*)
- AC_MSG_RESULT([no])
- atalk_libname="lib"
- ;;
-esac
-
-dnl --------------------------------------------------------------------------
-dnl specific configuration comes in here:
-dnl --------------------------------------------------------------------------
+dnl OS specific checks
+AC_NETATALK_OS_SPECIFIC
dnl Check for optional admin group support
AC_NETATALK_ADMIN_GROUP
dnl Check for quota support
AC_NETATALK_CHECK_QUOTA
-dnl Check for optional server location protocol support (used by MacOS X)
-AC_NETATALK_SRVLOC
-
dnl Check for optional Zeroconf support
AC_NETATALK_ZEROCONF
dnl Check for optional valid-shell-check support
AC_NETATALK_SHELL_CHECK
-dnl Check for optional Webmin
-AC_NETATALK_WEBMIN
-
dnl Check for optional sysv initscript install
-AC_NETATALK_SYSV_STYLE
+AC_NETATALK_INIT_STYLE
dnl Path where UAM modules shall be installed
-AC_ARG_WITH(uams-path, [ --with-uams-path=PATH path to UAMs [[PKGCONF/uams]]], [uams_path="$withval"], [uams_path="${PKGCONFDIR}/uams"])
+AC_ARG_WITH(uams-path, [ --with-uams-path=PATH path to UAMs [[$libdir/netatalk/]]], [uams_path="$withval/"], [uams_path="$libdir/netatalk/"])
dnl Check for libgcrypt, if found enables DHX2 UAM
AC_NETATALK_PATH_LIBGCRYPT([1:1.2.3])
dnl Check for building Kerberos V UAM module
AC_NETATALK_KRB5_UAM
+dnl Check for Kerberos 5 support
+AC_NETATALK_KERBEROS
+
dnl Check for overwrite the config files or not
AC_NETATALK_OVERWRITE_CONFIG
dnl Check for Extended Attributes support
AC_NETATALK_EXTENDED_ATTRIBUTES
-dnl Check for libsmbsharemodes from Samba for Samba/Netatalk access/deny/share modes interop
-AC_NETATALK_SMB_SHAREMODES
-
dnl Check if realpath() takes NULL
AC_NETATALK_REALPATH
dnl Check for sendfile()
AC_NETATALK_SENDFILE
+AC_NETATALK_RECVFILE
-dnl --------------------------------------------------------------------------
-dnl FHS stuff has to be done last because it overrides other defaults
-dnl --------------------------------------------------------------------------
+dnl Check whether bundled libevent shall not be used
+AC_NETATALK_LIBEVENT
-AC_MSG_CHECKING([whether to use Filesystem Hierarchy Standard (FHS) compatibility])
-AC_ARG_ENABLE(fhs,
- [ --enable-fhs use Filesystem Hierarchy Standard (FHS) compatibility],[
- if test "$enableval" = "yes"; then
- uams_path="${libdir}/netatalk"
- sysconfdir="/etc"
- PKGCONFDIR=${sysconfdir}/netatalk
- SERVERTEXT="${PKGCONFDIR}/msg"
- use_pam_so=yes
- mandir="/usr/share/man"
- AC_DEFINE(FHS_COMPATIBILITY, 1, [Define if you want compatibily with the FHS])
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- ],[
- AC_MSG_RESULT([no])
- ]
-)
+dnl Check whether bundled tdb shall be used
+AC_NETATALK_TDB
-dnl --------------------------------------------------------------------------
-dnl post-FHS substitutions, etc
-dnl --------------------------------------------------------------------------
-
-UAMS_PATH="${uams_path}"
-AC_SUBST(UAMS_PATH)
+dnl Check for Tracker
+AC_NETATALK_SPOTLIGHT
+dnl libatalk API checks
+AC_DEVELOPER
-dnl --------------------------------------------------------------------------
-dnl OS specific configuration comes in here:
-dnl --------------------------------------------------------------------------
+dnl Check for dtrace
+AC_NETATALK_DTRACE
-AC_NETATALK_OS_SPECIFIC
+dnl Check for dbus-glib, for AFP stats on dbus
+AC_NETATALK_DBUS_GLIB
+dnl FHS stuff has to be done last because it overrides other defaults
+AC_NETATALK_FHS
-dnl --------------------------------------------------------------------------
-dnl drop in includes for top level directory structures here...
-dnl --------------------------------------------------------------------------
-
-dnl Note: $(top_srcdir)/include should be added before all other includes
-dnl so that includes from that directory a preferred to includes from
-dnl /usr/include or similar places.
-LIBS="$LIBS -L\$(top_srcdir)/libatalk -L\$(top_srcdir)/libevent"
-CFLAGS="-I\$(top_srcdir)/include -I\$(top_srcdir)/sys -I\$(top_srcdir)/libevent/include $CFLAGS"
+dnl netatalk lockfile path, must come after AC_NETATALK_FHS
+AC_NETATALK_LOCKFILE
+dnl Check for Docbook and build documentation if found
+AX_CHECK_DOCBOOK
-dnl --------------------------------------------------------------------------
-dnl Last minute substitutions
-dnl --------------------------------------------------------------------------
+CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include $CPPFLAGS"
+UAMS_PATH="${uams_path}"
AC_SUBST(LIBS)
AC_SUBST(CFLAGS)
+AC_SUBST(UAMS_PATH)
AM_CONDITIONAL(SOLARIS_MODULE, test x$solaris_module = xyes)
AM_CONDITIONAL(HAVE_LIBGCRYPT, test x$neta_cv_have_libgcrypt = xyes)
AM_CONDITIONAL(HAVE_OPENSSL, test x$neta_cv_have_openssl = xyes)
-AM_CONDITIONAL(HAVE_ACLS, test x"$with_acl_support" = x"yes")
-AM_CONDITIONAL(HAVE_LDAP, test x"$with_ldap" = x"yes")
+AM_CONDITIONAL(HAVE_ACLS, test x"$ac_cv_have_acls" = x"yes")
+AM_CONDITIONAL(HAVE_LDAP, test x"$netatalk_cv_ldap" = x"yes")
AM_CONDITIONAL(USE_DHX, test x$neta_cv_compile_dhx = xyes)
AM_CONDITIONAL(USE_DHX2, test x$neta_cv_compile_dhx2 = xyes)
AM_CONDITIONAL(USE_RANDNUM, test x$neta_cv_have_openssl = xyes)
AM_CONDITIONAL(BUILD_PAM, test x$compile_pam = xyes)
AM_CONDITIONAL(USE_PGP, test x$compile_pgp = xyes)
AM_CONDITIONAL(DEFAULT_HOOK, test x$neta_cv_have_libgcrypt != xyes && test x$neta_cv_have_openssl != xyes)
-AM_CONDITIONAL(USE_NETBSD, test x$sysv_style = xnetbsd)
-AM_CONDITIONAL(USE_REDHAT_SYSV, test x$sysv_style = xredhat-sysv)
-AM_CONDITIONAL(USE_SUSE_SYSV, test x$sysv_style = xsuse-sysv)
-AM_CONDITIONAL(USE_SHADOWPW, test x$shadowpw = xyes)
-AM_CONDITIONAL(USE_TRU64, test x$sysv_style = xtru64)
-AM_CONDITIONAL(USE_SOLARIS, test x$sysv_style = xsolaris)
-AM_CONDITIONAL(USE_GENTOO, test x$sysv_style = xgentoo)
-AM_CONDITIONAL(USE_DEBIAN, test x$sysv_style = xdebian)
-AM_CONDITIONAL(USE_SYSTEMD, test x$sysv_style = xsystemd || test x$sysv_style = xredhat-systemd || test x$sysv_style = xsuse-systemd)
-AM_CONDITIONAL(USE_UNDEF, test x$sysv_style = x)
AM_CONDITIONAL(USE_BDB, test x$bdb_required = xyes)
AM_CONDITIONAL(HAVE_ATFUNCS, test x"$ac_neta_haveatfuncs" = x"yes")
+AM_CONDITIONAL(USE_SHADOWPW, test x$shadowpw = xyes)
-dnl --------------------- generate files
+dnl Enable silent Automake rules if present
+m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
+dnl --------------------- generate files
AC_OUTPUT([Makefile
bin/Makefile
bin/ad/Makefile
bin/cnid/Makefile
bin/cnid/cnid2_create
bin/megatron/Makefile
- bin/misc/Makefile
+ bin/misc/Makefile
bin/uniconv/Makefile
config/Makefile
config/pam/Makefile
distrib/config/netatalk-config
distrib/initscripts/Makefile
distrib/m4/Makefile
- distrib/systemd/Makefile
doc/Makefile
+ doc/html.xsl
+ doc/man.xsl
+ doc/manual/Makefile
+ doc/manual/manual.xml
+ doc/manpages/Makefile
+ doc/manpages/man1/Makefile
+ doc/manpages/man5/Makefile
+ doc/manpages/man8/Makefile
etc/Makefile
etc/afpd/Makefile
etc/cnid_dbd/Makefile
- etc/netalockd/Makefile
+ etc/netatalk/Makefile
+ etc/spotlight/Makefile
etc/uams/Makefile
include/Makefile
include/atalk/Makefile
libatalk/cnid/last/Makefile
libatalk/cnid/dbd/Makefile
libatalk/cnid/tdb/Makefile
+ libatalk/cnid/mysql/Makefile
libatalk/compat/Makefile
libatalk/dsi/Makefile
- libatalk/locking/Makefile
- libatalk/rpc/Makefile
+ libatalk/iniparser/Makefile
libatalk/talloc/Makefile
- libatalk/tevent/Makefile
- libatalk/tsocket/Makefile
libatalk/tdb/Makefile
libatalk/unicode/Makefile
libatalk/unicode/charsets/Makefile
macros/Makefile
man/Makefile
man/man1/Makefile
+ man/man1/ad.1
+ man/man1/afpldaptest.1
+ man/man1/afppasswd.1
+ man/man1/afpstats.1
+ man/man1/apple_dump.1
+ man/man1/asip-status.pl.1
+ man/man1/dbd.1
+ man/man1/macusers.1
+ man/man1/netatalk-config.1
+ man/man1/uniconv.1
man/man5/Makefile
+ man/man5/afp.conf.5
+ man/man5/afp_signature.conf.5
+ man/man5/afp_voluuid.conf.5
+ man/man5/extmap.conf.5
man/man8/Makefile
+ man/man8/afpd.8
+ man/man8/cnid_dbd.8
+ man/man8/cnid_metad.8
+ man/man8/netatalk.8
test/Makefile
test/afpd/Makefile
- test/netalockd/Makefile
],
[chmod a+x distrib/config/netatalk-config contrib/shell_utils/apple_*]
)