extra/meson to 1.4.1-1

This commit is contained in:
Kevin Mihelich 2024-05-31 02:18:18 +00:00
parent a3d3bda77f
commit af52c19f87
8 changed files with 61 additions and 394 deletions

View file

@ -1,7 +1,7 @@
pkgbase = meson
pkgdesc = High productivity build system
pkgver = 1.4.0
pkgrel = 5
pkgver = 1.4.1
pkgrel = 1
url = https://mesonbuild.com/
arch = any
license = Apache-2.0
@ -56,30 +56,24 @@ pkgbase = meson
depends = ninja
depends = python
depends = python-tqdm
source = https://github.com/mesonbuild/meson/releases/download/1.4.0/meson-1.4.0.tar.gz
source = https://github.com/mesonbuild/meson/releases/download/1.4.0/meson-1.4.0.tar.gz.asc
source = meson-reference-1.4.0.3::https://github.com/mesonbuild/meson/releases/download/1.4.0/meson-reference.3
source = meson-reference-1.4.0.json::https://github.com/mesonbuild/meson/releases/download/1.4.0/reference_manual.json
source = https://github.com/mesonbuild/meson/releases/download/1.4.1/meson-1.4.1.tar.gz
source = https://github.com/mesonbuild/meson/releases/download/1.4.1/meson-1.4.1.tar.gz.asc
source = meson-reference-1.4.1.3::https://github.com/mesonbuild/meson/releases/download/1.4.1/meson-reference.3
source = meson-reference-1.4.1.json::https://github.com/mesonbuild/meson/releases/download/1.4.1/reference_manual.json
source = arch-meson
source = cross-lib32
source = native-clang
source = 0001-Skip-broken-tests.patch
source = 0002-unittests-Add-a-helper-for-copying-source-trees.patch
source = 0003-tests-Fix-unit-tests-with-high-parallelism.patch
source = 0004-Revert-rust-recursively-pull-proc-macro-dependencies.patch
source = 0005-Fix-builds-with-Ninja-12-and-remove-a-5-year-old-wor.patch
source = 0002-cuda-avoid-test-failure-without-GPU-available.patch
validpgpkeys = 19E2D6D9B46D8DAA6288F877C24E631BABB1FE70
b2sums = 7f742ef870c182e552c1ff3508d65f251009d610def6a08e01fddb6c6a4ed6d608ead0d52cf8ca7d66b5bd7a4732dccd7ab5d98f141a4a61e275398885f79486
b2sums = 1eb83ad34d9e0a80eaf667a5edf04cf40ff043c0b9e8c78c5bd553eb2dae372b4c0dc8e30760da0321b7c33d331304c21c7f51d2133681c9fa66d551039952f3
b2sums = SKIP
b2sums = 8ad24592c1a9100832dead97a55d4cb358892fc1cd6aee641f9610cb6a5df211831e6cfc42e047d5e835ed53de1bb9c7d711dd1a0a8cfe18a0f85e92a1a3f925
b2sums = 6d08a48551e4aa68b05c307dc970e74164ba689b27f7412e39840b5cea7c65addb28e7c0fb46f4a6469b8d1a6dc6b50eb4ea477cb3d25a7f09c49b86015f6052
b2sums = a0ea6a1dd599c0a559dae64772f730ac7cad7df3ea63acc8355ff933152873567803efff012e6ea0a4c75ef9c8be023a8d927411a49e43de20bbfc69b1263488
b2sums = f44fdcb30d576e1f94d184963a379745c7ff8561622151f2ecd2c03de854bc2c9b4e1162c34dc8c6a367f16c7307044691f7e43076725bce66c979e4f4a5ce5f
b2sums = 70f042a7603d1139f6cef33aec028da087cacabe278fd47375e1b2315befbfde1c0501ad1ecc63d04d31b232a04f08c735d61ce59d7244521f3d270e417fb5af
b2sums = 9b16477aa77a706492e26fb3ad42e90674b8f0dfe657dd3bd9ba044f921be12ceabeb0050a50a15caee4d999e1ec33ed857bd3bed9e4444d73bb4a4f06381081
b2sums = 7d88929d5a3b49d91c5c9969f19d9b47f3151706526b889515acaeda0141257d5115875ac84832e9ea46f83a7700d673adcc5db84b331cd798c70ae6e90eac1e
b2sums = b0e050d6cfa7e9cb5692e6aa12185632313536bd4ad59c704cfa2b655ad52e3f34d038da3e2f01d47b16f910db8d458b69f3b2b07bd8d74b92622b00bfc7d120
b2sums = a5206ac07afa0c3cde982109f52e208a30e59daf1200b42946005bc6db09e647dc9ce220eb359fc0820d2ab1d401c5547e44bbadc0c5e1d7c942865951b9fdd7
b2sums = 655fdebe13d1857505889c5c8bd4605c989e1c92ac930f42e0162bb75fc53e460c15d929c93e2e9740a99ea49b5ed36f264da5a99dc6110eb1509d665a33ccf9
b2sums = 62e19e7ec8c3448989167fdda724104389176440ead253e8f1665f6f383542fbc9afae9d6c64f6365e8b2878863416554266e6e651d6e58981fa8e145d321e49
b2sums = c7e8e652505ef349b5ad91c71c7d1665dda22945fdfceeddac51dfca43edfec7cae89f5bd962dca27661dd5396835b8b59614d7cb01db67b5a189e1d7dc3ba22
b2sums = ba31657ec0362795c95ada7a3d903f34aa04effe2594cc8b7731f8de1d5407350855bc438b8d79cae45726283f22be5e8dbf18fc7a119f410e4a110441d4f79b
b2sums = 0318ef99fbb9e268496e75e6ec584b65fb961dc5b4b37b43f14485ebfce197688f5d9f434ec028011a2c7b720581e346075905520d10863e1b36a65d18de0289
pkgname = meson

