diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2021-01-04 23:42:50 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-04 23:42:50 +0000 |
commit | d47a5c81a9af992eca42d857477f2bb5821712b6 (patch) | |
tree | 9c9ff772c696661a1582dc81c86273e8d975a13f /mesonbuild/cmake | |
parent | 6b515c432109cf7ab488da37cddeb1752e91fa5c (diff) | |
parent | f14bf8b2ed052f68857ed3eaec08a326d335a3a4 (diff) | |
download | meson-d47a5c81a9af992eca42d857477f2bb5821712b6.zip meson-d47a5c81a9af992eca42d857477f2bb5821712b6.tar.gz meson-d47a5c81a9af992eca42d857477f2bb5821712b6.tar.bz2 |
Merge pull request #8080 from dcbaker/submit/option-key-type
Use an object for option keys
Diffstat (limited to 'mesonbuild/cmake')
-rw-r--r-- | mesonbuild/cmake/executor.py | 4 | ||||
-rw-r--r-- | mesonbuild/cmake/interpreter.py | 10 |
2 files changed, 7 insertions, 7 deletions
diff --git a/mesonbuild/cmake/executor.py b/mesonbuild/cmake/executor.py index 19971e3..674b854 100644 --- a/mesonbuild/cmake/executor.py +++ b/mesonbuild/cmake/executor.py @@ -23,7 +23,7 @@ import re import os from .. import mlog -from ..mesonlib import PerMachine, Popen_safe, version_compare, MachineChoice, is_windows +from ..mesonlib import PerMachine, Popen_safe, version_compare, MachineChoice, is_windows, OptionKey from ..envconfig import get_env_var if T.TYPE_CHECKING: @@ -62,7 +62,7 @@ class CMakeExecutor: self.cmakebin = None return - self.prefix_paths = self.environment.coredata.builtins_per_machine[self.for_machine]['cmake_prefix_path'].value + self.prefix_paths = self.environment.coredata.options[OptionKey('cmake_prefix_path', machine=self.for_machine)].value env_pref_path_raw = get_env_var( self.for_machine, self.environment.is_cross_build(), diff --git a/mesonbuild/cmake/interpreter.py b/mesonbuild/cmake/interpreter.py index 8aaeb19..1a533db 100644 --- a/mesonbuild/cmake/interpreter.py +++ b/mesonbuild/cmake/interpreter.py @@ -22,7 +22,7 @@ from .executor import CMakeExecutor from .toolchain import CMakeToolchain, CMakeExecScope from .traceparser import CMakeTraceParser, CMakeGeneratorTarget from .. import mlog, mesonlib -from ..mesonlib import MachineChoice, OrderedSet, version_compare, path_is_in_root, relative_to_if_possible +from ..mesonlib import MachineChoice, OrderedSet, version_compare, path_is_in_root, relative_to_if_possible, OptionKey from ..mesondata import mesondata from ..compilers.compilers import lang_suffixes, header_suffixes, obj_suffixes, lib_suffixes, is_header from enum import Enum @@ -383,7 +383,7 @@ class ConverterTarget: cfgs += [x for x in tgt.properties['CONFIGURATIONS'] if x] cfg = cfgs[0] - is_debug = self.env.coredata.get_builtin_option('debug'); + is_debug = self.env.coredata.get_option(OptionKey('debug')); if is_debug: if 'DEBUG' in cfgs: cfg = 'DEBUG' @@ -598,10 +598,10 @@ class ConverterTarget: @lru_cache(maxsize=None) def _all_lang_stds(self, lang: str) -> T.List[str]: - lang_opts = self.env.coredata.compiler_options.build.get(lang, None) - if not lang_opts or 'std' not in lang_opts: + try: + res = self.env.coredata.options[OptionKey('std', machine=MachineChoice.BUILD, lang=lang)].choices + except KeyError: return [] - res = lang_opts['std'].choices # TODO: Get rid of this once we have propper typing for options assert isinstance(res, list) |