path: root/meson_options.txt
diff options
authorBruce Richardson <>2017-08-28 11:57:12 +0100
committerBruce Richardson <>2018-01-30 17:49:16 +0100
commita25a650be5f0c60ea69531741bd13521b183d502 (patch)
tree5a92fa7c904eb0e77212df787e4a7cdcb07b16b0 /meson_options.txt
parent1ee9569576f676cdffa30d539dedfc531c7f8cf6 (diff)
build: add infrastructure for meson and ninja builds
To build with meson and ninja, we need some initial infrastructure in place. The build files for meson always need to be called "", and options get placed in meson_options.txt This commit adds a top-level file, which sets up the global variables for tracking drivers, libraries, etc., and then includes other build files, before finishing by writing the global build configuration header file and a DPDK pkgconfig file at the end, using some of those same globals. From the top level build file, the only include file thus far is for the config folder, which does some other setup of global configuration parameters, including pulling in architecture specific parameters from an architectural subdirectory. A number of configuration build options are provided for the project to tune a number of global variables which will be used later e.g. max numa nodes, max cores, etc. These settings all make their way to the global build config header "rte_build_config.h". There is also a file "rte_config.h", which includes "rte_build_config.h", and this file is meant to hold other build-time values which are present in our current static build configuration but are not normally meant for user-configuration. Ideally, over time, the values placed here should be moved to the individual libraries or drivers which want those values. Signed-off-by: Bruce Richardson <> Reviewed-by: Harry van Haaren <> Acked-by: Keith Wiles <> Acked-by: Luca Boccassi <>
Diffstat (limited to 'meson_options.txt')
1 files changed, 6 insertions, 0 deletions
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644
index 0000000..c03b79f
--- /dev/null
+++ b/meson_options.txt
@@ -0,0 +1,6 @@
+option('machine', type: 'string', value: 'native', description: 'set the target machine type')
+option('max_lcores', type: 'string', value: '128', description: 'maximum number of cores/threads supported by EAL')
+option('max_numa_nodes', type: 'string', value: '4', description: 'maximum number of NUMA nodes supported by EAL')
+option('use_hpet', type: 'boolean', value: false, description: 'use HPET timer in EAL')
+option('allow_invalid_socket_id', type: 'boolean', value: false,
+ description: 'allow out-of-range NUMA socket id\'s for platforms that don\'t report the value correctly')