From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 374431041 for ; Thu, 14 Sep 2017 15:57:18 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Sep 2017 06:57:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,393,1500966000"; d="scan'208";a="135332282" Received: from bricha3-mobl3.ger.corp.intel.com ([10.237.221.24]) by orsmga002.jf.intel.com with SMTP; 14 Sep 2017 06:57:15 -0700 Received: by (sSMTP sendmail emulation); Thu, 14 Sep 2017 14:57:14 +0100 Date: Thu, 14 Sep 2017 14:57:14 +0100 From: Bruce Richardson To: Luca Boccassi Cc: dev@dpdk.org, nhorman@tuxdriver.com, harry.van.haaren@intel.com, keith.wiles@intel.com Message-ID: <20170914135714.GA38280@bricha3-MOBL3.ger.corp.intel.com> References: <20170912103809.140473-1-bruce.richardson@intel.com> <20170913141222.253688-1-bruce.richardson@intel.com> <1505322085.20547.2.camel@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1505322085.20547.2.camel@gmail.com> Organization: Intel Research and =?iso-8859-1?Q?De=ACvel?= =?iso-8859-1?Q?opment?= Ireland Ltd. User-Agent: Mutt/1.8.3 (2017-05-23) Subject: Re: [dpdk-dev] [PATCH v3 00/17] build DPDK libs and some drivers with meson/ninja 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: , X-List-Received-Date: Thu, 14 Sep 2017 13:57:19 -0000 On Wed, Sep 13, 2017 at 06:01:25PM +0100, Luca Boccassi wrote: > On Wed, 2017-09-13 at 15:12 +0100, Bruce Richardson wrote: > > V3 changes: > > * used two-digit version numbers when globally versioning > > libs+drivers > > * removed symlinks with single-digit version numbers in same case > > * moved driver install location from $prefix/dpdk to > > $prefix/share/dpdk > > > > V2 changes: > > * fixed copyright notices, updated 2016 to 2017 > > * removed dependency on kconfig file in kernel build tree > > * marked pmdinfogen as a "native" binary, in preparation for future > > cross- > >   compilation work > > * added in additional warning flags for compatibility with existing > > system > > --- > > > > Following on from the two previous RFCs [1] [2], here is a cleaned up > > patchset to serve as a start-point for getting all of DPDK building > > with > > meson and ninja. > > > > What's covered: > > * Basic infrastructure for feature detection and DPDK compilation > > * Building of all DPDK libraries - as either static or shared > > * Compilation of igb_uio driver for Linux > > * Building a number of mempool, crypto and net drivers. > > * Installation of compiled libraries and headers > > * Installation of usertools scripts > > * Compilation of testpmd as dpdk-testpmd and install of same > > * Generation and installation of pkgconfig file for DPDK > > * Contributors guide document addition describing how to add build > > scripts > > > > What's not implemented: > > * Just about everything else :-), including > > * Support for non-x86 architectures, including cross-compilation > > * Lots of PMDs > > * Support for building and running the unit tests > > > > Some key differences from RFC2: > > * Removed duplication between the different driver meson files by > > moving > >   the build logic up one level to the driver/meson.build file. > > * Added a build option to allow versioning the libraries using the > > DPDK > >   version number, rather than individual .so versions. > > * Made EAL a default dependency for libs, to simplify meson.build > > files for > >   a number of them. > > * Made the build variables used for libraries and drivers more > > consistent. > > * Moved responsibility for determining if a given driver or library > > should > >   be built to the driver/library's own build file, giving a single > > place > >   where all details about that component are placed, and saving > > having lots > >   of environment detection logic in higher-level build files. > > * Begun adding in developer documentation to make it easier for > > driver > >   authors/maintainers to contribute. > > > > Meson 0.41 and ninja are needed, and ideally meson 0.42 is > > recommended. > > Ninja is available in most distributions, and meson - if an updated > > version > > is not available on your distro of choice - can be easily got using  > > "pip3 install meson" > > > > To build and install then use: > > > > meson build # use default compiler and shared libs > > cd build > > ninja > > sudo ninja install > > > > Thereafter to use DPDK in other build systems one can use: > > > > pkg-config --cflags DPDK > > pkt-config --libs DPDK > > > > to query the needed DPDK build parameters. > > > > Once reviewed and tested a bit, I hope to apply this set - or a new > > revision of it - to the build-next tree, to serve as a baseline for > > others > > to use and to add the missing functionality to. > > > > Regards, > > /Bruce > > > > [1] http://dpdk.org/ml/archives/dev/2017-June/067429.html > > [2] http://dpdk.org/ml/archives/dev/2017-August/072818.html > > > > Bruce Richardson (17): > >   build: add initial infrastructure for meson & ninja builds > >   eal: add eal library to meson build > >   igb_uio: add igb_uio kmod to meson build > >   build: add DPDK libraries to build > >   build: add buildtools to meson build > >   build: add infrastructure for building PMDs > >   drivers/mempool: add SW mempool drivers to meson build > >   drivers/crypto: add crypto drv class and null PMD to meson > >   crypto/openssl: add driver to meson build > >   crypto/qat: add driver to meson build > >   drivers/net: add net driver support to meson build > >   drivers/net: add set of vdev PMDs to build > >   drivers/net: add drivers for Intel NICs to meson build > >   app/test-pmd: add test-pmd to meson build > >   usertools: add usertools installation to meson build > >   build: add option to version libs using DPDK version > >   doc: add documentation on how to add new components to DPDK > > > > Acked-by: Luca Boccassi > Pushed to dpdk-next-build. Thanks to all for the reviews and acks. /Bruce