X-Git-Url: https://git.proxmox.com/?p=mirror_spl-debian.git;a=blobdiff_plain;f=configure.ac;h=ab53879e7566b4f92d2674bb2beb3b97d1aaac96;hp=b47ad7af5d9adc5fb9e70eeef3fdad79af0f8884;hb=HEAD;hpb=d4c540de38a669851ccfde7a2d094621757c5995 diff --git a/configure.ac b/configure.ac index b47ad7a..ab53879 100644 --- a/configure.ac +++ b/configure.ac @@ -1,125 +1,88 @@ -AC_INIT - +############################################################################### +# SPL AutoConf Configuration +############################################################################### +# Copyright (C) 2007-2010 Lawrence Livermore National Security, LLC. +# Copyright (C) 2007 The Regents of the University of California. +# Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER). +# Written by Brian Behlendorf . +# UCRL-CODE-235197 +# +# This file is part of the SPL, Solaris Porting Layer. +# For details, see . +# +# The SPL is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# The SPL is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with the SPL. If not, see . +############################################################################### + +AC_INIT(m4_esyscmd(grep Name META | cut -d ':' -f 2 | tr -d ' \n'), + m4_esyscmd(grep Version META | cut -d ':' -f 2 | tr -d ' \n')) +AC_LANG(C) +SPL_AC_META +AC_CONFIG_AUX_DIR([config]) +AC_CONFIG_MACRO_DIR([config]) AC_CANONICAL_SYSTEM -AM_INIT_AUTOMAKE(spl, 0.2.2) -AC_CONFIG_HEADERS([config.h]) +AM_MAINTAINER_MODE +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +AM_INIT_AUTOMAKE +AC_CONFIG_HEADERS([spl_config.h], [ + (mv spl_config.h spl_config.h.tmp && + awk -f ${ac_srcdir}/config/config.awk spl_config.h.tmp >spl_config.h && + rm spl_config.h.tmp) || exit 1]) AC_PROG_INSTALL AC_PROG_CC AC_PROG_LIBTOOL -ver=`uname -r` -kernelsrc= -kernelbuild= -AC_ARG_WITH(kernel, - [ --with-linux=PATH Path to kernel source ], - [kernelsrc="$withval"; kernelbuild="$withval"]) -AC_ARG_WITH(kernel-build, - [ --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-kernel=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 "; - 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 "; - 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 -AC_SUBST(kernelsrc) -AC_SUBST(kmoduledir) - -# -# Each version of the kernel provides a slightly different -# ABI, so figure out what we have to work with and adapt. -# -AC_MSG_CHECKING([if kernel defines kzalloc function]) -if egrep -qw "kzalloc" $kernelsrc/include/linux/slab.h; then - AC_DEFINE(HAVE_KZALLOC, 1, [kzalloc() is defined]) - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi - - -AC_MSG_CHECKING([if kernel has mutex.h ]) -if test -f $kernelsrc/include/linux/mutex.h; then - AC_DEFINE(HAVE_MUTEX_H, 1, [kernel has mutex.h]) - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi - -TOPDIR=`/bin/pwd` - -# Add "V=1" to KERNELMAKE_PARAMS to enable verbose module build -KERNELMAKE_PARAMS= -KERNELCPPFLAGS="-I$TOPDIR -I$TOPDIR/include" - -if test "$kernelbuild" != "$kernelsrc"; then - KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$kernelbuild" -fi - -AC_SUBST(KERNELMAKE_PARAMS) -AC_SUBST(KERNELCPPFLAGS) -AC_SUBST(KERNELCFLAGS) - -AC_CONFIG_FILES([ Makefile - lib/Makefile - cmd/Makefile - modules/Makefile - modules/spl/Makefile - modules/splat/Makefile - include/Makefile - include/sys/Makefile - scripts/Makefile - scripts/spl.spec - ]) +SPL_AC_LICENSE +SPL_AC_PACKAGE +SPL_AC_CONFIG +SPL_AC_DEBUG +SPL_AC_DEBUG_KMEM +SPL_AC_DEBUG_KMEM_TRACKING + +AC_CONFIG_FILES([ + Makefile + man/Makefile + man/man1/Makefile + man/man5/Makefile + lib/Makefile + cmd/Makefile + cmd/splat/Makefile + cmd/splslab/Makefile + module/Makefile + module/spl/Makefile + module/splat/Makefile + include/Makefile + include/fs/Makefile + include/linux/Makefile + include/rpc/Makefile + include/sharefs/Makefile + include/sys/Makefile + include/sys/fm/Makefile + include/sys/fs/Makefile + include/util/Makefile + include/vm/Makefile + scripts/Makefile + rpm/Makefile + rpm/redhat/Makefile + rpm/redhat/spl.spec + rpm/redhat/spl-kmod.spec + rpm/redhat/spl-dkms.spec + rpm/generic/Makefile + rpm/generic/spl.spec + rpm/generic/spl-kmod.spec + rpm/generic/spl-dkms.spec + spl.release +]) AC_OUTPUT