From 83dbe0af2004a730d663e74914d02089ac81300d Mon Sep 17 00:00:00 2001 From: Li Xinwei <1326710505@qq.com> Date: Tue, 20 Apr 2021 14:46:20 +0800 Subject: [PATCH] MSVC: define _CRT_SECURE_NO_WARNINGS for all internal CMake targets In commit 013abe320680b3dcd3f6d7e4fb4880e590ba10e6, I add _CRT_SECURE_NO_WARNINGS definition for all Qt internal module targets, to suppress MSVC warnings like: warning C4996: 'strncpy': This function or variable may be unsafe. However, when compiling some internal tools, such as qmake and qdoc, such warnings also exist. To suppress this kind of warning entirely, _CRT_SECURE_NO_WARNINGS definition should be added for all Qt internal targets when using MSVC compiler. Change-Id: I9c37b20672f9d0f470e3e9ea847e5221f43bfc04 Reviewed-by: Yuhang Zhao <2546789017@qq.com> Reviewed-by: Joerg Bornemann (cherry picked from commit c7a27678d6916a51848c991fb3ee21acc6a6f8ca) Reviewed-by: Qt Cherry-pick Bot --- cmake/QtInternalTargets.cmake | 1 + cmake/QtModuleHelpers.cmake | 4 ---- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/cmake/QtInternalTargets.cmake b/cmake/QtInternalTargets.cmake index 97386e22d84..7bbedcc1494 100644 --- a/cmake/QtInternalTargets.cmake +++ b/cmake/QtInternalTargets.cmake @@ -151,6 +151,7 @@ if(WIN32) target_compile_definitions(PlatformCommonInternal INTERFACE "UNICODE;_UNICODE") if(MSVC) target_compile_definitions(PlatformCommonInternal INTERFACE + "_CRT_SECURE_NO_WARNINGS" "$<$,SHARED_LIBRARY>:_WINDLL>" ) endif() diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake index 3952166fe20..f9af1758d2c 100644 --- a/cmake/QtModuleHelpers.cmake +++ b/cmake/QtModuleHelpers.cmake @@ -357,10 +357,6 @@ function(qt_internal_add_module target) ) endif() - if(MSVC) - list(APPEND defines_for_extend_target _CRT_SECURE_NO_WARNINGS) - endif() - qt_internal_extend_target("${target}" ${header_module} SOURCES ${arg_SOURCES}