The commit
8442ac9c0264ac7beb5afd6c3bf922030a6edaf3 set
install_tag option to install_emptydir() calls, but it requires
meson-0.62.0. Hence, after the commit, we cannot build systemd
with older meson anymore. As using install_tag is quite useful
for building systemd package, let's bump the requirement of
meson version to 0.62.0.
Note, the current meson versions of major distributions are:
CentOS 9: 0.63.3
CentOS 10: 1.4.1
Fedora 40: 1.4.1
Fedora 41: 1.5.1
Ubuntu 20.04 LTS (focal): 0.53.2 -- EOL on 2025-04
Ubuntu 22.04 LTS (jammy): 0.61.2 -- EOL on 2027-04
Ubuntu 24.04 LTS (noble): 1.3.2
Ubuntu 24.10 (oracular): 1.5.2
Debian 11 (bullseye): 0.56.2 (1.0.0 in backports) -- EOL on 2024-08
Debian 12 (bookworm): 1.0.1 (1.5.1 in backports)
openSUSE Leap 15.6: 1.6.1
openSUSE Tumbleweed: 1.6.1
As the next version (v258) is not expected to be released before
the end of 2025-04, it is OK to cut the support of Ubuntu 20.04 LTS and
Debian 11. Also, our policy for support of distributions explicitly says
only latest Ubuntu LTS and non-LTS releases are supported.
Hence, we can also cut Ubuntu 22.04, even if it is not EOL.
Follow-up for
8442ac9c0264ac7beb5afd6c3bf922030a6edaf3.
Closes #35967.
meson --version
ninja --version
-# TODO: drop once minimum meson version is bumped to 0.62 or newer
-find . -type f -name meson.build -exec sed -i 's/install_emptydir(\(.*\), install_tag : .*)/install_emptydir(\1)/g' '{}' '+'
-
for args in "${ARGS[@]}"; do
SECONDS=0
}
function run_meson() {
- # TODO: drop once minimum meson version is bumped to 0.62 or newer
- find . -type f -name meson.build -exec sed -i 's/install_emptydir(\(.*\), install_tag : .*)/install_emptydir(\1)/g' '{}' '+'
if ! meson "$@"; then
find . -type f -name meson-log.txt -exec cat '{}' +
return 1
python-pefile (optional, required for ukify)
python-lxml (optional, required to build the indices)
pyelftools (optional, required for systemd-boot)
- meson >= 0.60.0
+ meson >= 0.62.0
ninja
gcc >= 8.4
>= 13.1.0 is required to build BPF program by using GCC
'localstatedir=/var',
'warning_level=2',
],
- meson_version : '>= 0.60.0',
- )
+ meson_version : '>= 0.62.0',
+)
project_major_version = meson.project_version().split('.')[0].split('~')[0]
if meson.project_version().contains('.')