needed])],
,
[enable_bitmap_later="no"])
-AC_ARG_ENABLE([demand-attach-fs],
- [AS_HELP_STRING([--enable-demand-attach-fs],
- [enable Demand Attach Fileserver (please see documentation)])],
- ,
- [enable_demand_attach_fs="no"])
AC_ARG_ENABLE([unix-sockets],
[AS_HELP_STRING([--disable-unix-sockets],
[disable use of unix domain sockets for fssync (defaults to enabled)])],
,
[enable_unix_sockets="yes"])
-AC_ARG_ENABLE([icmp-pmtu-discovery],
- [AS_HELP_STRING([--enable-icmp-pmtu-discovery],
- [enable path MTU discovery by decoding ICMP unreachable replies])],
- ,
- [enable_icmp_pmtu_discovery="no"])
AC_ARG_ENABLE([tivoli-tsm],
[AS_HELP_STRING([--enable-tivoli-tsm],
[enable use of the Tivoli TSM API libraries for butc support])],
AC_PROG_RANLIB
AC_PROG_YACC
AM_PROG_LEX
+dnl if we are flex, be lex-compatible
+OPENAFS_LEX_IS_FLEX([AC_SUBST([LEX], ["$LEX -l"])])
+OPENAFS_FORCE_ABS_INSTALL
OPENAFS_CHECK_BIGENDIAN
OPENAFS_PRINTF_TAKES_Z_LEN
vm=${v#*.}
AFS_SYSNAME="amd64_fbsd_${vM}${vm}"
;;
- i386-*-dragonfly2.2*)
- AFS_SYSNAME="i386_dfbsd_23"
- ;;
- i386-*-dragonfly2.3*)
- AFS_SYSNAME="i386_dfbsd_23"
+ i386-*-dragonfly?.*)
+ v=${host#*dragonfly}
+ vM=${v%.*}
+ vm=${v#*.}
+ AFS_SYSNAME="i386_dfbsd_${vM}${vm}"
;;
i?86-*-netbsd*1.6[[M-Z]]*)
AFS_SYSNAME="i386_nbsd20"
AC_CHECK_LINUX_STRUCT([super_block], [s_bdi], [fs.h])
AC_CHECK_LINUX_STRUCT([super_operations], [alloc_inode],
[fs.h])
+ AC_CHECK_LINUX_STRUCT([super_operations], [evict_inode],
+ [fs.h])
AC_CHECK_LINUX_STRUCT([task_struct], [cred], [sched.h])
AC_CHECK_LINUX_STRUCT([task_struct], [exit_state], [sched.h])
AC_CHECK_LINUX_STRUCT([task_struct], [parent], [sched.h])
AC_CHECK_LINUX_FUNC([i_size_read],
[#include <linux/fs.h>],
[i_size_read(NULL);])
+ AC_CHECK_LINUX_FUNC([inode_setattr],
+ [#include <linux/fs.h>],
+ [inode_setattr(NULL, NULL);])
AC_CHECK_LINUX_FUNC([kernel_setsockopt],
[#include <linux/net.h>],
[kernel_setsockopt(NULL, 0, 0, NULL, 0);])
AC_DEFINE(BITMAP_LATER, 1, [define if you want to salvager to check bitmasks later])
fi
-if test "$enable_demand_attach_fs" = "yes"; then
- AC_DEFINE(DEMAND_ATTACH_ENABLE, 1, [define if you want the demand attach fileserver])
- DEMAND_ATTACH="yes"
-else
- DEMAND_ATTACH="no"
-fi
-AC_SUBST(DEMAND_ATTACH)
-
if test "$enable_unix_sockets" = "yes"; then
AC_DEFINE(USE_UNIX_SOCKETS, 1, [define if you want to use UNIX sockets for fssync.])
USE_UNIX_SOCKETS="yes"
fi
AC_SUBST(USE_UNIX_SOCKETS)
-if test "$enable_icmp_pmtu_discovery" = "yes"; then
- if test "$ac_cv_setsockopt_iprecverr" = "yes"; then
- AC_DEFINE(ADAPT_PMTU, 1, [define if you want to decode icmp unreachable packets to discover path mtu])
- fi
-fi
+dnl if test "$ac_cv_setsockopt_iprecverr" = "yes"; then
+dnl AC_DEFINE(ADAPT_PMTU, 1, [define if you want to decode icmp unreachable packets to discover path mtu])
+dnl fi
if test "$enable_namei_fileserver" = "yes"; then
AC_DEFINE(AFS_NAMEI_ENV, 1, [define if you want to want namei fileserver])
AC_CHECK_HEADERS(netinet/in.h netdb.h sys/fcntl.h sys/mnttab.h sys/mntent.h)
AC_CHECK_HEADERS(mntent.h sys/vfs.h sys/param.h sys/fs_types.h sys/fstyp.h)
AC_CHECK_HEADERS(sys/mount.h strings.h termios.h signal.h sys/pag.h)
-AC_CHECK_HEADERS(windows.h direct.h sys/ipc.h sys/resource.h)
+AC_CHECK_HEADERS(windows.h direct.h sys/ipc.h sys/resource.h sys/un.h)
AC_CHECK_HEADERS(security/pam_modules.h ucontext.h regex.h sys/statvfs.h sys/statfs.h sys/bitypes.h)
AC_CHECK_HEADERS(linux/errqueue.h,,,[#include <linux/types.h>])
AC_CHECK_HEADERS(et/com_err.h)
fi
AC_SUBST(BUILD_LOGIN)
-AC_CHECK_FUNCS(snprintf strlcat strlcpy flock getrlimit)
-AC_CHECK_FUNCS(setprogname getprogname sigaction mkstemp vsnprintf strerror strcasestr)
-AC_CHECK_FUNCS(setvbuf vsyslog getcwd)
-AC_CHECK_FUNCS(regcomp regexec regerror)
-AC_CHECK_FUNCS(fseeko64 ftello64)
+AC_CHECK_FUNCS([ \
+ arc4random \
+ daemon \
+ flock \
+ fseeko64 \
+ ftello64 \
+ getcwd \
+ getegid \
+ geteuid \
+ getgid \
+ getuid \
+ getprogname \
+ getrlimit \
+ issetugid \
+ mkstemp \
+ pread \
+ preadv \
+ pwrite \
+ pwritev \
+ regcomp \
+ regerror \
+ regexec \
+ setitimer \
+ setprogname \
+ setvbuf \
+ sigaction \
+ snprintf \
+ strcasestr \
+ strerror \
+ strlcat \
+ strlcpy \
+ timegm \
+ vsnprintf \
+ vsyslog \
+])
+
+AC_MSG_CHECKING([for positional I/O])
+if test "$ac_cv_func_pread" = "yes" && \
+ test "$ac_cv_func_pwrite" = "yes"; then
+ AC_DEFINE(HAVE_PIO, 1, [define if you have pread() and pwrite()])
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
+AC_MSG_CHECKING([for vectored positional I/O])
+if test "$ac_cv_func_preadv" = "yes" && \
+ test "$ac_cv_func_pwritev" = "yes"; then
+ AC_DEFINE(HAVE_PIOV, 1, [define if you have preadv() and pwritev()])
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+fi
+
AC_MSG_CHECKING([for POSIX regex library])
if test "$ac_cv_header_regex_h" = "yes" && \
test "$ac_cv_func_regcomp" = "yes" && \
fi
AC_TYPE_SIGNAL
+OPENAFS_RETSIGTYPE
AC_CHECK_SIZEOF(void *)
AC_CHECK_SIZEOF(unsigned long long)
AC_CHECK_SIZEOF(unsigned long)
AC_HEADER_PAM_CONST
-AC_CHECK_FUNCS(timegm)
-AC_CHECK_FUNCS(daemon)
dnl Directory PATH handling
if test "x$enable_transarc_paths" = "xyes" ; then
mkdir -p ${TOP_OBJDIR}/src/JAVA/libjafs
+dnl Check to see if crypt lives in a different library
+AC_CHECK_LIB(crypt, crypt, LIB_crypt="-lcrypt")
+AC_SUBST(LIB_crypt)
+
+dnl Check to see if the compiler support labels in structs
+AC_MSG_CHECKING(for label support in structs)
+AC_TRY_COMPILE([], [
+extern void osi_UFSOpen(void);
+struct labeltest {
+ void (*open) (void);
+};
+struct labeltest struct_labeltest = {
+ .open = osi_UFSOpen,
+}
+],
+[AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_STRUCT_LABEL_SUPPORT, 1, [Define to 1 if your compiler supports labels in structs.])
+],
+[AC_MSG_RESULT(no)
+])
+
+dnl Eventually, this will look for the system one, or for OpenSSL
+LIB_hcrypto="-lafshcrypto"
+AC_SUBST(LIB_hcrypto)
])