From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2ECB9A0523; Tue, 30 Jun 2020 18:37:15 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 118931BF70; Tue, 30 Jun 2020 18:37:14 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 5D80A1BEA8 for ; Tue, 30 Jun 2020 18:37:12 +0200 (CEST) IronPort-SDR: QVBpaB2sP4CrKP0alwfP2Up+VTpqRVc3iZixWcv14IXKi0LzLrIrEs+/cv0yUM9czK2pTmpl/5 JMNUz5JGUBbg== X-IronPort-AV: E=McAfee;i="6000,8403,9667"; a="134591974" X-IronPort-AV: E=Sophos;i="5.75,298,1589266800"; d="scan'208";a="134591974" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jun 2020 09:37:09 -0700 IronPort-SDR: p0fl7XSf9D5CtHHZJfG1nxmvs3CYw0MfTezDuQPKpE9qEUqZ4DNa7o0zpgpzG0yPgLOqJoVp6r f1eh8Y5ch1dQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,298,1589266800"; d="scan'208";a="454668642" Received: from irsmsx101.ger.corp.intel.com ([163.33.3.153]) by orsmga005.jf.intel.com with ESMTP; 30 Jun 2020 09:37:08 -0700 Received: from irsmsx103.ger.corp.intel.com ([169.254.3.245]) by IRSMSX101.ger.corp.intel.com ([169.254.1.120]) with mapi id 14.03.0439.000; Tue, 30 Jun 2020 17:37:07 +0100 From: "Stokes, Ian" To: "Pai G, Sunil" , "Richardson, Bruce" , "dev@dpdk.org" CC: "thomas@monjalon.net" , "bluca@debian.org" , "david.marchand@redhat.com" , "ktraynor@redhat.com" , "Richardson, Bruce" Thread-Topic: [dpdk-dev] [PATCH v2 0/7] improve DPDK static builds with meson Thread-Index: AQHWH8DPmhkRzF1SWkGOzw/JQ8M0QKjxg5IggAA1WdA= Date: Tue, 30 Jun 2020 16:37:06 +0000 Message-ID: <52156197ADF84D4FB1B836FA75938A8918E9B1BE@IRSMSX103.ger.corp.intel.com> References: <20200429100831.398-1-bruce.richardson@intel.com> <20200501135401.28124-1-bruce.richardson@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 0/7] improve DPDK static builds with meson X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > > -----Original Message----- > > From: dev On Behalf Of Bruce Richardson > > Sent: Friday, May 1, 2020 7:24 PM > > To: dev@dpdk.org > > Cc: thomas@monjalon.net; bluca@debian.org; david.marchand@redhat.com; > > ktraynor@redhat.com; Richardson, Bruce > > Subject: [dpdk-dev] [PATCH v2 0/7] improve DPDK static builds with > > meson > > > > This set fixes a number of minor issues with static builds when using > > meson, both for linking apps/examples as part of a meson build itself > > or when using pkg-config subsequently. > > > > Following this patchset, all DPDK static builds should be linking with > > --whole- archive to ensure all lib and driver constructors are > > included, and the use of pkg-config for doing static builds is > > simplified. The downside is that for correctness we need two .pc files = for DPDK > rather than just one. > > > > v2: improved log messages for a number of patches, and clearly marked > > internal-only pkg-config file as such > > > > Bruce Richardson (7): > > build: always link-whole DPDK static libraries > > build: remove unnecessary variable > > devtools/test-meson-builds.sh: add pkg-config static builds > > build: move pkg-config creation to separate file > > build/pkg-config: output driver libs first for static build > > build/pkg-config: improve static linking flags > > build/pkg-config: prevent overlinking > > > > app/meson.build | 2 +- > > app/test/meson.build | 2 +- > > buildtools/pkg-config/meson.build | 43 +++++++++++++++++++ > > .../pkg-config/set-static-linker-flags.py | 38 ++++++++++++++++ > > devtools/test-meson-builds.sh | 2 +- > > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > > drivers/meson.build | 2 +- > > examples/bbdev_app/Makefile | 2 +- > > examples/bond/Makefile | 2 +- > > examples/cmdline/Makefile | 2 +- > > examples/distributor/Makefile | 2 +- > > examples/eventdev_pipeline/Makefile | 2 +- > > examples/fips_validation/Makefile | 2 +- > > examples/flow_classify/Makefile | 2 +- > > examples/flow_filtering/Makefile | 2 +- > > examples/helloworld/Makefile | 2 +- > > examples/ioat/Makefile | 2 +- > > examples/ip_fragmentation/Makefile | 2 +- > > examples/ip_pipeline/Makefile | 2 +- > > examples/ip_reassembly/Makefile | 2 +- > > examples/ipsec-secgw/Makefile | 2 +- > > examples/ipv4_multicast/Makefile | 2 +- > > examples/kni/Makefile | 2 +- > > examples/l2fwd-cat/Makefile | 2 +- > > examples/l2fwd-crypto/Makefile | 2 +- > > examples/l2fwd-event/Makefile | 2 +- > > examples/l2fwd-jobstats/Makefile | 2 +- > > examples/l2fwd-keepalive/Makefile | 2 +- > > examples/l2fwd/Makefile | 2 +- > > examples/l3fwd-acl/Makefile | 2 +- > > examples/l3fwd-power/Makefile | 2 +- > > examples/l3fwd/Makefile | 2 +- > > examples/link_status_interrupt/Makefile | 2 +- > > examples/meson.build | 6 +-- > > examples/ntb/Makefile | 2 +- > > examples/packet_ordering/Makefile | 2 +- > > examples/ptpclient/Makefile | 2 +- > > examples/qos_meter/Makefile | 2 +- > > examples/qos_sched/Makefile | 2 +- > > examples/rxtx_callbacks/Makefile | 2 +- > > examples/service_cores/Makefile | 2 +- > > examples/skeleton/Makefile | 2 +- > > examples/tep_termination/Makefile | 2 +- > > examples/timer/Makefile | 2 +- > > examples/vdpa/Makefile | 2 +- > > examples/vhost/Makefile | 2 +- > > examples/vhost_blk/Makefile | 2 +- > > examples/vhost_crypto/Makefile | 2 +- > > examples/vmdq/Makefile | 2 +- > > examples/vmdq_dcb/Makefile | 2 +- > > lib/librte_telemetry/meson.build | 1 - > > lib/meson.build | 2 +- > > meson.build | 26 +---------- > > 53 files changed, 134 insertions(+), 76 deletions(-) create mode > > 100644 buildtools/pkg-config/meson.build create mode 100644 > > buildtools/pkg- config/set-static-linker-flags.py > > > > -- > > 2.20.1 >=20 > This series allows OVS to consume the DPDK libraries appropriately (stati= c and > shared) and simplifies the build. > When building OVS with DPDK, without this patch, the linker would always = pick > the shared libraries over static even after specifying the -Bstatic flag. > With this patch, no such behavior is observed. So, it would be very helpf= ul for > the OVS community if this patch is merged in DPDK. >=20 > I would also ask this series to be back ported to 19.11 as OVS can immedi= ately > consume it on the latest master instead of waiting on the next DPDK relea= se i.e > 20.11 +1, if this would be possible to apply to 19.11 as a backport it would enab= le OVS to move quicker and update the OVS Travis as well as docs and build = scripts rather than waiting for DPDK 20.11. Sunil has already been working = on these changes I believe. Alternatively if it cant be backported to 19.11, then possibly we could loo= k at merging Sunil's patches to the dpdk-latest branch in OVS once makefile= s are deprecated in DPDK master? Regards Ian >=20 > Series-acked-by: Sunil Pai G >=20