[ovs-dev] [PATCH] datapath: Use "make" instead of Autoconf to figure out kernel compat issues.

Jesse Gross jesse at nicira.com
Tue Apr 3 17:47:33 UTC 2012


On Mon, Mar 5, 2012 at 9:32 AM, Ben Pfaff <blp at nicira.com> wrote:
> This has a few advantages:
>
>  * It eliminates the need to infer the kernel source directory based on
>    the build directory, which has broken several times during Open vSwitch
>    development.
>
>  * It eliminates most of the kernel-related Autoconf code, which should
>    make it easier to in turn eliminate the openvswitch-datapath-dkms
>    dependency on libc6-dev.  (Currently, openvswitch-datapath-dkms has to
>    depend on libc6-dev because "configure" fails hard if the C compiler
>    cannot generate executables, even though the dkms package never does
>    that.)
>
>  * Related to the previous point, it would make it easier to distribute
>    a tarball that builds only the kernel module and does not contain any
>    of the userspace code.  (This may not be a worthwhile goal, but it
>    makes sense to only distribute kernel module code in the Debian
>    packages that build kernel modules.)
>
>  * If the kernel headers change (e.g. someone points a symlink to a new
>    kernel tree), then everything works OK without a new "configure" step.
>
> It has some disadvantages:
>
>  * This is a new technique with which I have no experience, and so it
>    might have new and unexpected pitfalls.
>
>  * The makefile syntax that replaces the Autoconf syntax might actually
>    be harder to read.
>
> Signed-off-by: Ben Pfaff <blp at nicira.com>

I certainly like the concept although I also don't have a good idea of
whether there are hidden pitfalls.  The one thing that I noticed is
the first time that you use this the kcompat directory won't exist,
causing it to fail.



More information about the dev mailing list