From dcf3af6b4e755a5da76eeea91332ca3dce17810f Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Tue, 28 Oct 2025 13:33:09 +0100 Subject: modules: rust: invoke subprojects automatically from dependencies() Signed-off-by: Paolo Bonzini --- mesonbuild/cargo/interpreter.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'mesonbuild/cargo/interpreter.py') diff --git a/mesonbuild/cargo/interpreter.py b/mesonbuild/cargo/interpreter.py index d7d4a7733..fc3465a0f 100644 --- a/mesonbuild/cargo/interpreter.py +++ b/mesonbuild/cargo/interpreter.py @@ -24,7 +24,9 @@ from . import builder, version from .cfg import eval_cfg from .toml import load_toml from .manifest import Manifest, CargoLock, CargoLockPackage, Workspace, fixup_meson_varname -from ..mesonlib import is_parent_path, MesonException, MachineChoice, unique_list, version_compare +from ..mesonlib import ( + is_parent_path, lazy_property, MesonException, MachineChoice, + unique_list, version_compare) from .. import coredata, mlog from ..wrap.wrap import PackageDefinition @@ -105,6 +107,12 @@ class PackageState: # Package configuration state cfg: T.Optional[PackageConfiguration] = None + @lazy_property + def path(self) -> T.Optional[str]: + if not self.ws_subdir: + return None + return os.path.normpath(os.path.join(self.ws_subdir, self.ws_member)) + def get_env_dict(self, environment: Environment, subdir: str) -> T.Dict[str, str]: """Get environment variables for this package.""" # Common variables for build.rs and crates -- cgit v1.2.3