View file

@ -10,11 +10,11 @@ Subject: [PATCH] Skip broken tests
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/test cases/frameworks/15 llvm/test.json b/test cases/frameworks/15 llvm/test.json
index cf8aa3acc7bd..3d70077acd02 100644
index eade970be637..d8b06d31abac 100644
--- a/test cases/frameworks/15 llvm/test.json
+++ b/test cases/frameworks/15 llvm/test.json
@@ -7,7 +7,6 @@
{ "val": "combination", "skip_on_jobname": ["msys2"] }
{ "val": "combination", "skip_on_jobname": ["msys2-gcc"] }
],
"link-static": [
- { "val": true, "skip_on_jobname": ["arch", "opensuse", "linux-gentoo-gcc"] },
@ -35,7 +35,7 @@ index f612e1d52d6d..d0e0d079a069 100644
dep = dependency('ZLIB', version : '>=1.2', method : 'cmake')
diff --git a/unittests/linuxliketests.py b/unittests/linuxliketests.py
index 2328107caac8..f66dc9769a8f 100644
index bfe3586c1b84..ce4d36fe024c 100644
--- a/unittests/linuxliketests.py
+++ b/unittests/linuxliketests.py
@@ -312,6 +312,7 @@ class LinuxlikeTests(BasePlatformTests):

View file

@ -0,0 +1,33 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: David Seifert <soap@gentoo.org>
Date: Fri, 31 May 2024 00:21:43 +0200
Subject: [PATCH] cuda: avoid test failure without GPU available
Fixes #13269
---
.../cuda/17 separate compilation linking/meson.build | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/test cases/cuda/17 separate compilation linking/meson.build b/test cases/cuda/17 separate compilation linking/meson.build
index 8e90ddd7f6fd..7ba7e220870d 100644
--- a/test cases/cuda/17 separate compilation linking/meson.build
+++ b/test cases/cuda/17 separate compilation linking/meson.build
@@ -11,12 +11,16 @@ add_languages('cuda')
nvcc = meson.get_compiler('cuda')
cuda = import('unstable-cuda')
-arch_flags = cuda.nvcc_arch_flags(nvcc.version(), 'Auto', detected : ['8.0'])
+arch_flags = cuda.nvcc_arch_flags(nvcc.version(), 'Common')
message('NVCC version: ' + nvcc.version())
message('NVCC flags: ' + ' '.join(arch_flags))
# test device linking with -dc (which is equivalent to `--relocatable-device-code true`)
lib = static_library('devicefuncs', ['b.cu'], cuda_args : ['-dc'] + arch_flags)
exe = executable('app', 'main.cu', cuda_args : ['-dc'] + arch_flags, link_with : lib, link_args : arch_flags)
-test('cudatest', exe)
+
+# if we don't have a CUDA-capable GPU available, avoid creating the test
+if run_command('__nvcc_device_query', check : false).returncode() == 0
+ test('cudatest', exe)
+endif

View file

@ -1,57 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Dylan Baker <dylan@pnwbakers.com>
Date: Mon, 11 Mar 2024 11:31:05 -0700
Subject: [PATCH] unittests: Add a helper for copying source trees
This is a useful thing to do when a test needs to modify the source
tree, as it prevents races between tests.
---
unittests/baseplatformtests.py | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/unittests/baseplatformtests.py b/unittests/baseplatformtests.py
index 6125ed933209..93bfc8905b73 100644
--- a/unittests/baseplatformtests.py
+++ b/unittests/baseplatformtests.py
@@ -1,14 +1,17 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright 2016-2021 The Meson development team
+# Copyright © 2024 Intel Corporation
+from __future__ import annotations
from pathlib import PurePath
from unittest import mock, TestCase, SkipTest
import json
import io
import os
import re
import subprocess
import sys
+import shutil
import tempfile
import typing as T
@@ -492,3 +495,23 @@ class BasePlatformTests(TestCase):
def assertLength(self, val, length):
assert len(val) == length, f'{val} is not length {length}'
+
+ def copy_srcdir(self, srcdir: str) -> str:
+ """Copies a source tree and returns that copy.
+
+ ensures that the copied tree is deleted after running.
+
+ :param srcdir: The locaiton of the source tree to copy
+ :return: The location of the copy
+ """
+ dest = tempfile.mkdtemp()
+ self.addCleanup(windows_proof_rmtree, dest)
+
+ # shutil.copytree expects the destinatin directory to not exist, Once
+ # python 3.8 is required the `dirs_exist_ok` parameter negates the need
+ # for this
+ dest = os.path.join(dest, 'subdir')
+
+ shutil.copytree(srcdir, dest)
+
+ return dest

View file

@ -1,56 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Tue, 5 Mar 2024 19:33:33 +0100
Subject: [PATCH] tests: Fix unit tests with high parallelism
On Arch's shiny new 48-core/96-thread build server, the
`test_install_log_content` test fails because of an unexpected
`invalid-symlink.txt` file. Apparently the test runs in parallel with
`test_install_subdir_symlinks`, which modifies the `59 install subdir`
source directory.
To fix this, make `install_subdir_invalid_symlinks` copy the entire test
into a tmpdir before modifying it.
---
unittests/linuxliketests.py | 21 +++++++++------------
1 file changed, 9 insertions(+), 12 deletions(-)
diff --git a/unittests/linuxliketests.py b/unittests/linuxliketests.py
index f66dc9769a8f..ce4d36fe024c 100644
--- a/unittests/linuxliketests.py
+++ b/unittests/linuxliketests.py
@@ -1413,25 +1413,22 @@ class LinuxlikeTests(BasePlatformTests):
Test that installation of broken symlinks works fine.
https://github.com/mesonbuild/meson/issues/3914
'''
- testdir = os.path.join(self.common_test_dir, testdir)
+ testdir = self.copy_srcdir(os.path.join(self.common_test_dir, testdir))
subdir = os.path.join(testdir, subdir_path)
with chdir(subdir):
# Can't distribute broken symlinks in the source tree because it breaks
# the creation of zipapps. Create it dynamically and run the test by
# hand.
src = '../../nonexistent.txt'
os.symlink(src, 'invalid-symlink.txt')
- try:
- self.init(testdir)
- self.build()
- self.install()
- install_path = subdir_path.split(os.path.sep)[-1]
- link = os.path.join(self.installdir, 'usr', 'share', install_path, 'invalid-symlink.txt')
- self.assertTrue(os.path.islink(link), msg=link)
- self.assertEqual(src, os.readlink(link))
- self.assertFalse(os.path.isfile(link), msg=link)
- finally:
- os.remove(os.path.join(subdir, 'invalid-symlink.txt'))
+ self.init(testdir)
+ self.build()
+ self.install()
+ install_path = subdir_path.split(os.path.sep)[-1]
+ link = os.path.join(self.installdir, 'usr', 'share', install_path, 'invalid-symlink.txt')
+ self.assertTrue(os.path.islink(link), msg=link)
+ self.assertEqual(src, os.readlink(link))
+ self.assertFalse(os.path.isfile(link), msg=link)
def test_install_subdir_symlinks(self):
self.install_subdir_invalid_symlinks('59 install subdir', os.path.join('sub', 'sub1'))

File diff suppressed because one or more lines are too long

View file

@ -1,145 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jussi Pakkanen <jpakkane@gmail.com>
Date: Sun, 14 Apr 2024 20:46:42 +0300
Subject: [PATCH] Fix builds with Ninja 12 and remove a 5 year old workaround.
---
run_project_tests.py | 3 +--
run_tests.py | 35 ++++++++++------------------------
unittests/baseplatformtests.py | 5 +----
3 files changed, 12 insertions(+), 31 deletions(-)
diff --git a/run_project_tests.py b/run_project_tests.py
index a14741364aab..222e12f74b30 100755
--- a/run_project_tests.py
+++ b/run_project_tests.py
@@ -45,7 +45,7 @@ from mesonbuild.coredata import backendlist, version as meson_version
from mesonbuild.modules.python import PythonExternalProgram
from run_tests import (
get_fake_options, run_configure, get_meson_script, get_backend_commands,
- get_backend_args_for_dir, Backend, ensure_backend_detects_changes,
+ get_backend_args_for_dir, Backend,
guess_backend, handle_meson_skip_test,
)
@@ -720,7 +720,6 @@ def _run_test(test: TestDef,
# Touch the meson.build file to force a regenerate
def force_regenerate() -> None:
- ensure_backend_detects_changes(backend)
os.utime(str(test.path / 'meson.build'))
# just test building
diff --git a/run_tests.py b/run_tests.py
index 20765321981e..0c51f3d695be 100755
--- a/run_tests.py
+++ b/run_tests.py
@@ -39,29 +39,27 @@ from mesonbuild.mesonlib import OptionKey, setup_vsenv
if T.TYPE_CHECKING:
from mesonbuild.coredata import SharedCMDOptions
-NINJA_1_9_OR_NEWER = False
+NINJA_1_12_OR_NEWER = False
NINJA_CMD = None
# If we're on CI, detecting ninja for every subprocess unit test that we run is slow
# Optimize this by respecting $NINJA and skipping detection, then exporting it on
# first run.
try:
- NINJA_1_9_OR_NEWER = bool(int(os.environ['NINJA_1_9_OR_NEWER']))
+ NINJA_1_12_OR_NEWER = bool(int(os.environ['NINJA_1_12_OR_NEWER']))
NINJA_CMD = [os.environ['NINJA']]
except (KeyError, ValueError):
- # Look for 1.9 to see if https://github.com/ninja-build/ninja/issues/1219
- # is fixed
- NINJA_CMD = detect_ninja('1.9')
+ # Look for 1.12, which removes -w dupbuild=err
+ NINJA_CMD = detect_ninja('1.12')
if NINJA_CMD is not None:
- NINJA_1_9_OR_NEWER = True
+ NINJA_1_12_OR_NEWER = True
else:
- mlog.warning('Found ninja <1.9, tests will run slower', once=True)
NINJA_CMD = detect_ninja()
if NINJA_CMD is not None:
- os.environ['NINJA_1_9_OR_NEWER'] = str(int(NINJA_1_9_OR_NEWER))
+ os.environ['NINJA_1_12_OR_NEWER'] = str(int(NINJA_1_12_OR_NEWER))
os.environ['NINJA'] = NINJA_CMD[0]
else:
- raise RuntimeError('Could not find Ninja v1.7 or newer')
+ raise RuntimeError('Could not find Ninja.')
# Emulate running meson with -X utf8 by making sure all open() calls have a
# sane encoding. This should be a python default, but PEP 540 considered it not
@@ -271,32 +269,19 @@ def get_backend_commands(backend: Backend, debug: bool = False) -> \
test_cmd = cmd + ['-target', 'RUN_TESTS']
elif backend is Backend.ninja:
global NINJA_CMD
- cmd = NINJA_CMD + ['-w', 'dupbuild=err', '-d', 'explain']
+ cmd = NINJA_CMD + ['-d', 'explain']
+ if not NINJA_1_12_OR_NEWER:
+ cmd += ['-w', 'dupbuild=err']
if debug:
cmd += ['-v']
clean_cmd = cmd + ['clean']
test_cmd = cmd + ['test', 'benchmark']
install_cmd = cmd + ['install']
uninstall_cmd = cmd + ['uninstall']
else:
raise AssertionError(f'Unknown backend: {backend!r}')
return cmd, clean_cmd, test_cmd, install_cmd, uninstall_cmd
-def ensure_backend_detects_changes(backend: Backend) -> None:
- global NINJA_1_9_OR_NEWER
- if backend is not Backend.ninja:
- return
- need_workaround = False
- # We're using ninja >= 1.9 which has QuLogic's patch for sub-1s resolution
- # timestamps
- if not NINJA_1_9_OR_NEWER:
- mlog.warning('Don\'t have ninja >= 1.9, enabling timestamp resolution workaround', once=True)
- need_workaround = True
- # Increase the difference between build.ninja's timestamp and the timestamp
- # of whatever you changed: https://github.com/ninja-build/ninja/issues/371
- if need_workaround:
- time.sleep(1)
-
def run_mtest_inprocess(commandlist: T.List[str]) -> T.Tuple[int, str, str]:
out = StringIO()
with mock.patch.object(sys, 'stdout', out), mock.patch.object(sys, 'stderr', out):
diff --git a/unittests/baseplatformtests.py b/unittests/baseplatformtests.py
index 93bfc8905b73..fb0eff185a13 100644
--- a/unittests/baseplatformtests.py
+++ b/unittests/baseplatformtests.py
@@ -31,7 +31,7 @@ import mesonbuild.modules.pkgconfig
from run_tests import (
- Backend, ensure_backend_detects_changes, get_backend_commands,
+ Backend, get_backend_commands,
get_builddir_target_args, get_meson_script, run_configure_inprocess,
run_mtest_inprocess, handle_meson_skip_test,
)
@@ -292,22 +292,19 @@ class BasePlatformTests(TestCase):
def setconf(self, arg, will_build=True):
if not isinstance(arg, list):
arg = [arg]
- if will_build:
- ensure_backend_detects_changes(self.backend)
self._run(self.mconf_command + arg + [self.builddir])
def getconf(self, optname: str):
opts = self.introspect('--buildoptions')
for x in opts:
if x.get('name') == optname:
return x.get('value')
self.fail(f'Option {optname} not found')
def wipe(self):
windows_proof_rmtree(self.builddir)
def utime(self, f):
- ensure_backend_detects_changes(self.backend)
os.utime(f)
def get_compdb(self):

View file

@ -6,8 +6,8 @@
# - disable lto in arch-meson
pkgname=meson
pkgver=1.4.0
pkgrel=5
pkgver=1.4.1
pkgrel=1
pkgdesc="High productivity build system"
url="https://mesonbuild.com/"
arch=(any)
@ -33,6 +33,7 @@ checkdepends=(
gcc-fortran
gcc-objc
git
glibc-locales
gmock
gnustep-base
gobject-introspection
@ -76,23 +77,17 @@ source=(
cross-lib32
native-clang
0001-Skip-broken-tests.patch
0002-unittests-Add-a-helper-for-copying-source-trees.patch
0003-tests-Fix-unit-tests-with-high-parallelism.patch
0004-Revert-rust-recursively-pull-proc-macro-dependencies.patch
0005-Fix-builds-with-Ninja-12-and-remove-a-5-year-old-wor.patch
0002-cuda-avoid-test-failure-without-GPU-available.patch
)
b2sums=('7f742ef870c182e552c1ff3508d65f251009d610def6a08e01fddb6c6a4ed6d608ead0d52cf8ca7d66b5bd7a4732dccd7ab5d98f141a4a61e275398885f79486'
b2sums=('1eb83ad34d9e0a80eaf667a5edf04cf40ff043c0b9e8c78c5bd553eb2dae372b4c0dc8e30760da0321b7c33d331304c21c7f51d2133681c9fa66d551039952f3'
'SKIP'
'8ad24592c1a9100832dead97a55d4cb358892fc1cd6aee641f9610cb6a5df211831e6cfc42e047d5e835ed53de1bb9c7d711dd1a0a8cfe18a0f85e92a1a3f925'
'6d08a48551e4aa68b05c307dc970e74164ba689b27f7412e39840b5cea7c65addb28e7c0fb46f4a6469b8d1a6dc6b50eb4ea477cb3d25a7f09c49b86015f6052'
'211cee61f117fd1d582d7a613a8634f044e9e307791c4154c6da72bccd5f06856801b14bcb26157ee682b5935c48ffd2098a5fabab2232726d7758cf091c07f7'
'a0ea6a1dd599c0a559dae64772f730ac7cad7df3ea63acc8355ff933152873567803efff012e6ea0a4c75ef9c8be023a8d927411a49e43de20bbfc69b1263488'
'f44fdcb30d576e1f94d184963a379745c7ff8561622151f2ecd2c03de854bc2c9b4e1162c34dc8c6a367f16c7307044691f7e43076725bce66c979e4f4a5ce5f'
'70f042a7603d1139f6cef33aec028da087cacabe278fd47375e1b2315befbfde1c0501ad1ecc63d04d31b232a04f08c735d61ce59d7244521f3d270e417fb5af'
'9b16477aa77a706492e26fb3ad42e90674b8f0dfe657dd3bd9ba044f921be12ceabeb0050a50a15caee4d999e1ec33ed857bd3bed9e4444d73bb4a4f06381081'
'7d88929d5a3b49d91c5c9969f19d9b47f3151706526b889515acaeda0141257d5115875ac84832e9ea46f83a7700d673adcc5db84b331cd798c70ae6e90eac1e'
'b0e050d6cfa7e9cb5692e6aa12185632313536bd4ad59c704cfa2b655ad52e3f34d038da3e2f01d47b16f910db8d458b69f3b2b07bd8d74b92622b00bfc7d120'
'a5206ac07afa0c3cde982109f52e208a30e59daf1200b42946005bc6db09e647dc9ce220eb359fc0820d2ab1d401c5547e44bbadc0c5e1d7c942865951b9fdd7'
'655fdebe13d1857505889c5c8bd4605c989e1c92ac930f42e0162bb75fc53e460c15d929c93e2e9740a99ea49b5ed36f264da5a99dc6110eb1509d665a33ccf9'
'62e19e7ec8c3448989167fdda724104389176440ead253e8f1665f6f383542fbc9afae9d6c64f6365e8b2878863416554266e6e651d6e58981fa8e145d321e49'
'c7e8e652505ef349b5ad91c71c7d1665dda22945fdfceeddac51dfca43edfec7cae89f5bd962dca27661dd5396835b8b59614d7cb01db67b5a189e1d7dc3ba22')
'ba31657ec0362795c95ada7a3d903f34aa04effe2594cc8b7731f8de1d5407350855bc438b8d79cae45726283f22be5e8dbf18fc7a119f410e4a110441d4f79b'
'0318ef99fbb9e268496e75e6ec584b65fb961dc5b4b37b43f14485ebfce197688f5d9f434ec028011a2c7b720581e346075905520d10863e1b36a65d18de0289')
validpgpkeys=(
19E2D6D9B46D8DAA6288F877C24E631BABB1FE70 # Jussi Pakkanen <jpakkane@gmail.com>
)
@ -103,17 +98,9 @@ prepare() {
# Pass tests
patch -Np1 -i ../0001-Skip-broken-tests.patch
# https://github.com/mesonbuild/meson/pull/12937
patch -Np1 -i ../0002-unittests-Add-a-helper-for-copying-source-trees.patch
patch -Np1 -i ../0003-tests-Fix-unit-tests-with-high-parallelism.patch
# Fix lib32-mesa
# https://github.com/mesonbuild/meson/issues/12973
patch -Np1 -i ../0004-Revert-rust-recursively-pull-proc-macro-dependencies.patch
# Fix tests with recent Ninja
# https://github.com/mesonbuild/meson/pull/13087
patch -Np1 -i ../0005-Fix-builds-with-Ninja-12-and-remove-a-5-year-old-wor.patch
# https://github.com/mesonbuild/meson/issues/13269
# https://github.com/mesonbuild/meson/pull/13273
patch -Np1 -i ../0002-cuda-avoid-test-failure-without-GPU-available.patch
}
build() {