From: Ben Pfaff Date: Fri, 2 Jul 2010 17:10:04 +0000 (-0700) Subject: configure: Add --with-l26-source option to specify source dir explicitly. X-Git-Tag: v1.1.0pre1~188 X-Git-Url: http://git.onelab.eu/?p=sliver-openvswitch.git;a=commitdiff_plain;h=f5fb5de6bed79b77fff769bec1b2a5cb3fe80db0 configure: Add --with-l26-source option to specify source dir explicitly. OVS can usually find the kernel source itself, but when it can't it's handy if the user can just specify it on the "configure" command line. Signed-off-by: Ian Campbell . Signed-off-by: Ben Pfaff Reported-by: Jad Naous --- diff --git a/AUTHORS b/AUTHORS index eda90e0e0..b0f31d93d 100644 --- a/AUTHORS +++ b/AUTHORS @@ -32,6 +32,7 @@ Brandon Heller brandonh@stanford.edu Cedric Hobbs cedric@nicira.com Ghanem Bahri bahri.ghanem@gmail.com Henrik Amren henrik@nicira.com +Jad Naous jnaous@gmail.com Jan Medved jmedved@juniper.net Jeongkeun Lee jklee@hp.com Joan Cirer joan@ev0.net diff --git a/acinclude.m4 b/acinclude.m4 index 015bf6654..80794dac3 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -20,8 +20,14 @@ dnl Configure linux kernel source tree AC_DEFUN([OVS_CHECK_LINUX26], [ AC_ARG_WITH([l26], [AC_HELP_STRING([--with-l26=/path/to/linux-2.6], - [Specify the linux 2.6 kernel sources])], + [Specify the linux 2.6 kernel build directory])], [KBUILD26="$withval"], [KBUILD26=])dnl + AC_ARG_WITH([l26-source], + [AC_HELP_STRING([--with-l26-source=/path/to/linux-2.6-source], + [Specify the linux 2.6 kernel source directory + (usually figured out automatically from build + directory)])], + [KSRC26="$withval"], [KSRC26=])dnl if test -n "$KBUILD26"; then KBUILD26=`eval echo "$KBUILD26"` case $KBUILD26 in @@ -44,18 +50,29 @@ AC_DEFUN([OVS_CHECK_LINUX26], [ # We want the source headers, but $KBUILD26 gives us the "build" headers. # Use heuristics to find the source headers. AC_MSG_CHECKING([for Linux 2.6 source directory]) - KSRC26=$KBUILD26 - if test ! -e $KSRC26/include/linux/kernel.h; then - case `echo "$KBUILD26" | sed 's,/*$,,'` in # ( - */build) - KSRC26=`echo "$KBUILD26" | sed 's,/build/*$,/source,'` - ;; # ( - *) - KSRC26=`(cd $KBUILD26 && pwd -P) | sed 's,-[[^-]]*$,-common,'` - ;; + if test -n "$KSRC26"; then + KSRC26=`eval echo "$KSRC26"` + case $KSRC26 in + /*) ;; + *) KSRC26=`pwd`/$KSRC26 ;; esac if test ! -e $KSRC26/include/linux/kernel.h; then - AC_MSG_ERROR([cannot find source directory]) + AC_MSG_ERROR([$KSRC26 is not a kernel source directory)]) + fi + else + KSRC26=$KBUILD26 + if test ! -e $KSRC26/include/linux/kernel.h; then + case `echo "$KBUILD26" | sed 's,/*$,,'` in # ( + */build) + KSRC26=`echo "$KBUILD26" | sed 's,/build/*$,/source,'` + ;; # ( + *) + KSRC26=`(cd $KBUILD26 && pwd -P) | sed 's,-[[^-]]*$,-common,'` + ;; + esac + fi + if test ! -e $KSRC26/include/linux/kernel.h; then + AC_MSG_ERROR([cannot find source directory (please use --with-l26-source)]) fi fi AC_MSG_RESULT([$KSRC26]) @@ -80,6 +97,8 @@ AC_DEFUN([OVS_CHECK_LINUX26], [ AC_MSG_ERROR([Linux kernel source in $KBUILD26 is not configured]) fi OVS_CHECK_LINUX26_COMPAT + elif test -n "$KSRC26"; then + AC_MSG_ERROR([--with-l26-source may not be specified without --with-l26]) fi AM_CONDITIONAL(L26_ENABLED, test -n "$KBUILD26") ])