Yes, but for building the rpm, those don't exist. I need to use /usr/src/linux and /usr/src/linux-obj. So Ben's last patch is not necessary, only the one you just signed off on.
Thanks, Jad. On Tue, Jul 6, 2010 at 1:30 AM, Ian Campbell <[email protected]> wrote: > On Fri, 2010-07-02 at 18:10 +0100, Ben Pfaff wrote: >> On Fri, Jul 02, 2010 at 07:16:10AM +0100, Ian Campbell wrote: >> > On Fri, 2010-07-02 at 03:25 +0100, Jad Naous wrote: >> > > Hi Guys, >> > > >> > > I'm trying to build openvswitch on opensuse, but I'm having issues >> > > running configure with kernel src dir not found. The thing is that >> > > opensuse has a separate linux/ source dir and a linux-obj/ dir, and I >> > > can't pass both to the --with-l26 command. >> > > >> > > Is there a workaround or fix? >> > >> > I needed to do this a few weeks ago and hacked up the below. I'm pretty >> > sure it isn't ready for prime time but it's a start. >> >> Thanks, Ian! >> >> Here's a cleaned up version. Works for me. Can I have your >> Signed-off-by on this? > > Looks good to me (although I've not actually tested) so: > Acked-by: Ian Campbell <[email protected]> > > (feel free to morph into a signed-off-by if you think that more > appropriate). > > BTW, Jad, is there not a pair of /lib/modules/<uname>/{source,build} > symlinks under opensuse? > > Ian. > >> >> Thanks, >> >> Ben. >> >> --8<--------------------------cut here-------------------------->8-- >> >> From 3c8c23b60cb9adc99c528ad291548f3bacc7243e Mon Sep 17 00:00:00 2001 >> From: Ben Pfaff <[email protected]> >> Date: Fri, 2 Jul 2010 10:08:47 -0700 >> Subject: [PATCH] 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. >> >> Based on work by Ian Campbell <[email protected]>. >> Reported-by: Jad Naous <[email protected]> >> --- >> AUTHORS | 1 + >> acinclude.m4 | 41 ++++++++++++++++++++++++++++++----------- >> 2 files changed, 31 insertions(+), 11 deletions(-) >> >> diff --git a/AUTHORS b/AUTHORS >> index eda90e0..b0f31d9 100644 >> --- a/AUTHORS >> +++ b/AUTHORS >> @@ -32,6 +32,7 @@ Brandon Heller [email protected] >> Cedric Hobbs [email protected] >> Ghanem Bahri [email protected] >> Henrik Amren [email protected] >> +Jad Naous [email protected] >> Jan Medved [email protected] >> Jeongkeun Lee [email protected] >> Joan Cirer [email protected] >> diff --git a/acinclude.m4 b/acinclude.m4 >> index 015bf66..80794da 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") >> ]) > > > _______________________________________________ discuss mailing list [email protected] http://openvswitch.org/mailman/listinfo/discuss_openvswitch.org
