summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2025-08-17 08:42:20 +0200
committerXavier Claessens <xclaesse@gmail.com>2025-10-23 17:02:13 +0100
commitab26e300470a42950f95bcdc9cd38c670d7a74c7 (patch)
tree6a288e5a85f617bb733006884f8202dd069498e6
parent1b39b1e4d7520af381d68c26600814c3e3fb5161 (diff)
downloadmeson-ab26e300470a42950f95bcdc9cd38c670d7a74c7.tar.gz
cargo: build default_options as a dictionary
This makes it possible to pass rust_args as a list. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--mesonbuild/cargo/interpreter.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/mesonbuild/cargo/interpreter.py b/mesonbuild/cargo/interpreter.py
index 02fe9d3b4..52da56a89 100644
--- a/mesonbuild/cargo/interpreter.py
+++ b/mesonbuild/cargo/interpreter.py
@@ -437,15 +437,16 @@ class Interpreter:
build.function('project', args, kwargs),
]
- default_options: T.List[mparser.BaseNode] = []
- default_options.append(build.string(f'rust_std={pkg.manifest.package.edition}'))
- default_options.append(build.string(f'build.rust_std={pkg.manifest.package.edition}'))
+ default_options: T.Dict[str, mparser.BaseNode] = {
+ 'rust_std': build.string(pkg.manifest.package.edition),
+ 'build.rust_std': build.string(pkg.manifest.package.edition),
+ }
if pkg.downloaded:
- default_options.append(build.string('warning_level=0'))
+ default_options['warning_level'] = build.string('0')
kwargs.update({
'version': build.string(pkg.manifest.package.version),
- 'default_options': build.array(default_options),
+ 'default_options': build.dict({build.string(k): v for k, v in default_options.items()}),
})
if pkg.manifest.package.license:
kwargs['license'] = build.string(pkg.manifest.package.license)