diff options
author | Dylan Baker <dylan@pnwbakers.com> | 2023-06-22 09:56:11 -0700 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2023-06-27 11:53:18 -0700 |
commit | 5d16bd5308f0edd9d53b82ff6a961241c7188423 (patch) | |
tree | 7f10cb909d47e18479dd824d25c3c62cb4668cd0 /mesonbuild/modules | |
parent | c5b16ab8b957d53b75c73bb24144a4f61c86234d (diff) | |
download | meson-5d16bd5308f0edd9d53b82ff6a961241c7188423.zip meson-5d16bd5308f0edd9d53b82ff6a961241c7188423.tar.gz meson-5d16bd5308f0edd9d53b82ff6a961241c7188423.tar.bz2 |
modules/rust: Add a keyword argument to pass extra args to the rust compiler
This may be necessary to, for example, stop rustc complaining about
unused functions
Diffstat (limited to 'mesonbuild/modules')
-rw-r--r-- | mesonbuild/modules/rust.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/mesonbuild/modules/rust.py b/mesonbuild/modules/rust.py index faca9c0..92b0470 100644 --- a/mesonbuild/modules/rust.py +++ b/mesonbuild/modules/rust.py @@ -40,6 +40,7 @@ if T.TYPE_CHECKING: dependencies: T.List[T.Union[Dependency, ExternalLibrary]] is_parallel: bool link_with: T.List[LibTypes] + rust_args: T.List[str] class FuncBindgen(TypedDict): @@ -71,6 +72,13 @@ class RustModule(ExtensionModule): *TEST_KWS, DEPENDENCIES_KW, LINK_WITH_KW.evolve(since='1.2.0'), + KwargInfo( + 'rust_args', + ContainerTypeInfo(list, str), + listify=True, + default=[], + since='1.2.0', + ), KwargInfo('is_parallel', bool, default=False), ) def test(self, state: ModuleState, args: T.Tuple[str, BuildTarget], kwargs: FuncTest) -> ModuleReturnValue: @@ -148,7 +156,8 @@ class RustModule(ExtensionModule): new_target_kwargs = base_target.kwargs.copy() # Don't mutate the shallow copied list, instead replace it with a new # one - new_target_kwargs['rust_args'] = new_target_kwargs.get('rust_args', []) + ['--test'] + new_target_kwargs['rust_args'] = \ + new_target_kwargs.get('rust_args', []) + kwargs['rust_args'] + ['--test'] new_target_kwargs['install'] = False new_target_kwargs['dependencies'] = new_target_kwargs.get('dependencies', []) + kwargs['dependencies'] new_target_kwargs['link_with'] = new_target_kwargs.get('link_with', []) + kwargs['link_with'] |