])
])
-# check userland __u64 type
+# check userland & kernel __u64 type
AC_DEFUN([LIBCFS_U64_LONG_LONG],
[AC_MSG_CHECKING([u64 is long long type])
tmp_flags="$CFLAGS"
}
],[
AC_MSG_RESULT([yes])
- AC_DEFINE(HAVE_U64_LONG_LONG, 1,
+ AC_DEFINE(HAVE_USER__U64_LONG_LONG, 1,
[__u64 is long long type])
],[
AC_MSG_RESULT([no])
])
CFLAGS="$tmp_flags"
+AC_MSG_CHECKING([kernel __u64 is long long type])
+tmp_flags="$EXTRA_KCFLAGS"
+EXTRA_KCFLAGS="$EXTRA_KCFLAGS -Werror"
+LB_LINUX_TRY_COMPILE([
+ #include <linux/types.h>
+ #include <linux/stddef.h>
+],[
+ unsigned long long *data1;
+ __u64 *data2 = NULL;
+
+ data1 = data2;
+],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_KERN__U64_LONG_LONG, 1,
+ [kernel __u64 is long long type])
+],[
+ AC_MSG_RESULT([no])
+])
+EXTRA_KCFLAGS="$tmp_flags"
])
# check userland size_t type
])
])
-
#
# LIBCFS_PROG_LINUX
#
# lnet/utils/wirecheck.c
AC_CHECK_FUNCS([strnlen])
+AC_CHECK_TYPE([umode_t],
+ [AC_DEFINE(HAVE_UMODE_T, 1, [umode_t is defined])],
+ [],
+ [#include <signal.h>])
+
+AC_CHECK_TYPE([__u64],
+ [AC_DEFINE(HAVE___U64, 1, [__u64 is defined])],
+ [],
+ [#include <signal.h>])
+
+AC_CHECK_TYPE([__s64],
+ [AC_DEFINE(HAVE___S64, 1, [__s64 is defined])],
+ [],
+ [#include <signal.h>])
+
# -------- Check for required packages --------------
libcfs/libcfs/Makefile
libcfs/libcfs/autoMakefile
libcfs/libcfs/linux/Makefile
+libcfs/libcfs/ulinux/Makefile
libcfs/libcfs/posix/Makefile
libcfs/libcfs/util/Makefile
])