5.1. DPDK Meson Build Configuration Options
DPDK provides a number of build configuration options that can be adjusted using the Meson build system. These options can be listed by running meson configure inside a configured build
folder.
5.1.1. Changing the Build Type
To change the build type from the default “release” to a regular “debug” build, you can either:
Pass
-Dbuildtype=debugor--buildtype=debugto meson when configuring the build folder initially.Run
meson configure -Dbuildtype=debuginside the build folder after the initial meson run.
5.1.2. Platform Options
The “platform” option specifies a set of configuration parameters that will be used. The valid values are:
-Dplatform=nativewill tailor the configuration to the build machine.-Dplatform=genericwill use configuration that works on all machines of the same architecture as the build machine.-Dplatform=<SoC>will use configuration optimized for a particular SoC.
Consult the “socs” dictionary in config/arm/meson.build to see which SoCs are supported.
5.1.3. Overriding Platform Parameters
The values determined by the platform parameter may be overwritten. For example,
to set the max_lcores value to 256, you can either:
Pass
-Dmax_lcores=256to meson when configuring the build folder initially.Run
meson configure -Dmax_lcores=256inside the build folder after the initial meson run.
5.1.4. Building Sample Applications
Some of the DPDK sample applications in the examples directory can be automatically built as
part of a meson build. To do so, pass a comma-separated list of the examples to build to the
-Dexamples meson option as below:
meson setup -Dexamples=l2fwd,l3fwd build
There is also a special value “all” to request that all example applications whose dependencies
are met on the current system are built. When -Dexamples=all is set as a meson option,
meson will check each example application to see if it can be built, and add all which can be
built to the list of tasks in the ninja build configuration file.
For a complete list of options, run meson configure inside your configured build
folder.