-AC_DEFUN([ZFS_AC_CONFIG], [
-
- AC_ARG_WITH([zfs-config],
- AS_HELP_STRING([--with-config=CONFIG],
- [Config file 'kernel|user|lustre']),
- [zfsconfig="$withval"])
-
- AC_MSG_CHECKING([zfs config file])
- if test -z "$zfsconfig" || test ! -r config/$zfsconfig; then
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([
- *** Please specify one of the valid config files located
- *** in ./config/ with the '--with-zfs-config=CONFIG' option])
- fi
-
- AC_MSG_RESULT([$zfsconfig]);
- . ./config/$zfsconfig
-
- TOPDIR=`/bin/pwd`
- ZFSDIR=${TOPDIR}/$BUILDDIR
- LIBDIR=$ZFSDIR/lib
- CMDDIR=$ZFSDIR/zcmd
-
- AC_SUBST(TOPDIR)
- AC_SUBST(ZFSDIR)
- AC_SUBST(LIBDIR)
- AC_SUBST(CMDDIR)
-])
-
-AC_DEFUN([ZFS_AC_KERNEL], [
- ver=`uname -r`
-
- AC_ARG_WITH([linux],
- AS_HELP_STRING([--with-linux=PATH],
- [Path to kernel source]),
- [kernelsrc="$withval"; kernelbuild="$withval"])
-
- AC_ARG_WITH(linux-obj,
- AS_HELP_STRING([--with-linux-obj=PATH],
- [Path to kernel build objects]),
- [kernelbuild="$withval"])
-
- AC_MSG_CHECKING([kernel source directory])
- if test -z "$kernelsrc"; then
- kernelbuild=
- sourcelink=/lib/modules/${ver}/source
- buildlink=/lib/modules/${ver}/build
-
- if test -e $sourcelink; then
- kernelsrc=`(cd $sourcelink; /bin/pwd)`
- fi
- if test -e $buildlink; then
- kernelbuild=`(cd $buildlink; /bin/pwd)`
- fi
- if test -z "$kernelsrc"; then
- kernelsrc=$kernelbuild
- fi
- if test -z "$kernelsrc" -o -z "$kernelbuild"; then
- AC_MSG_RESULT([Not found])
- AC_MSG_ERROR([
- *** Please specify the location of the kernel source
- *** with the '--with-linux=PATH' option])
- fi
- fi
-
- AC_MSG_RESULT([$kernelsrc])
- AC_MSG_CHECKING([kernel build directory])
- AC_MSG_RESULT([$kernelbuild])
-
- AC_MSG_CHECKING([kernel source version])
- if test -r $kernelbuild/include/linux/version.h &&
- fgrep -q UTS_RELEASE $kernelbuild/include/linux/version.h; then
-
- kernsrcver=`(echo "#include <linux/version.h>";
- echo "kernsrcver=UTS_RELEASE") |
- cpp -I $kernelbuild/include |
- grep "^kernsrcver=" | cut -d \" -f 2`
-
- elif test -r $kernelbuild/include/linux/utsrelease.h &&
- fgrep -q UTS_RELEASE $kernelbuild/include/linux/utsrelease.h; then
-
- kernsrcver=`(echo "#include <linux/utsrelease.h>";
- echo "kernsrcver=UTS_RELEASE") |
- cpp -I $kernelbuild/include |
- grep "^kernsrcver=" | cut -d \" -f 2`
- fi
-
- if test -z "$kernsrcver"; then
- AC_MSG_RESULT([Not found])
- AC_MSG_ERROR([
- *** Cannot determine the version of the linux kernel source.
- *** Please prepare the kernel before running this script])
- fi
-
- AC_MSG_RESULT([$kernsrcver])
-
- kmoduledir=${INSTALL_MOD_PATH}/lib/modules/$kernsrcver
- LINUX=${kernelsrc}
- LINUX_OBJ=${kernelbuild}