summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/cmake/common.py1
-rw-r--r--mesonbuild/cmake/toolchain.py9
2 files changed, 8 insertions, 2 deletions
diff --git a/mesonbuild/cmake/common.py b/mesonbuild/cmake/common.py
index 7644c0b96..b7ab1ba22 100644
--- a/mesonbuild/cmake/common.py
+++ b/mesonbuild/cmake/common.py
@@ -19,6 +19,7 @@ language_map = {
'cuda': 'CUDA',
'objc': 'OBJC',
'objcpp': 'OBJCXX',
+ 'nasm': 'ASM_NASM',
'cs': 'CSharp',
'java': 'Java',
'fortran': 'Fortran',
diff --git a/mesonbuild/cmake/toolchain.py b/mesonbuild/cmake/toolchain.py
index d410886ec..11a00be5d 100644
--- a/mesonbuild/cmake/toolchain.py
+++ b/mesonbuild/cmake/toolchain.py
@@ -175,7 +175,12 @@ class CMakeToolchain:
# Set the compiler variables
for lang, comp_obj in self.compilers.items():
- prefix = 'CMAKE_{}_'.format(language_map.get(lang, lang.upper()))
+ language = language_map.get(lang, None)
+
+ if not language:
+ continue # unsupported language
+
+ prefix = 'CMAKE_{}_'.format(language)
exe_list = comp_obj.get_exelist()
if not exe_list:
@@ -211,7 +216,7 @@ class CMakeToolchain:
# Generate the CMakeLists.txt
mlog.debug('CMake Toolchain: Calling CMake once to generate the compiler state')
languages = list(self.compilers.keys())
- lang_ids = [language_map.get(x, x.upper()) for x in languages]
+ lang_ids = [language_map.get(x) for x in languages if x in language_map]
cmake_content = dedent(f'''
cmake_minimum_required(VERSION 3.10)
project(CompInfo {' '.join(lang_ids)})