aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
authorNomura <nomura.rh@gmail.com>2023-10-02 15:28:58 +0200
committerDylan Baker <dylan@pnwbakers.com>2023-10-05 09:59:43 -0700
commit3cac6ea54572214d40234042f59de85618b0c131 (patch)
tree4c1c7a8f7946371df46bd611b91abed3b6b5d6fb /mesonbuild/build.py
parent03a0d3ddfb092ceb48f1a30fdf5e4b6af2890235 (diff)
downloadmeson-3cac6ea54572214d40234042f59de85618b0c131.zip
meson-3cac6ea54572214d40234042f59de85618b0c131.tar.gz
meson-3cac6ea54572214d40234042f59de85618b0c131.tar.bz2
Add env kwarg in generator.process()
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index d1888d7..8208fa0 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1822,8 +1822,14 @@ class Generator(HoldableObject):
def process_files(self, files: T.Iterable[T.Union[str, File, 'CustomTarget', 'CustomTargetIndex', 'GeneratedList']],
state: T.Union['Interpreter', 'ModuleState'],
preserve_path_from: T.Optional[str] = None,
- extra_args: T.Optional[T.List[str]] = None) -> 'GeneratedList':
- output = GeneratedList(self, state.subdir, preserve_path_from, extra_args=extra_args if extra_args is not None else [])
+ extra_args: T.Optional[T.List[str]] = None,
+ env: T.Optional[EnvironmentVariables] = None) -> 'GeneratedList':
+ output = GeneratedList(
+ self,
+ state.subdir,
+ preserve_path_from,
+ extra_args=extra_args if extra_args is not None else [],
+ env=env if env is not None else EnvironmentVariables())
for e in files:
if isinstance(e, CustomTarget):
@@ -1862,6 +1868,7 @@ class GeneratedList(HoldableObject):
subdir: str
preserve_path_from: T.Optional[str]
extra_args: T.List[str]
+ env: T.Optional[EnvironmentVariables]
def __post_init__(self) -> None:
self.name = self.generator.exe
@@ -1875,6 +1882,9 @@ class GeneratedList(HoldableObject):
if self.extra_args is None:
self.extra_args: T.List[str] = []
+ if self.env is None:
+ self.env: EnvironmentVariables = EnvironmentVariables()
+
if isinstance(self.generator.exe, programs.ExternalProgram):
if not self.generator.exe.found():
raise InvalidArguments('Tried to use not-found external program as generator')