Re: [ovs-dev] [PATCH v2] acinclude: netdev-dpdk: use pkg-config of libdpdk
On Tue, Aug 08, 2017 at 07:52:13AM +0200, Christian Ehrhardt wrote: > On Mon, Aug 7, 2017 at 8:42 PM, Ben Pfaffwrote: > > > On Fri, Jul 14, 2017 at 08:36:39AM +0200, Christian Ehrhardt wrote: > > > If available use dpdk pkg-config info of libdpdk to set the right > > > include paths. > > > That for example, allows packagers to provide non default include > > > paths in a common way (pkg-config). > > > > > > *update in v2* > > > - following the change in 214ac6d4 "configure: Fix check for > > >rte_config.h to handle cross-compilation." > > > > > > Signed-off-by: Christian Ehrhardt > > > Suggested-by: Luca Boccassi > > > Acked-by: Luca Boccassi > > > > Applied to master, thanks! > > > > Thanks Ben and everybody else involved, any chance/opinion to get that into > branch-2.8 as well before it is tagged final? OK, I applied it to branch-2.8 also. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH v2] acinclude: netdev-dpdk: use pkg-config of libdpdk
On Mon, Aug 7, 2017 at 8:42 PM, Ben Pfaffwrote: > On Fri, Jul 14, 2017 at 08:36:39AM +0200, Christian Ehrhardt wrote: > > If available use dpdk pkg-config info of libdpdk to set the right > > include paths. > > That for example, allows packagers to provide non default include > > paths in a common way (pkg-config). > > > > *update in v2* > > - following the change in 214ac6d4 "configure: Fix check for > >rte_config.h to handle cross-compilation." > > > > Signed-off-by: Christian Ehrhardt > > Suggested-by: Luca Boccassi > > Acked-by: Luca Boccassi > > Applied to master, thanks! > Thanks Ben and everybody else involved, any chance/opinion to get that into branch-2.8 as well before it is tagged final? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH v2] acinclude: netdev-dpdk: use pkg-config of libdpdk
On Fri, Jul 14, 2017 at 08:36:39AM +0200, Christian Ehrhardt wrote: > If available use dpdk pkg-config info of libdpdk to set the right > include paths. > That for example, allows packagers to provide non default include > paths in a common way (pkg-config). > > *update in v2* > - following the change in 214ac6d4 "configure: Fix check for >rte_config.h to handle cross-compilation." > > Signed-off-by: Christian Ehrhardt> Suggested-by: Luca Boccassi > Acked-by: Luca Boccassi Applied to master, thanks! ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH v2] acinclude: netdev-dpdk: use pkg-config of libdpdk
LGTM Thanks Zhenyu Gao 2017-08-07 18:24 GMT+08:00 Christian Ehrhardt < christian.ehrha...@canonical.com>: > Ping, any update on including this? > > On Fri, Jul 14, 2017 at 8:36 AM, Christian Ehrhardt < > christian.ehrha...@canonical.com> wrote: > > > If available use dpdk pkg-config info of libdpdk to set the right > > include paths. > > That for example, allows packagers to provide non default include > > paths in a common way (pkg-config). > > > > *update in v2* > > - following the change in 214ac6d4 "configure: Fix check for > >rte_config.h to handle cross-compilation." > > > > Signed-off-by: Christian Ehrhardt> > Suggested-by: Luca Boccassi > > Acked-by: Luca Boccassi > > --- > > Documentation/intro/install/dpdk.rst | 6 +- > > acinclude.m4 | 17 ++--- > > configure.ac | 1 + > > 3 files changed, 16 insertions(+), 8 deletions(-) > > > > diff --git a/Documentation/intro/install/dpdk.rst > > b/Documentation/intro/install/dpdk.rst > > index a05aa1a..e3dcd6c 100644 > > --- a/Documentation/intro/install/dpdk.rst > > +++ b/Documentation/intro/install/dpdk.rst > > @@ -124,7 +124,11 @@ has to be configured with DPDK support > > (``--with-dpdk``). > > $ ./configure --with-dpdk=$DPDK_BUILD > > > > where ``DPDK_BUILD`` is the path to the built DPDK library. This can > be > > - skipped if DPDK library is installed in its default location > > + skipped if DPDK library is installed in its default location. > > + > > + If no path is provided to ``--with-dpdk``, but a pkg-config > > configuration > > + for libdpdk is available the include paths will be generated via an > > + equivalent ``pkg-config --cflags libdpdk``. > > > > .. note:: > > While ``--with-dpdk`` is required, you can pass any other > > configuration > > diff --git a/acinclude.m4 b/acinclude.m4 > > index 48fc856..aea5502 100644 > > --- a/acinclude.m4 > > +++ b/acinclude.m4 > > @@ -208,16 +208,19 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > > case "$with_dpdk" in > >yes) > > DPDK_AUTO_DISCOVER="true" > > -DPDK_INCLUDE="/usr/local/include/dpdk -I/usr/include/dpdk" > > +PKG_CHECK_MODULES([DPDK], [libdpdk], > > + [DPDK_INCLUDE="$DPDK_CFLAGS"], > > + [DPDK_INCLUDE="-I/usr/local/include/dpdk > > -I/usr/include/dpdk"]) > > ;; > >*) > > DPDK_AUTO_DISCOVER="false" > > -DPDK_INCLUDE="$with_dpdk/include" > > +DPDK_INCLUDE_PATH="$with_dpdk/include" > > # If 'with_dpdk' is passed install directory, point to headers > > # installed in $DESTDIR/$prefix/include/dpdk > > -if test ! -e "$DPDK_INCLUDE/rte_config.h" && \ > > - test -e "$DPDK_INCLUDE/dpdk/rte_config.h"; then > > - DPDK_INCLUDE=$DPDK_INCLUDE/dpdk > > +if test -e "$DPDK_INCLUDE_PATH/rte_config.h"; then > > + DPDK_INCLUDE="-I$DPDK_INCLUDE_PATH" > > +elif test -e "$DPDK_INCLUDE_PATH/dpdk/rte_config.h"; then > > + DPDK_INCLUDE="-I$DPDK_INCLUDE_PATH/dpdk" > > fi > > DPDK_LIB_DIR="$with_dpdk/lib" > > ;; > > @@ -228,7 +231,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > > > > ovs_save_CFLAGS="$CFLAGS" > > ovs_save_LDFLAGS="$LDFLAGS" > > -CFLAGS="$CFLAGS -I$DPDK_INCLUDE" > > +CFLAGS="$CFLAGS $DPDK_INCLUDE" > > if test "$DPDK_AUTO_DISCOVER" = "false"; then > >LDFLAGS="$LDFLAGS -L${DPDK_LIB_DIR}" > > fi > > @@ -304,7 +307,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > > if test "$DPDK_AUTO_DISCOVER" = "false"; then > >OVS_LDFLAGS="$OVS_LDFLAGS -L$DPDK_LIB_DIR" > > fi > > -OVS_CFLAGS="$OVS_CFLAGS -I$DPDK_INCLUDE" > > +OVS_CFLAGS="$OVS_CFLAGS $DPDK_INCLUDE" > > OVS_ENABLE_OPTION([-mssse3]) > > > > # DPDK pmd drivers are not linked unless --whole-archive is used. > > diff --git a/configure.ac b/configure.ac > > index 23afe4c..a13bca7 100644 > > --- a/configure.ac > > +++ b/configure.ac > > @@ -27,6 +27,7 @@ AC_PROG_CPP > > AC_PROG_MKDIR_P > > AC_PROG_FGREP > > AC_PROG_EGREP > > +PKG_PROG_PKG_CONFIG > > > > AC_ARG_VAR([PERL], [path to Perl interpreter]) > > AC_PATH_PROG([PERL], perl, no) > > -- > > 2.7.4 > > > > > > > -- > Christian Ehrhardt > Software Engineer, Ubuntu Server > Canonical Ltd > ___ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH v2] acinclude: netdev-dpdk: use pkg-config of libdpdk
Ping, any update on including this? On Fri, Jul 14, 2017 at 8:36 AM, Christian Ehrhardt < christian.ehrha...@canonical.com> wrote: > If available use dpdk pkg-config info of libdpdk to set the right > include paths. > That for example, allows packagers to provide non default include > paths in a common way (pkg-config). > > *update in v2* > - following the change in 214ac6d4 "configure: Fix check for >rte_config.h to handle cross-compilation." > > Signed-off-by: Christian Ehrhardt> Suggested-by: Luca Boccassi > Acked-by: Luca Boccassi > --- > Documentation/intro/install/dpdk.rst | 6 +- > acinclude.m4 | 17 ++--- > configure.ac | 1 + > 3 files changed, 16 insertions(+), 8 deletions(-) > > diff --git a/Documentation/intro/install/dpdk.rst > b/Documentation/intro/install/dpdk.rst > index a05aa1a..e3dcd6c 100644 > --- a/Documentation/intro/install/dpdk.rst > +++ b/Documentation/intro/install/dpdk.rst > @@ -124,7 +124,11 @@ has to be configured with DPDK support > (``--with-dpdk``). > $ ./configure --with-dpdk=$DPDK_BUILD > > where ``DPDK_BUILD`` is the path to the built DPDK library. This can be > - skipped if DPDK library is installed in its default location > + skipped if DPDK library is installed in its default location. > + > + If no path is provided to ``--with-dpdk``, but a pkg-config > configuration > + for libdpdk is available the include paths will be generated via an > + equivalent ``pkg-config --cflags libdpdk``. > > .. note:: > While ``--with-dpdk`` is required, you can pass any other > configuration > diff --git a/acinclude.m4 b/acinclude.m4 > index 48fc856..aea5502 100644 > --- a/acinclude.m4 > +++ b/acinclude.m4 > @@ -208,16 +208,19 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > case "$with_dpdk" in >yes) > DPDK_AUTO_DISCOVER="true" > -DPDK_INCLUDE="/usr/local/include/dpdk -I/usr/include/dpdk" > +PKG_CHECK_MODULES([DPDK], [libdpdk], > + [DPDK_INCLUDE="$DPDK_CFLAGS"], > + [DPDK_INCLUDE="-I/usr/local/include/dpdk > -I/usr/include/dpdk"]) > ;; >*) > DPDK_AUTO_DISCOVER="false" > -DPDK_INCLUDE="$with_dpdk/include" > +DPDK_INCLUDE_PATH="$with_dpdk/include" > # If 'with_dpdk' is passed install directory, point to headers > # installed in $DESTDIR/$prefix/include/dpdk > -if test ! -e "$DPDK_INCLUDE/rte_config.h" && \ > - test -e "$DPDK_INCLUDE/dpdk/rte_config.h"; then > - DPDK_INCLUDE=$DPDK_INCLUDE/dpdk > +if test -e "$DPDK_INCLUDE_PATH/rte_config.h"; then > + DPDK_INCLUDE="-I$DPDK_INCLUDE_PATH" > +elif test -e "$DPDK_INCLUDE_PATH/dpdk/rte_config.h"; then > + DPDK_INCLUDE="-I$DPDK_INCLUDE_PATH/dpdk" > fi > DPDK_LIB_DIR="$with_dpdk/lib" > ;; > @@ -228,7 +231,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > > ovs_save_CFLAGS="$CFLAGS" > ovs_save_LDFLAGS="$LDFLAGS" > -CFLAGS="$CFLAGS -I$DPDK_INCLUDE" > +CFLAGS="$CFLAGS $DPDK_INCLUDE" > if test "$DPDK_AUTO_DISCOVER" = "false"; then >LDFLAGS="$LDFLAGS -L${DPDK_LIB_DIR}" > fi > @@ -304,7 +307,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > if test "$DPDK_AUTO_DISCOVER" = "false"; then >OVS_LDFLAGS="$OVS_LDFLAGS -L$DPDK_LIB_DIR" > fi > -OVS_CFLAGS="$OVS_CFLAGS -I$DPDK_INCLUDE" > +OVS_CFLAGS="$OVS_CFLAGS $DPDK_INCLUDE" > OVS_ENABLE_OPTION([-mssse3]) > > # DPDK pmd drivers are not linked unless --whole-archive is used. > diff --git a/configure.ac b/configure.ac > index 23afe4c..a13bca7 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -27,6 +27,7 @@ AC_PROG_CPP > AC_PROG_MKDIR_P > AC_PROG_FGREP > AC_PROG_EGREP > +PKG_PROG_PKG_CONFIG > > AC_ARG_VAR([PERL], [path to Perl interpreter]) > AC_PATH_PROG([PERL], perl, no) > -- > 2.7.4 > > -- Christian Ehrhardt Software Engineer, Ubuntu Server Canonical Ltd ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev