Linux: Simplify header file checks
[openafs.git] / src / cf / linux-test3.m4
index d82c888..577adfa 100644 (file)
@@ -1,52 +1,47 @@
-AC_DEFUN(LINUX_NEED_RHCONFIG,[
+AC_DEFUN([LINUX_NEED_RHCONFIG],[
 RHCONFIG_SP=""
 RHCONFIG_MP=""
 if test "x$enable_redhat_buildsys" = "xyes"; then
   AC_MSG_WARN(Configured to build from a Red Hat SPEC file)
 else
   AC_MSG_CHECKING(for redhat kernel configuration)
-  if test -f "${LINUX_KERNEL_PATH}/include/linux/rhconfig.h"; then
-    ac_linux_rhconfig=yes
+  AC_TRY_KBUILD([#include <linux/rhconfig.h>], [],
+    [ac_linux_rhconfig=yes], [ac_linux_rhconfig=no])
+  AC_MSG_RESULT($ac_linux_rhconfig)
+  if test x"$ac_linux_rhconfig" = xyes; then
     RHCONFIG_SP="-D__BOOT_KERNEL_UP=1 -D__BOOT_KERNEL_SMP=0"
     RHCONFIG_MP="-D__BOOT_KERNEL_UP=0 -D__BOOT_KERNEL_SMP=1"
     AC_MSG_RESULT($ac_linux_rhconfig)
     if test ! -f "/boot/kernel.h"; then
         AC_MSG_WARN([/boot/kernel.h does not exist. build may fail])
     fi
-  else
-    ac_linux_rhconfig=no
-    AC_MSG_RESULT($ac_linux_rhconfig)
   fi
 fi
 AC_SUBST(RHCONFIG_SP)
 AC_SUBST(RHCONFIG_MP)
 ])
 
-AC_DEFUN(LINUX_WHICH_MODULES,[
+
+dnl This depends on LINUX_CONFIG_H_EXISTS running first!
+
+AC_DEFUN([LINUX_WHICH_MODULES],[
 if test "x$enable_redhat_buildsys" = "xyes"; then
   MPS=Default
 else
   save_CPPFLAGS="$CPPFLAGS"
   CPPFLAGS="-I${LINUX_KERNEL_PATH}/include -D__KERNEL__ $RHCONFIG_SP $CPPFLAGS"
-  AC_MSG_CHECKING(if kernel uses MODVERSIONS)
-  AC_CACHE_VAL(ac_cv_linux_config_modversions,[
-  AC_TRY_COMPILE(
-[#include <linux/config.h>
-],
-[#ifndef CONFIG_MODVERSIONS
-lose;
-#endif
-],
-  ac_cv_linux_config_modversions=yes,
-  ac_cv_linux_config_modversions=no)])
-  AC_MSG_RESULT($ac_cv_linux_config_modversions)
   AC_MSG_CHECKING(which kernel modules to build)
-  if test "x$ac_linux_rhconfig" = "xyes" -o "x$ac_cv_linux_config_modversions" = "xno"; then
+  if test "x$ac_cv_linux_header_config_h" = "xyes"; then
+    CPPFLAGS="-DCONFIG_H_EXISTS $CPPFLAGS"
+  fi
+  if test "x$ac_linux_rhconfig" = "xyes"; then
       MPS="MP SP"
   else
   AC_CACHE_VAL(ac_cv_linux_config_smp, [
-  AC_TRY_COMPILE(
-[#include <linux/config.h>
+  AC_TRY_KBUILD(
+[#ifdef CONFIG_H_EXISTS
+#include <linux/config.h>
+#endif
 ],
 [#ifndef CONFIG_SMP
 lose;
@@ -67,3 +62,9 @@ fi
 AC_SUBST(MPS)
 ])
 
+AC_DEFUN([LINUX_KERNEL_LINUX_SEQ_FILE_H],[
+  AC_MSG_CHECKING(for linux/seq_file.h in kernel)
+  AC_TRY_KBUILD([#include <linux/seq_file.h>], [],
+    [ac_linux_seq_file=yes], [ac_linux_seq_file=no])
+  AC_MSG_RESULT($ac_linux_seq_file)
+])