1) The automatic tarball creation from git is not working, I get "404
- Object does not exist". So I checked the src out from git.
2) The patch is getting rejected. At the risk of sounding like a complete noob:

cd openvswitch
patch -p1 < ../split-linux-src-obj.patch

Gives:

patching file acinclude.m4
Hunk #1 FAILED at 20.
Hunk #2 FAILED at 44.
Hunk #3 FAILED at 80.
3 out of 3 hunks FAILED -- saving rejects to file acinclude.m4.rej

I've attached acinclude.m4.rej and the patch. What am I doing wrong?

Jad.

On Fri, Jul 2, 2010 at 2:15 PM, Ben Pfaff <[email protected]> wrote:
> On Fri, Jul 02, 2010 at 01:53:17PM -0700, Jad Naous wrote:
>> Sure! For opensuse, the source dir is /usr/src/linux and the build dir
>> is /usr/src/linux-obj. I want to build an rpm for this to make it easy
>> to install. I'll let you know how it goes, but making an rpm requires
>> a standard way of building modules, which I don't think ovs uses.
>>
>> So I should checkout the latest tarball I assume to get this fix?
>
> I didn't push anything yet.  I'm waiting on Ian for approval.
>
> Here's a patch to apply on top of the previous one.  I think it should
> handle the OpenSUSE case automatically.
>
> To try this out, check out the "master" branch from openvswitch.org (or
> retrieve
> http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=snapshot;sf=tgz
> for an equivalent tar.gz), apply the previously posted patch, then this
> one, then run ./boot.sh.
>
> --8<--------------------------cut here-------------------------->8--
>
> From 43255dc9de6ac699a9ecd70be7abbdff3afb5ed8 Mon Sep 17 00:00:00 2001
> From: Ben Pfaff <[email protected]>
> Date: Fri, 2 Jul 2010 14:13:14 -0700
> Subject: [PATCH] configure: Automatically detect OpenSUSE kernel source 
> directory.
>
> CC: Jad Naous <[email protected]>
> ---
>  acinclude.m4 |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/acinclude.m4 b/acinclude.m4
> index 80794da..9248ddc 100644
> --- a/acinclude.m4
> +++ b/acinclude.m4
> @@ -66,6 +66,9 @@ AC_DEFUN([OVS_CHECK_LINUX26], [
>          */build)
>            KSRC26=`echo "$KBUILD26" | sed 's,/build/*$,/source,'`
>            ;; # (
> +         *-obj)
> +           KSRC26=`echo "$KBUILD26" | sed 's,-obj$,,'`
> +           ;; # (
>          *)
>            KSRC26=`(cd $KBUILD26 && pwd -P) | sed 's,-[[^-]]*$,-common,'`
>            ;;
> --
> 1.7.1
>
>
>

Attachment: acinclude.m4.rej
Description: application/reject

Attachment: acinclude.m4
Description: application/m4

--- 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

Reply via email to