[dpdk-dev] [PATCH 00/14] Build file updates

Bruce Richardson bruce.richardson at intel.com
Mon Apr 19 15:06:24 CEST 2021


On Sun, Apr 18, 2021 at 08:45:25AM +0000, Xueming(Steven) Li wrote:
> Hi Bruce,
> 
> > -----Original Message-----
> > From: dev <dev-bounces at dpdk.org> On Behalf Of Bruce Richardson
> > Sent: Saturday, April 17, 2021 1:05 AM
> > To: dev at dpdk.org
> > Cc: Bruce Richardson <bruce.richardson at intel.com>
> > Subject: [dpdk-dev] [PATCH 00/14] Build file updates
> > 
> > This RFC contains 5 changes/updates to the DPDK build and build files.
> > 
> > The changes in this set are:
> > 1. Use "continue" keyword, new in 0.49 to shorten and reduce indentation levels
> >    in the foreach loops when building library or driver components.
> > 2. For libraries, drop support for header-only libraries, which was added just
> >    for the "compat" lib which had a single header, and is now part of EAL. This
> >    similarly reduces indentation levels and makes the code easier to follow
> > 3. Since the larger blocks of meson code in our repo is seeing massive
> >    whitespace changes, take the opportunity to switch our indentation style for
> >    meson files from that of C-files using tabs, to Meson/Python style using
> >    spaces. [More below on this for discussion]
> > 4. Remove the "librte_" prefix from all our library directories. While as useful
> >    cleanup, the main driver for this was that it simplifies the matching for #5
> >    below.
> > 5. Add a "disable_libs" build option to allow the user to optionally not build
> >    certain components. Include in this an explicit list of libraries which are
> >    "known safe" to disable in the build. For now this is a short list of three
> >    libs, all of which are safe because they are not buildable on FreeBSD. More
> >    work is needed to expand this list in future.
> 
> Great feature, very useful for PMD developer who only focus on some specific
> class driver, most drivers and libs are not relevant, disable them will speed up
> build process significantly, this always happen when switch release or rebase code.
> 
> Currently I collected a long disabled driver list for my minimal build, have to update
> time to time as dpdk community grows quickly. An enable_list might be more efficient
> here to allow minimal lib/drivers for net, vdpa etc.. plus specific pmd driver for NIC on hand.
> 

Managing such a list should not be too much work if wildcards are used
appropriately. Here is the disable_drivers option I use which just enables
the necessary bus drivers, as well as intel NIC and rawdev drivers (or
rather NIC and rawdev drivers whose names start with "i" or "e". It does
enable a few extra drivers I don't care about, but not many!)

"base*/*,bus/[!pv]*,c*/*,event/*,net/[!ie]*,r*/[!i]*,vdpa/*"

/Bruce


More information about the dev mailing list