|
36 | 36 | MesonBugException,
|
37 | 37 | )
|
38 | 38 | from .compilers import (
|
39 |
| - Compiler, is_object, clink_langs, sort_clink, lang_suffixes, |
| 39 | + Compiler, is_object, clink_langs, sort_clink, lang_suffixes, all_languages, |
40 | 40 | is_known_suffix, detect_static_linker, detect_compiler_for
|
41 | 41 | )
|
42 | 42 | from .linkers import StaticLinker
|
|
54 | 54 |
|
55 | 55 | pch_kwargs = {'c_pch', 'cpp_pch'}
|
56 | 56 |
|
57 |
| -lang_arg_kwargs = { |
58 |
| - 'c_args', |
59 |
| - 'cpp_args', |
60 |
| - 'cuda_args', |
61 |
| - 'd_args', |
| 57 | +lang_arg_kwargs = {f'{lang}_args' for lang in all_languages} |
| 58 | +lang_arg_kwargs |= { |
62 | 59 | 'd_import_dirs',
|
63 | 60 | 'd_unittest',
|
64 | 61 | 'd_module_versions',
|
65 | 62 | 'd_debug',
|
66 |
| - 'fortran_args', |
67 |
| - 'java_args', |
68 |
| - 'objc_args', |
69 |
| - 'objcpp_args', |
70 |
| - 'rust_args', |
71 |
| - 'vala_args', |
72 |
| - 'cs_args', |
73 |
| - 'cython_args', |
74 | 63 | }
|
75 | 64 |
|
76 | 65 | vala_kwargs = {'vala_header', 'vala_gir', 'vala_vapi'}
|
@@ -1078,24 +1067,18 @@ def process_kwargs(self, kwargs, environment):
|
1078 | 1067 | for linktarget in lwhole:
|
1079 | 1068 | self.link_whole(linktarget)
|
1080 | 1069 |
|
1081 |
| - c_pchlist, cpp_pchlist, clist, cpplist, cudalist, cslist, valalist, objclist, objcpplist, fortranlist, rustlist \ |
1082 |
| - = (extract_as_list(kwargs, c) for c in ['c_pch', 'cpp_pch', 'c_args', 'cpp_args', 'cuda_args', 'cs_args', 'vala_args', 'objc_args', 'objcpp_args', 'fortran_args', 'rust_args']) |
| 1070 | + for lang in all_languages: |
| 1071 | + lang_args = extract_as_list(kwargs, f'{lang}_args') |
| 1072 | + self.add_compiler_args(lang, lang_args) |
1083 | 1073 |
|
1084 |
| - self.add_pch('c', c_pchlist) |
1085 |
| - self.add_pch('cpp', cpp_pchlist) |
1086 |
| - compiler_args = {'c': clist, 'cpp': cpplist, 'cuda': cudalist, 'cs': cslist, 'vala': valalist, 'objc': objclist, 'objcpp': objcpplist, |
1087 |
| - 'fortran': fortranlist, 'rust': rustlist |
1088 |
| - } |
1089 |
| - for key, value in compiler_args.items(): |
1090 |
| - self.add_compiler_args(key, value) |
| 1074 | + self.add_pch('c', extract_as_list(kwargs, 'c_pch')) |
| 1075 | + self.add_pch('cpp', extract_as_list(kwargs, 'cpp_pch')) |
1091 | 1076 |
|
1092 | 1077 | if not isinstance(self, Executable) or 'export_dynamic' in kwargs:
|
1093 | 1078 | self.vala_header = kwargs.get('vala_header', self.name + '.h')
|
1094 | 1079 | self.vala_vapi = kwargs.get('vala_vapi', self.name + '.vapi')
|
1095 | 1080 | self.vala_gir = kwargs.get('vala_gir', None)
|
1096 | 1081 |
|
1097 |
| - dlist = stringlistify(kwargs.get('d_args', [])) |
1098 |
| - self.add_compiler_args('d', dlist) |
1099 | 1082 | dfeatures = dict()
|
1100 | 1083 | dfeature_unittest = kwargs.get('d_unittest', False)
|
1101 | 1084 | if dfeature_unittest:
|
|
0 commit comments