aboutsummaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in33
1 files changed, 27 insertions, 6 deletions
diff --git a/configure.in b/configure.in
index 27ed75d..f96349f 100644
--- a/configure.in
+++ b/configure.in
@@ -92,19 +92,36 @@ esac
AC_SUBST(USB_CFLAGS)
AC_SUBST(USB_LIBS)
+dnl --- only use deprecated kernel module if requested
+
+AC_DEFUN([TEST_KERNEL],
+[AC_ARG_WITH([kernel-module],
+ AC_HELP_STRING([--with-kernel-module],
+ [enable the deprecated kernel module for 2.2.x and 2.4.x]),
+ [ac_cv_use_kernel=$withval], [ac_cv_use_kernel=no])
+AC_CACHE_CHECK([whether to build the kernel module],
+ [ac_cv_use_kernel], [ac_cv_use_kernel=no])])
+
+TEST_KERNEL
+
+if test "$ac_cv_use_kernel" = yes; then
+ MPIO_KERNEL=kernel
+
dnl --- check for kernel version
kernel_version=`uname -r 2>&1`
echo -n "checking for kernel version ... "
case "$kernel_version" in
- '') kernel_version="?.??"; _k_verc_fail=yes;;
- [0-1].[0-9].[0-9]*|2.[0-1].[0-9]*)
- _k_verc_fail=no;;
+ '') kernel_version="?.??"; _k_verc_fail=yes;;
+ [[0-1]].[[0-9]].[[0-9]]*|2.[[0-1]].[[0-9]]*|2.[[5-9]].[[0-9]]*|3.[[0-9]]*.[[0-9]]*)
+ _k_verc_fail=yes;;
+ *) k_ver_fail=no;;
esac
echo $kernel_version
if test "$_k_verc_fail" ; then
- echo " Your kernel version is too old."
- echo " Please update your system to a kernel version of 2.2.x or higher."
- AC_ERROR(too old)
+ echo " Your kernel version does not match."
+ echo " The kernel module only works for kernel 2.2.x and 2.4.x."
+ AC_ERROR(wrong kernel version)
+ unset MPIO_KERNEL
fi
MODULE_PATH="/lib/modules/${kernel_version}"
@@ -138,6 +155,10 @@ else
fi
AC_SUBST(KERNEL_INCLUDE)
+fi
+
+AC_SUBST(MPIO_KERNEL)
+
dnl ------------------------------------------------------------
# could not find a way to compile the kernel module correctly