diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2024-04-14 12:58:30 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2025-02-13 15:26:44 +0200 |
commit | 518c732ea9b0f1975f6f28accff3286be4106538 (patch) | |
tree | 2be9544828545a2f9f0676efc6eb82ac197ec4bd /mesonbuild/compilers/mixins/elbrus.py | |
parent | ea678ed82938ceac00682b2695b57193d36b71b4 (diff) | |
download | meson-optionrefactor3.zip meson-optionrefactor3.tar.gz meson-optionrefactor3.tar.bz2 |
Make all Meson level options overridable per subproject.optionrefactor3
Diffstat (limited to 'mesonbuild/compilers/mixins/elbrus.py')
-rw-r--r-- | mesonbuild/compilers/mixins/elbrus.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/mesonbuild/compilers/mixins/elbrus.py b/mesonbuild/compilers/mixins/elbrus.py index 5818d8d..4bf0826 100644 --- a/mesonbuild/compilers/mixins/elbrus.py +++ b/mesonbuild/compilers/mixins/elbrus.py @@ -18,7 +18,7 @@ from ...options import OptionKey if T.TYPE_CHECKING: from ...environment import Environment - from ...coredata import KeyedOptionDictType + from ...build import BuildTarget class ElbrusCompiler(GnuLikeCompiler): @@ -83,9 +83,14 @@ class ElbrusCompiler(GnuLikeCompiler): # Actually it's not supported for now, but probably will be supported in future return 'pch' - def get_option_compile_args(self, options: 'KeyedOptionDictType') -> T.List[str]: + def get_option_compile_args(self, target: 'BuildTarget', env: 'Environment', subproject: T.Optional[str] = None) -> T.List[str]: args: T.List[str] = [] - std = options.get_value(OptionKey(f'{self.language}_std', machine=self.for_machine)) + key = OptionKey(f'{self.language}_std', machine=self.for_machine) + if target: + std = env.coredata.get_option_for_target(target, key) + else: + std = env.coredata.get_option_for_subproject(key, subproject) + assert isinstance(std, str) if std != 'none': args.append('-std=' + std) return args |