[ovs-dev] [PATCH v6 1/1] acinclude: Also use LIBS from dpkg pkg-config

Christian Ehrhardt christian.ehrhardt at canonical.com
Wed Feb 13 06:45:23 UTC 2019


On Tue, Feb 12, 2019 at 11:47 PM Ben Pfaff <blp at ovn.org> wrote:
>
> On Tue, Feb 12, 2019 at 07:29:58AM +0100, Christian Ehrhardt wrote:
> > DPDK 18.11 builds using the more modern meson build system no more
> > provide the -ldpdk linker script. Instead it is expected to use
> > pkgconfig for linker options as well.
> >
> > This change will set DPDK_LIB from pkg-config (if pkg-config was
> > available) and since that already carries the whole-archive flags
> > around the PMDs skips the further wrapping in more whole-archive
> > if that is already part of DPDK_LIB.
> >
> > To work reliable in all environments this needs pkg-config 0.29.1.
> > We want to be able to use PKG_CHECK_MODULES_STATIC which
> > is not yet available in 0.24. Therefore update pkg.m4
> > to pkg-config 0.29.1.
> >
> > This should be backport-safe as these macro files are all versioned.
> > autoconf is smart enough to check the version if you have it locally,
> > and if the system's is higher, it will use that one instead.
> >
> > Acked-by: Luca Boccassi <bluca at debian.org>
> > Acked-by: Aaron Conole <aconole at redhat.com>
> > Signed-off-by: Christian Ehrhardt <christian.ehrhardt at canonical.com>
>
> "Autoconf coding style" is basically an oxymoron--Autoconf looks ugly
> almost no matter what--but this look unusual to me:
>
>         PKG_CHECK_MODULES_STATIC([DPDK], [libdpdk], [
>             DPDK_INCLUDE="$DPDK_CFLAGS"
>             DPDK_LIB="$DPDK_LIBS"
>                                  ], [
>             DPDK_INCLUDE="-I/usr/local/include/dpdk -I/usr/include/dpdk"
>             DPDK_LIB="-ldpdk"
>                                  ])
>
> I suggest the following:
>
>         PKG_CHECK_MODULES_STATIC([DPDK], [libdpdk], [
>             DPDK_INCLUDE="$DPDK_CFLAGS"
>             DPDK_LIB="$DPDK_LIBS"], [
>             DPDK_INCLUDE="-I/usr/local/include/dpdk -I/usr/include/dpdk"
>             DPDK_LIB="-ldpdk"])
>
> or
>
>         PKG_CHECK_MODULES_STATIC(
>            [DPDK], [libdpdk],
>            [DPDK_INCLUDE="$DPDK_CFLAGS"
>             DPDK_LIB="$DPDK_LIBS"],
>            [DPDK_INCLUDE="-I/usr/local/include/dpdk -I/usr/include/dpdk"
>             DPDK_LIB="-ldpdk"])
>
> Beyond that, I will leave this patch to Ian.

Thanks Ben,
@Ian it seems we have the acks of all participants - is it ok for you
as well to push it now?
Feel free to use either coding style on commit or if you want I can
submit it as preferred - I can resend after you picked one :-)


-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd


More information about the dev mailing list