diff options
author | Brad King <brad.king@kitware.com> | 2022-11-16 13:56:55 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2022-11-16 13:57:04 (GMT) |
commit | b686b582089b7351feedaabe648b0a61de929978 (patch) | |
tree | eba5ca432a1c391a301a23bda23833ca5111d6e6 | |
parent | b7ab39bf59c1b68140f1884676a2cfdaee2f7b41 (diff) | |
parent | 94164ea55e3a24274088afd23ad9018aa04b1c50 (diff) | |
download | CMake-b686b582089b7351feedaabe648b0a61de929978.zip CMake-b686b582089b7351feedaabe648b0a61de929978.tar.gz CMake-b686b582089b7351feedaabe648b0a61de929978.tar.bz2 |
Merge topic 'cmp0141-pch-reuse'
94164ea55e CMP0141: Fix PCH REUSE_FROM when MSVC_DEBUG_INFORMATION_FORMAT is empty
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7914
-rw-r--r-- | Source/cmLocalGenerator.cxx | 6 | ||||
-rw-r--r-- | Tests/RunCMake/PrecompileHeaders/PchReuseFrom-CMP0141-NEW-empty.cmake | 4 | ||||
-rw-r--r-- | Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 31c6504..9745142 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2677,8 +2677,10 @@ void cmLocalGenerator::AddPchDependencies(cmGeneratorTarget* target) bool editAndContinueDebugInfo = false; bool programDatabaseDebugInfo = false; - if (cm::optional<std::string> msvcDebugInformationFormat = - this->GetMSVCDebugFormatName(config, target)) { + cm::optional<std::string> msvcDebugInformationFormat = + this->GetMSVCDebugFormatName(config, target); + if (msvcDebugInformationFormat && + !msvcDebugInformationFormat->empty()) { editAndContinueDebugInfo = *msvcDebugInformationFormat == "EditAndContinue"; programDatabaseDebugInfo = diff --git a/Tests/RunCMake/PrecompileHeaders/PchReuseFrom-CMP0141-NEW-empty.cmake b/Tests/RunCMake/PrecompileHeaders/PchReuseFrom-CMP0141-NEW-empty.cmake new file mode 100644 index 0000000..41c7d22 --- /dev/null +++ b/Tests/RunCMake/PrecompileHeaders/PchReuseFrom-CMP0141-NEW-empty.cmake @@ -0,0 +1,4 @@ +cmake_policy(SET CMP0141 NEW) +set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "") +string(APPEND CMAKE_C_FLAGS_DEBUG_INIT " -Zi") +include(PchReuseFrom-common.cmake) diff --git a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake index 687fc0e..b163369 100644 --- a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake +++ b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake @@ -17,6 +17,9 @@ run_test(SkipPrecompileHeaders) run_test(CXXnotC) run_test(PchReuseFrom-CMP0141-OLD) run_test(PchReuseFrom-CMP0141-NEW) +if(CMAKE_C_COMPILER_ID STREQUAL "MSVC") + run_test(PchReuseFrom-CMP0141-NEW-empty) +endif() run_test(PchReuseFromPrefixed) run_test(PchReuseFromSubdir) run_cmake(PchMultilanguage) |