-dnl $Id: configure.in,v 1.222 2009-10-23 14:09:50 franklahm Exp $
+dnl $Id: configure.in,v 1.231 2009-11-25 10:09:02 didg Exp $
dnl configure.in for netatalk
AC_INIT(etc/afpd/main.c)
powerpc|ppc) this_cpu=ppc ;;
esac
+dnl --------------------- GNU source
+case "$this_os" in
+ linux) AC_DEFINE(_GNU_SOURCE, 1, [Whether to use GNU libc extensions])
+ ;;
+esac
+
dnl --------------------- operating system specific flags (port from sys/*)
dnl ----- AIX specific -----
dnl ----- see etc/afpd/quota.c
AC_DEFINE(HAVE_BROKEN_DBTOB, 1, [Define if dbtob is broken])
- netatalk_cv_linux_sendfile=no
-dnl disable this for now, code doesn't use sendfile anyway
-dnl AC_ARG_ENABLE(sendfile,
-dnl [ --enable-sendfile use sendfile syscall default (no) ],[
-dnl if test "$enableval" = "yes"; then
-dnl netatalk_cv_linux_sendfile=yes
-dnl fi
-dnl AC_MSG_RESULT([enabling sendfile syscall])
-dnl ]
-dnl )
+ netatalk_cv_linux_sendfile=yes
+ AC_MSG_CHECKING([use sendfile syscall])
+ AC_ARG_ENABLE(sendfile,
+ [ --disable-sendfile disable linux sendfile syscall],[
+ if test x"$enableval" = x"no"; then
+ netatalk_cv_linux_sendfile=no
+ AC_MSG_RESULT([no])
+ else
+ AC_MSG_RESULT([yes])
+
+ fi
+ ],[
+ AC_MSG_RESULT([yes])
+ ]
+
+ )
if test x"$netatalk_cv_linux_sendfile" = "xyes"; then
AC_CACHE_CHECK([for linux sendfile support],netatalk_cv_HAVE_SENDFILE,[
AC_SUBST(LIBATALK_ACLS)
dnl --------------------- check for Extended Attributes support
-neta_cv_eas="adouble"
-if test "x$this_os" = "xsolaris"; then
- AC_CHECK_LIB(c,attropen, [
- neta_cv_eas="$neta_cv_eas Solaris"
- neta_cv_solaris_eas="yes"
- AC_MSG_NOTICE([Enabling Solaris Extended Attributes support])
- AC_DEFINE([HAVE_SOLARIS_EAS], 1, [Enable Extended Attributes])
- ]
- )
+neta_cv_eas="files"
+neta_cv_eas_sys_found=no
+neta_cv_eas_sys_not_found=no
+
+AC_CHECK_HEADERS(sys/attributes.h attr/xattr.h sys/xattr.h sys/extattr.h sys/uio.h sys/ea.h)
+
+case "$this_os" in
+
+ *osf*)
+ AC_SEARCH_LIBS(getproplist, [proplist])
+ AC_CHECK_FUNCS([getproplist fgetproplist setproplist fsetproplist],
+ [neta_cv_eas_sys_found=yes],
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([delproplist fdelproplist add_proplist_entry get_proplist_entry],,
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([sizeof_proplist_entry],,
+ [neta_cv_eas_sys_not_found=yes])
+ ;;
+
+ *solaris*)
+ AC_CHECK_FUNCS([attropen],
+ [neta_cv_eas_sys_found=yes],
+ [neta_cv_eas_sys_not_found=yes])
+ ;;
+
+ *)
+ AC_SEARCH_LIBS(getxattr, [attr])
+
+ if test "x$neta_cv_eas_sys_found" != "xyes" ; then
+ AC_CHECK_FUNCS([getxattr lgetxattr fgetxattr listxattr llistxattr],
+ [neta_cv_eas_sys_found=yes],
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([flistxattr removexattr lremovexattr fremovexattr],,
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([setxattr lsetxattr fsetxattr],,
+ [neta_cv_eas_sys_not_found=yes])
+ fi
+
+ if test "x$neta_cv_eas_sys_found" != "xyes" ; then
+ AC_CHECK_FUNCS([getea fgetea lgetea listea flistea llistea],
+ [neta_cv_eas_sys_found=yes],
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([removeea fremoveea lremoveea setea fsetea lsetea],,
+ [neta_cv_eas_sys_not_found=yes])
+ fi
+
+ if test "x$neta_cv_eas_sys_found" != "xyes" ; then
+ AC_CHECK_FUNCS([attr_get attr_list attr_set attr_remove],,
+ [neta_cv_eas_sys_not_found=yes])
+ AC_CHECK_FUNCS([attr_getf attr_listf attr_setf attr_removef],,
+ [neta_cv_eas_sys_not_found=yes])
+ fi
+ ;;
+esac
+
+# Do xattr functions take additional options like on Darwin?
+if test x"$ac_cv_func_getxattr" = x"yes" ; then
+ AC_CACHE_CHECK([whether xattr interface takes additional options], smb_attr_cv_xattr_add_opt, [
+ old_LIBS=$LIBS
+ LIBS="$LIBS $ACL_LIBS"
+ AC_TRY_COMPILE([
+ #include <sys/types.h>
+ #if HAVE_ATTR_XATTR_H
+ #include <attr/xattr.h>
+ #elif HAVE_SYS_XATTR_H
+ #include <sys/xattr.h>
+ #endif
+ ],[
+ getxattr(0, 0, 0, 0, 0, 0);
+ ],
+ [smb_attr_cv_xattr_add_opt=yes],
+ [smb_attr_cv_xattr_add_opt=no;LIBS=$old_LIBS])
+ ])
+ if test x"$smb_attr_cv_xattr_add_opt" = x"yes"; then
+ AC_DEFINE(XATTR_ADD_OPT, 1, [xattr functions have additional options])
+ fi
+fi
+
+# Check if we have extattr
+case "$this_os" in
+ *freebsd4* | *dragonfly* )
+ AC_DEFINE(BROKEN_EXTATTR, 1, [Does extattr API work])
+ ;;
+ *)
+ AC_CHECK_FUNCS(extattr_delete_fd extattr_delete_file extattr_delete_link)
+ AC_CHECK_FUNCS(extattr_get_fd extattr_get_file extattr_get_link)
+ AC_CHECK_FUNCS(extattr_list_fd extattr_list_file extattr_list_link)
+ AC_CHECK_FUNCS(extattr_set_fd extattr_set_file extattr_set_link)
+ ;;
+esac
+
+if test "x$neta_cv_eas_sys_found" = "xyes" ; then
+ if test "x$neta_cv_eas_sys_not_found" != "xyes" ; then
+ neta_cv_eas="$neta_cv_eas | native"
+ fi
fi
dnl --------------------- Netatalk Webmin
AM_CONDITIONAL(HAVE_LIBGCRYPT, test x$neta_cv_have_libgcrypt = xyes)
AM_CONDITIONAL(HAVE_OPENSSL, test x$neta_cv_have_openssl = xyes)
AM_CONDITIONAL(USE_NFSv4_ACLS, test x$neta_cv_nfsv4acl = xyes)
-AM_CONDITIONAL(USE_SOLARIS_EAS, test x$neta_cv_solaris_eas = xyes)
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)
bin/cnid/cnid2_create
bin/getzones/Makefile
bin/megatron/Makefile
+ bin/misc/Makefile
bin/nbp/Makefile
bin/pap/Makefile
bin/psorder/Makefile
bin/uniconv/Makefile
config/Makefile
+ config/pam/Makefile
contrib/Makefile
contrib/acltests/Makefile
contrib/macusers/Makefile
libatalk/asp/Makefile
libatalk/atp/Makefile
libatalk/cnid/Makefile
- libatalk/cnid/db3/Makefile
libatalk/cnid/cdb/Makefile
libatalk/cnid/last/Makefile
libatalk/cnid/mtab/Makefile
libatalk/cnid/dbd/Makefile
- libatalk/cnid/hash/Makefile
libatalk/cnid/tdb/Makefile
libatalk/compat/Makefile
libatalk/dsi/Makefile