summaryrefslogtreecommitdiff
path: root/mesonbuild/interpreterbase
diff options
context:
space:
mode:
authorXavier Claessens <xclaessens@netflix.com>2025-06-08 12:40:09 -0400
committerXavier Claessens <xclaesse@gmail.com>2025-10-17 12:48:29 -0400
commit538ee945054e9357ad57776be7ac66ecb6b3aeb5 (patch)
tree1c54b334ae2f4a9b60addb7919d5ce88346dd69e /mesonbuild/interpreterbase
parentd8f50ccfb814376b053fb5e427b2c6b1f7242b72 (diff)
downloadmeson-538ee945054e9357ad57776be7ac66ecb6b3aeb5.tar.gz
cargo: Allow a cargo subproject to subdir() into another cargo project
Cargo workspaces will use this to have a single subproject defining multiple crates.
Diffstat (limited to 'mesonbuild/interpreterbase')
-rw-r--r--mesonbuild/interpreterbase/interpreterbase.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/mesonbuild/interpreterbase/interpreterbase.py b/mesonbuild/interpreterbase/interpreterbase.py
index b13bbae1a..588932cad 100644
--- a/mesonbuild/interpreterbase/interpreterbase.py
+++ b/mesonbuild/interpreterbase/interpreterbase.py
@@ -733,6 +733,11 @@ class InterpreterBase:
except mesonlib.MesonException as me:
me.file = absname
raise me
+ self._evaluate_codeblock(codeblock, subdir, visitors)
+ return True
+
+ def _evaluate_codeblock(self, codeblock: mparser.CodeBlockNode, subdir: str,
+ visitors: T.Optional[T.Iterable[AstVisitor]] = None) -> None:
try:
prev_subdir = self.subdir
self.subdir = subdir
@@ -744,4 +749,3 @@ class InterpreterBase:
pass
finally:
self.subdir = prev_subdir
- return True