aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/build.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 576bb03..e5900ac 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -611,8 +611,15 @@ class Target(HoldableObject):
@staticmethod
def parse_overrides(kwargs: T.Dict[str, T.Any]) -> T.Dict[OptionKey, str]:
+ opts = kwargs.get('override_options', [])
+
+ # In this case we hav ean already parsed and ready to go dictionary
+ # provided by typed_kwargs
+ if isinstance(opts, dict):
+ return T.cast(T.Dict[OptionKey, str], opts)
+
result: T.Dict[OptionKey, str] = {}
- overrides = stringlistify(kwargs.get('override_options', []))
+ overrides = stringlistify(opts)
for o in overrides:
if '=' not in o:
raise InvalidArguments('Overrides must be of form "key=value"')