diff options
| author | Paolo Bonzini <pbonzini@redhat.com> | 2025-04-09 12:42:21 +0200 |
|---|---|---|
| committer | Jussi Pakkanen <jpakkane@gmail.com> | 2025-04-09 16:32:20 +0300 |
| commit | a3c41c6a896ed49b157ccc830e1bc665581097b4 (patch) | |
| tree | 14373e50060685449a38e543e022d3604f4d519b | |
| parent | b578f7035e8123be5ba0fc2afdbcacd34b67049f (diff) | |
| download | meson-a3c41c6a896ed49b157ccc830e1bc665581097b4.tar.gz | |
options: always look up root-project options in self.options
Previously, root-project options (key.subproject == '') would always be
stored as an augment or as pending_project_options. But they might actually
be included in self.options instead, so exclude them from the initial test.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| -rw-r--r-- | mesonbuild/options.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/mesonbuild/options.py b/mesonbuild/options.py index 124a4afdb..5fc16f5e1 100644 --- a/mesonbuild/options.py +++ b/mesonbuild/options.py @@ -1298,8 +1298,7 @@ class OptionStore: # when building natively. if not self.is_cross and key.is_for_build(): continue - if key.subproject is not None: - #self.pending_project_options[key] = valstr + if key.subproject: augstr = str(key) self.augments[augstr] = valstr elif key in self.options: @@ -1331,7 +1330,7 @@ class OptionStore: # when building natively. if not self.is_cross and key.is_for_build(): continue - if key.subproject is not None: + if key.subproject: self.pending_options[key] = valstr elif key in self.options: self.set_option(key, valstr, first_invocation) @@ -1355,7 +1354,9 @@ class OptionStore: # when building natively. if not self.is_cross and key.is_for_build(): continue - if key in self.options: + if key.subproject: + self.pending_options[key] = valstr + elif key in self.options: self.set_option(key, valstr, True) else: proj_key = key.as_root() |
