to disabled)])],
[enable_checking="$enableval"],
[enable_checking="no"])
+AC_ARG_ENABLE([debug-locks],
+ [AS_HELP_STRING([--enable-debug-locks],
+ [turn on lock debugging assertions (defaults to disabled)])],
+ [enable_debug_locks="$enableval"],
+ [enable_debug_locks="no"])
AC_ARG_ENABLE([debug-kernel],
[AS_HELP_STRING([--enable-debug-kernel],
[enable compilation of the kernel module with debugging information
[enable Linux syscall probing (defaults to autodetect)])],
,
[enable_linux_syscall_probing="maybe"])
+AC_ARG_WITH([crosstools-dir],
+ [AS_HELP_STRING([--with-crosstools-dir=path], [use path for native versions of rxgen, compile_et and config])])
AC_ARG_WITH([xslt-processor],
AS_HELP_STRING([--with-xslt-processor=ARG],
vm=${v#*.}
AFS_SYSNAME="amd64_obsd${vM}${vm}"
;;
- i?86-*-freebsd?.*)
+ i?86-*-freebsd*.*)
v=${host#*freebsd}
vM=${v%.*}
vm=${v#*.}
AFS_SYSNAME="i386_fbsd_${vM}${vm}"
;;
- x86_64-*-freebsd?.*)
+ x86_64-*-freebsd*.*)
v=${host#*freebsd}
vM=${v%.*}
vm=${v#*.}
AC_CHECK_LINUX_HEADER([semaphore.h])
AC_CHECK_LINUX_HEADER([seq_file.h])
+ dnl Type existence checks
+ AC_CHECK_LINUX_TYPE([struct vfs_path], [dcache.h])
+
dnl Check for structure elements
AC_CHECK_LINUX_STRUCT([address_space_operations],
[write_begin], [fs.h])
AC_CHECK_LINUX_STRUCT([file_operations], [flock], [fs.h])
AC_CHECK_LINUX_STRUCT([file_operations], [sendfile], [fs.h])
AC_CHECK_LINUX_STRUCT([file_system_type], [mount], [fs.h])
+ AC_CHECK_LINUX_STRUCT([filename], [name], [fs.h])
+ AC_CHECK_LINUX_STRUCT([key_type], [preparse], [key-type.h])
AC_CHECK_LINUX_STRUCT([nameidata], [path], [namei.h])
AC_CHECK_LINUX_STRUCT([proc_dir_entry], [owner], [proc_fs.h])
AC_CHECK_LINUX_STRUCT([super_block], [s_bdi], [fs.h])
AC_CHECK_LINUX_FUNC([noop_fsync],
[#include <linux/fs.h>],
[void *address = &noop_fsync; printk("%p\n", address)];)
+ AC_CHECK_LINUX_FUNC([kthread_run],
+ [#include <linux/kernel.h>
+ #include <linux/kthread.h>],
+ [kthread_run(NULL, NULL, "test");])
dnl Consequences - things which get set as a result of the
dnl above tests
[define to disable the nfs translator])])
dnl Assorted more complex tests
+ LINUX_AIO_NONVECTOR
LINUX_EXPORTS_PROC_ROOT_FS
LINUX_KMEM_CACHE_INIT
LINUX_HAVE_KMEM_CACHE_T
LINUX_IOP_MKDIR_TAKES_UMODE_T
LINUX_IOP_CREATE_TAKES_UMODE_T
LINUX_EXPORT_OP_ENCODE_FH_TAKES_INODES
+ LINUX_KMAP_ATOMIC_TAKES_NO_KM_TYPE
+ LINUX_DENTRY_OPEN_TAKES_PATH
+ LINUX_D_ALIAS_IS_HLIST
+ LINUX_IOP_I_CREATE_TAKES_BOOL
+ LINUX_DOP_D_REVALIDATE_TAKES_UNSIGNED
+ LINUX_IOP_LOOKUP_TAKES_UNSIGNED
dnl If we are guaranteed that keyrings will work - that is
dnl a) The kernel has keyrings enabled
OPENAFS_TEST_PACKAGE(libintl,[#include <libintl.h>],[-lintl],,,INTL)
+if test "$enable_debug_locks" = yes; then
+ AC_DEFINE(OPR_DEBUG_LOCKS, 1, [turn on lock debugging in opr])
+fi
+
dnl Don't build PAM on IRIX; the interface doesn't work for us.
if test "$ac_cv_header_security_pam_modules_h" = yes -a "$enable_pam" = yes; then
case $AFS_SYSNAME in
getrlimit \
issetugid \
mkstemp \
+ poll \
pread \
preadv \
preadv64 \
DEST="${SRCDIR_PARENT}/${AFS_SYSNAME}/dest"
fi
+if test "x$with_crosstools_dir" != "x"; then
+ if test -f "$with_crosstools_dir/rxgen" -a -f "$with_crosstools_dir/compile_et" -a -f "$with_crosstools_dir/config"; then
+ COMPILE_ET_PATH=$with_crosstools_dir/compile_et
+ CONFIGTOOL_PATH=$with_crosstools_dir/config
+ RXGEN_PATH=$with_crosstools_dir/rxgen
+ else
+ AC_MSG_ERROR(Tools not found in $with_crosstools_dir)
+ exit 1
+ fi
+else
+ COMPILE_ET_PATH="${SRCDIR_PARENT}/src/comerr/compile_et"
+ CONFIGTOOL_PATH="${SRCDIR_PARENT}/src/config/config"
+ RXGEN_PATH="${SRCDIR_PARENT}/src/rxgen/rxgen"
+fi
+AC_SUBST(COMPILE_ET_PATH)
+AC_SUBST(CONFIGTOOL_PATH)
+AC_SUBST(RXGEN_PATH)
+
HELPER_SPLINT="${TOP_SRCDIR}/helper-splint.sh"
HELPER_SPLINTCFG="${TOP_SRCDIR}/splint.cfg"
AC_SUBST(HELPER_SPLINT)
LDFLAGS_hcrypto="-L\$(TOP_LIBDIR)"
AC_SUBST(LIB_hcrypto)
AC_SUBST(LDFLAGS_hcrypto)
+
+dnl Check for UUID library
+AC_CHECK_HEADERS([uuid/uuid.h])
+AC_CHECK_LIB(uuid, uuid_generate, LIBS_uuid="-luuid")
+AC_CHECK_FUNCS([uuid_generate])
])
+
AC_DEFUN([SUMMARY], [
# Print a configuration summary
echo