AC_DEFUN([LC_CONST_ACL_SIZE],
[AC_MSG_CHECKING([calc acl size])
tmp_flags="$CFLAGS"
-CFLAGS="$CFLAGS -I$LINUX/include -I$LINUX_OBJ/include -I$LINUX_OBJ/include2 -I$LINUX/arch/`echo $target_cpu|sed -e 's/ppc.*/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -include $AUTOCONF_HDIR/autoconf.h $EXTRA_KCFLAGS"
+CFLAGS="$CFLAGS -I$LINUX/include -I$LINUX_OBJ/include -I$LINUX_OBJ/include2 -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -include $AUTOCONF_HDIR/autoconf.h $EXTRA_KCFLAGS"
AC_TRY_RUN([
#define __KERNEL__
#include <linux/types.h>
])
#
+# 2.6.38 export simple_setattr
+#
+AC_DEFUN([LC_EXPORT_SIMPLE_SETATTR],
+[LB_CHECK_SYMBOL_EXPORT([simple_setattr],
+[fs/libfs.c],[
+AC_DEFINE(HAVE_SIMPLE_SETATTR, 1,
+ [simple_setattr is exported by the kernel])
+],[
+])
+])
+
+#
# 2.6.39 remove unplug_fn from request_queue.
#
AC_DEFUN([LC_REQUEST_QUEUE_UNPLUG_FN],
])
#
-# 2.6.38 export simple_setattr
+# 3.1.1 has ext4_blocks_for_truncate
#
-AC_DEFUN([LC_EXPORT_SIMPLE_SETATTR],
-[LB_CHECK_SYMBOL_EXPORT([simple_setattr],
-[fs/libfs.c],[
-AC_DEFINE(HAVE_SIMPLE_SETATTR, 1,
- [simple_setattr is exported by the kernel])
+AC_DEFUN([LC_BLOCKS_FOR_TRUNCATE],
+[AC_MSG_CHECKING([if kernel has ext4_blocks_for_truncate])
+LB_LINUX_TRY_COMPILE([
+ #include <linux/fs.h>
+ #include "$LINUX/fs/ext4/ext4_jbd2.h"
+ #include "$LINUX/fs/ext4/truncate.h"
+],[
+ ext4_blocks_for_truncate(NULL);
+],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_BLOCKS_FOR_TRUNCATE, 1,
+ [kernel has ext4_blocks_for_truncate])
+],[
+ AC_MSG_RESULT([no])
+])
+])
+
+#
+# 3.1 renames lock-manager ops(lock_manager_operations) from fl_xxx to lm_xxx
+# see kernel commit 8fb47a4fbf858a164e973b8ea8ef5e83e61f2e50
+#
+AC_DEFUN([LC_LM_XXX_LOCK_MANAGER_OPS],
+[AC_MSG_CHECKING([if lock-manager ops renamed to lm_xxx])
+LB_LINUX_TRY_COMPILE([
+ #include <linux/fs.h>
+],[
+ struct lock_manager_operations lm_ops;
+ lm_ops.lm_compare_owner = NULL;
+],[
+ AC_DEFINE(HAVE_LM_XXX_LOCK_MANAGER_OPS, 1,
+ [lock-manager ops renamed to lm_xxx])
+ AC_MSG_RESULT([yes])
],[
+ AC_MSG_RESULT([no])
])
])
])
#
-# 3.1.1 has ext4_blocks_for_truncate
-#
-AC_DEFUN([LC_BLOCKS_FOR_TRUNCATE],
-[AC_MSG_CHECKING([if kernel has ext4_blocks_for_truncate])
-LB_LINUX_TRY_COMPILE([
- #include <linux/fs.h>
- #include "$LINUX/fs/ext4/ext4_jbd2.h"
- #include "$LINUX/fs/ext4/truncate.h"
-],[
- ext4_blocks_for_truncate(NULL);
-],[
- AC_MSG_RESULT([yes])
- AC_DEFINE(HAVE_BLOCKS_FOR_TRUNCATE, 1,
- [kernel has ext4_blocks_for_truncate])
-],[
- AC_MSG_RESULT([no])
-])
-])
-
-#
# LC_PROG_LINUX
#
# Lustre linux kernel checks
# 2.6.39
LC_REQUEST_QUEUE_UNPLUG_FN
- LC_HAVE_FSTYPE_MOUNT
-
- # 3.3
- LC_HAVE_MIGRATE_HEADER
- LC_MIGRATEPAGE_4ARGS
+ LC_HAVE_FSTYPE_MOUNT
# 3.1.1
LC_BLOCKS_FOR_TRUNCATE
+ # 3.1
+ LC_LM_XXX_LOCK_MANAGER_OPS
+
+ # 3.3
+ LC_HAVE_MIGRATE_HEADER
+ LC_MIGRATEPAGE_4ARGS
+
#
if test x$enable_server = xyes ; then
AC_DEFINE(HAVE_SERVER_SUPPORT, 1, [support server])
])
#
+# LC_OSD_ADDON
+#
+# configure support for optional OSD implementation
+#
+AC_DEFUN([LC_OSD_ADDON],
+[AC_MSG_CHECKING([for osd])
+AC_ARG_WITH([osd],
+ AC_HELP_STRING([--with-osd=path],
+ [set path to optional osd]),
+ [
+ case $with_osd in
+ no) ENABLEOSDADDON=0
+ ;;
+ *) OSDADDON="${with_osd}"
+ ENABLEOSDADDON=1
+ ;;
+ esac
+ ], [
+ ENABLEOSDADDON=0
+ ])
+if test $ENABLEOSDADDON -eq 0; then
+ AC_MSG_RESULT([no])
+ OSDADDON=
+else
+ OSDMODNAME=`basename $OSDADDON`
+ if test -e $LUSTRE/$OSDMODNAME; then
+ AC_MSG_RESULT([can't link])
+ OSDADDON=
+ elif ln -s $OSDADDON $LUSTRE/$OSDMODNAME; then
+ AC_MSG_RESULT([$OSDMODNAME])
+ OSDADDON="subdir-m += $OSDMODNAME"
+ else
+ AC_MSG_RESULT([can't link])
+ OSDADDON=
+ fi
+fi
+AC_SUBST(OSDADDON)
+])
+
+#
# LC_CONFIGURE
#
# other configure checks
lustre/kernel_patches/targets/2.6-rhel5.target
lustre/kernel_patches/targets/2.6-sles10.target
lustre/kernel_patches/targets/2.6-sles11.target
+lustre/kernel_patches/targets/3.0-sles11.target
lustre/kernel_patches/targets/2.6-oel5.target
lustre/kernel_patches/targets/2.6-fc11.target
lustre/kernel_patches/targets/2.6-fc12.target
lustre/obdclass/linux/Makefile
lustre/obdecho/Makefile
lustre/obdecho/autoMakefile
-lustre/obdfilter/Makefile
-lustre/obdfilter/autoMakefile
lustre/ofd/Makefile
lustre/ofd/autoMakefile
lustre/osc/Makefile
lustre/mgc/autoMakefile
lustre/mgs/Makefile
lustre/mgs/autoMakefile
+lustre/target/Makefile
lustre/ptlrpc/Makefile
lustre/ptlrpc/autoMakefile
lustre/ptlrpc/gss/Makefile
lustre/quota/Makefile
lustre/quota/autoMakefile
lustre/scripts/Makefile
-lustre/scripts/lustre
lustre/tests/Makefile
lustre/tests/mpi/Makefile
lustre/utils/Makefile