diff options
author | Brad King <brad.king@kitware.com> | 2022-12-15 16:48:10 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2022-12-15 16:53:11 (GMT) |
commit | 98ba122a30221d7bbbf1c2184982606e1b6e8d9d (patch) | |
tree | 3fe88fdc745246bf1c97a1ee861251920a13455f | |
parent | 2d3ed58ceec216417d50d6cdf45120c218cdcf18 (diff) | |
download | CMake-98ba122a30221d7bbbf1c2184982606e1b6e8d9d.zip CMake-98ba122a30221d7bbbf1c2184982606e1b6e8d9d.tar.gz CMake-98ba122a30221d7bbbf1c2184982606e1b6e8d9d.tar.bz2 |
ASM_MASM: Populate MSVC debug information format abstraction table
In commit 0e96a20478 (MSVC: Add abstraction for debug information
format, 2022-08-25, v3.25.0-rc1~142^2~1) we overlooked populating the
runtime library selection flags for the Microsoft assembler. Its
compiler id is `MSVC`, so our generators expect the table to be
populated. It only supports `Embedded` debug info. Use empty flags for
the other formats.
Without this fix, enabling the `ASM_MASM` language with policy `CMP0141`
set to `NEW` causes an error due to the missing table entries.
Fixes: #24249
-rw-r--r-- | Modules/CMakeASM_MASMInformation.cmake | 4 | ||||
-rw-r--r-- | Tests/VSMASM/CMakeLists.txt | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/Modules/CMakeASM_MASMInformation.cmake b/Modules/CMakeASM_MASMInformation.cmake index 656b75e..11b83662 100644 --- a/Modules/CMakeASM_MASMInformation.cmake +++ b/Modules/CMakeASM_MASMInformation.cmake @@ -16,5 +16,9 @@ set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_MultiThreadedDL set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_MultiThreadedDebug "") set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_MultiThreadedDebugDLL "") +set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_DEBUG_INFORMATION_FORMAT_Embedded "-Zi") +set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_DEBUG_INFORMATION_FORMAT_ProgramDatabase "") +set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OPTIONS_MSVC_DEBUG_INFORMATION_FORMAT_EditAndContinue "") + include(CMakeASMInformation) set(ASM_DIALECT) diff --git a/Tests/VSMASM/CMakeLists.txt b/Tests/VSMASM/CMakeLists.txt index 2923e15..603a43b 100644 --- a/Tests/VSMASM/CMakeLists.txt +++ b/Tests/VSMASM/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8.12) +cmake_minimum_required(VERSION 3.25) # Enable CMP0141 project(VSMASM C ASM_MASM) if(CMAKE_SIZEOF_VOID_P EQUAL 8) add_definitions(-DTESTx64) |