Message ID | 20190423220644.54589-1-bruce.richardson@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 45FED1B3B7; Wed, 24 Apr 2019 00:06:53 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id C1A741B10E for <dev@dpdk.org>; Wed, 24 Apr 2019 00:06:51 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Apr 2019 15:06:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,387,1549958400"; d="scan'208";a="133795816" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.222.236]) by orsmga007.jf.intel.com with ESMTP; 23 Apr 2019 15:06:49 -0700 From: Bruce Richardson <bruce.richardson@intel.com> To: dev@dpdk.org Cc: Bruce Richardson <bruce.richardson@intel.com> Date: Tue, 23 Apr 2019 23:06:40 +0100 Message-Id: <20190423220644.54589-1-bruce.richardson@intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH 0/4] add testing of libdpdk pkg-config file X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series | add testing of libdpdk pkg-config file | |
Message
Bruce Richardson
April 23, 2019, 10:06 p.m. UTC
As part of the meson build, a pkg-config file for libdpdk is created, which allows apps to be compiled and linked against DPDK by taking the cflags and lib parameter from pkgconfig. The example app makefiles have been reworked to take account of this support, but the build of them against the .pc file was not regularly tested. To rectify this, and give us greater confidence in the correctness of the .pc file, this set adds in the sample apps to the installation set for "ninja install" and then builds a subset of those apps against the pkg-config file to test it. In the process a small error when compiling the cmdline sample app using the .pc file was fixed. Bruce Richardson (4): examples: install examples as part of ninja install examples: simplify getting list of all examples devtools/test-meson-builds: add testing of pkg-config file build: add libbsd to pkg-config file if enabled config/meson.build | 10 ++++------ devtools/test-meson-builds.sh | 17 +++++++++++++++++ examples/meson.build | 17 +++++++++++++---- meson.build | 2 ++ 4 files changed, 36 insertions(+), 10 deletions(-)
Comments
On Tue, 23 Apr 2019 23:06:40 +0100 Bruce Richardson <bruce.richardson@intel.com> wrote: > As part of the meson build, a pkg-config file for libdpdk is created, which > allows apps to be compiled and linked against DPDK by taking the cflags and > lib parameter from pkgconfig. The example app makefiles have been reworked > to take account of this support, but the build of them against the .pc file > was not regularly tested. > > To rectify this, and give us greater confidence in the correctness of the > .pc file, this set adds in the sample apps to the installation set for > "ninja install" and then builds a subset of those apps against the > pkg-config file to test it. In the process a small error when compiling > the cmdline sample app using the .pc file was fixed. > > Bruce Richardson (4): > examples: install examples as part of ninja install > examples: simplify getting list of all examples > devtools/test-meson-builds: add testing of pkg-config file > build: add libbsd to pkg-config file if enabled > > config/meson.build | 10 ++++------ > devtools/test-meson-builds.sh | 17 +++++++++++++++++ > examples/meson.build | 17 +++++++++++++---- > meson.build | 2 ++ > 4 files changed, 36 insertions(+), 10 deletions(-) > My experiments with Ubuntu 18.04 showed the default version of meson was too old (broken) and generated bad cflags. Getting later one for Debian stable-backports worked.
On Tue, Apr 23, 2019 at 04:04:49PM -0700, Stephen Hemminger wrote: > On Tue, 23 Apr 2019 23:06:40 +0100 > Bruce Richardson <bruce.richardson@intel.com> wrote: > > > As part of the meson build, a pkg-config file for libdpdk is created, which > > allows apps to be compiled and linked against DPDK by taking the cflags and > > lib parameter from pkgconfig. The example app makefiles have been reworked > > to take account of this support, but the build of them against the .pc file > > was not regularly tested. > > > > To rectify this, and give us greater confidence in the correctness of the > > .pc file, this set adds in the sample apps to the installation set for > > "ninja install" and then builds a subset of those apps against the > > pkg-config file to test it. In the process a small error when compiling > > the cmdline sample app using the .pc file was fixed. > > > > Bruce Richardson (4): > > examples: install examples as part of ninja install > > examples: simplify getting list of all examples > > devtools/test-meson-builds: add testing of pkg-config file > > build: add libbsd to pkg-config file if enabled > > > > config/meson.build | 10 ++++------ > > devtools/test-meson-builds.sh | 17 +++++++++++++++++ > > examples/meson.build | 17 +++++++++++++---- > > meson.build | 2 ++ > > 4 files changed, 36 insertions(+), 10 deletions(-) > > > > My experiments with Ubuntu 18.04 showed the default version of meson > was too old (broken) and generated bad cflags. > > Getting later one for Debian stable-backports worked. Thanks for the info - it's things like that that this scripting is needed to catch. How old was the older version and what was the diff from it vs newer? Personally, to update meson, I'd always just use pip to get the latest. /Bruce
On Wed, Apr 24, 2019 at 09:54:05AM +0100, Bruce Richardson wrote: > On Tue, Apr 23, 2019 at 04:04:49PM -0700, Stephen Hemminger wrote: > > On Tue, 23 Apr 2019 23:06:40 +0100 Bruce Richardson > > <bruce.richardson@intel.com> wrote: > > > > > As part of the meson build, a pkg-config file for libdpdk is created, > > > which allows apps to be compiled and linked against DPDK by taking > > > the cflags and lib parameter from pkgconfig. The example app > > > makefiles have been reworked to take account of this support, but the > > > build of them against the .pc file was not regularly tested. > > > > > > To rectify this, and give us greater confidence in the correctness of > > > the .pc file, this set adds in the sample apps to the installation > > > set for "ninja install" and then builds a subset of those apps > > > against the pkg-config file to test it. In the process a small error > > > when compiling the cmdline sample app using the .pc file was fixed. > > > > > > Bruce Richardson (4): examples: install examples as part of ninja > > > install examples: simplify getting list of all examples > > > devtools/test-meson-builds: add testing of pkg-config file build: add > > > libbsd to pkg-config file if enabled > > > > > > config/meson.build | 10 ++++------ > > > devtools/test-meson-builds.sh | 17 +++++++++++++++++ > > > examples/meson.build | 17 +++++++++++++---- meson.build > > > | 2 ++ 4 files changed, 36 insertions(+), 10 deletions(-) > > > > > > > My experiments with Ubuntu 18.04 showed the default version of meson > > was too old (broken) and generated bad cflags. > > > > Getting later one for Debian stable-backports worked. > > Thanks for the info - it's things like that that this scripting is needed > to catch. > And as further followup on the need for this, checking this patchset on FreeBSD shows that the "ninja install" step is broken there due to "ln", used by "symlink-drivers-solibs.sh" postinstall script, not supporting the "-r" flag on FreeBSD. :-( I'll try and do up a V2 set to include that fix also. /Bruce
On Tue, 2019-04-23 at 23:06 +0100, Bruce Richardson wrote: > As part of the meson build, a pkg-config file for libdpdk is created, > which > allows apps to be compiled and linked against DPDK by taking the > cflags and > lib parameter from pkgconfig. The example app makefiles have been > reworked > to take account of this support, but the build of them against the > .pc file > was not regularly tested. > > To rectify this, and give us greater confidence in the correctness of > the > .pc file, this set adds in the sample apps to the installation set > for > "ninja install" and then builds a subset of those apps against the > pkg-config file to test it. In the process a small error when > compiling > the cmdline sample app using the .pc file was fixed. > > Bruce Richardson (4): > examples: install examples as part of ninja install > examples: simplify getting list of all examples > devtools/test-meson-builds: add testing of pkg-config file > build: add libbsd to pkg-config file if enabled > > config/meson.build | 10 ++++------ > devtools/test-meson-builds.sh | 17 +++++++++++++++++ > examples/meson.build | 17 +++++++++++++---- > meson.build | 2 ++ > 4 files changed, 36 insertions(+), 10 deletions(-) Series-acked-by: Luca Boccassi <bluca@debian.org>
On Fri, Apr 26, 2019 at 05:11:18PM +0100, Luca Boccassi wrote: > On Tue, 2019-04-23 at 23:06 +0100, Bruce Richardson wrote: > > As part of the meson build, a pkg-config file for libdpdk is created, > > which > > allows apps to be compiled and linked against DPDK by taking the > > cflags and > > lib parameter from pkgconfig. The example app makefiles have been > > reworked > > to take account of this support, but the build of them against the > > .pc file > > was not regularly tested. > > > > To rectify this, and give us greater confidence in the correctness of > > the > > .pc file, this set adds in the sample apps to the installation set > > for > > "ninja install" and then builds a subset of those apps against the > > pkg-config file to test it. In the process a small error when > > compiling > > the cmdline sample app using the .pc file was fixed. > > > > Bruce Richardson (4): > > examples: install examples as part of ninja install > > examples: simplify getting list of all examples > > devtools/test-meson-builds: add testing of pkg-config file > > build: add libbsd to pkg-config file if enabled > > > > config/meson.build | 10 ++++------ > > devtools/test-meson-builds.sh | 17 +++++++++++++++++ > > examples/meson.build | 17 +++++++++++++---- > > meson.build | 2 ++ > > 4 files changed, 36 insertions(+), 10 deletions(-) > > Series-acked-by: Luca Boccassi <bluca@debian.org> > Thanks. I've actually got a V2 coming soon with some more rework, since I found some more issues (especially on BSD) as I worked through the changes. /Bruce