build: increase minimum meson version to 0.53.2
This patchset bumps the minimum meson version from 0.49.2 to 0.53.2. Ideally, the minimum version should be 0.53 without a point release, but some DPDK builds (mingw) are broken with 0.53.0 due to issue[1], fixed by commit[2] in 0.53.1. Therefore we use the latest point release from 0.53 branch i.e. 0.53.2. Some new features of interest which can now be used in DPDK with this new minimum meson version: * can do header-file checks directly inside find_library calls, rather than needing a separate check.[v0.50]. * can pass multiple cross-files at the same time when cross-compiling [v0.51]. * "alias_target" function, to allow use to give better/shorter names for particular build objects [v0.52]. * auto-generation of clang-format [v0.50] and clang-tidy[v0.52] targets when those tools are present and config dotfiles are present. Similarly ctags and cscope are added as targets when those tools are present [v0.53] * meson module for filesystem operations, so meson can now check for the presence of particular files or directories [v0.53]. * "summary" function to provide a configuration summary at the end of the meson run [v0.53]. Plus many other features. See [3] for full details of each version. [1] https://github.com/mesonbuild/meson/issues/6442 [2] https://github.com/mesonbuild/meson/pull/6457/commits/8e7a7c36b579 [3] https://mesonbuild.com/Release-notes.html Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: David Marchand <david.marchand@redhat.com>
This commit is contained in:
parent
8ad97e4b32
commit
909ad7b80e
@ -4,7 +4,7 @@
|
||||
[ "$(id -u)" != '0' ] || alias sudo=
|
||||
|
||||
# need to install as 'root' since some of the unit tests won't run without it
|
||||
sudo python3 -m pip install --upgrade 'meson==0.49.2'
|
||||
sudo python3 -m pip install --upgrade 'meson==0.53.2'
|
||||
|
||||
# setup hugepages. error ignored because having hugepage is not mandatory.
|
||||
cat /proc/meminfo
|
||||
|
@ -43,7 +43,7 @@ Compilation of the DPDK
|
||||
|
||||
* Python 3.5 or later.
|
||||
|
||||
* Meson (version 0.49.2+) and ninja
|
||||
* Meson (version 0.53.2+) and ninja
|
||||
|
||||
* ``meson`` & ``ninja-build`` packages in most Linux distributions
|
||||
* If the packaged version is below the minimum version, the latest versions
|
||||
|
@ -35,7 +35,7 @@ The ``meson`` tool is used to configure a DPDK build. On most Linux
|
||||
distributions this can be got using the local package management system,
|
||||
e.g. ``dnf install meson`` or ``apt-get install meson``. If meson is not
|
||||
available as a suitable package, it can also be installed using the Python
|
||||
3 ``pip`` tool, e.g. ``pip3 install meson``. Version 0.49.2 of meson is
|
||||
3 ``pip`` tool, e.g. ``pip3 install meson``. Version 0.53.2 or later of meson is
|
||||
required - if the version packaged is too old, the latest version is
|
||||
generally available from "pip".
|
||||
|
||||
|
@ -47,7 +47,7 @@ endif
|
||||
|
||||
libmtcr_ul_found = false
|
||||
lib = cc.find_library('mtcr_ul', required:false)
|
||||
if lib.found() and run_command('meson', '--version').stdout().version_compare('>= 0.49.2')
|
||||
if lib.found()
|
||||
libmtcr_ul_found = true
|
||||
ext_deps += lib
|
||||
endif
|
||||
|
@ -12,16 +12,14 @@ project('DPDK', 'C',
|
||||
'default_library=static',
|
||||
'warning_level=2',
|
||||
],
|
||||
meson_version: '>= 0.49.2'
|
||||
meson_version: '>= 0.53.2'
|
||||
)
|
||||
|
||||
# check for developer mode
|
||||
developer_mode = false
|
||||
if get_option('developer_mode').auto()
|
||||
if meson.version().version_compare('>=0.53') # fs module available
|
||||
fs = import('fs')
|
||||
developer_mode = fs.exists('.git')
|
||||
endif
|
||||
fs = import('fs')
|
||||
developer_mode = fs.exists('.git')
|
||||
else
|
||||
developer_mode = get_option('developer_mode').enabled()
|
||||
endif
|
||||
|
Loading…
Reference in New Issue
Block a user