Fix Clang platform detecting mechanism
CMake not necessarly sets MSVC or MINGW when detecting Clang compiler. We should rely on CMAKE_CXX_COMPILER_FRONTEND_VARIANT instead when detecting Clang platform. Fixes: QTBUG-113630 Change-Id: I8c14939ddc0839ddf2b3419392aa843deeef4bb5 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 5cf79c2b9b196b3915d8babc46724f400806e64e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
dddaed1e30
commit
22af26890f
@ -269,21 +269,21 @@ if(WIN32)
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
list(APPEND QT_DEFAULT_PLATFORM_DEFINITIONS WIN64 _WIN64)
|
||||
endif()
|
||||
if(MSVC)
|
||||
if (CLANG)
|
||||
|
||||
if(CLANG)
|
||||
if(CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC" OR MSVC)
|
||||
set(QT_DEFAULT_MKSPEC win32-clang-msvc)
|
||||
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
|
||||
elseif(CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU" OR MINGW)
|
||||
set(QT_DEFAULT_MKSPEC win32-clang-g++)
|
||||
endif()
|
||||
elseif(MSVC)
|
||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
|
||||
set(QT_DEFAULT_MKSPEC win32-arm64-msvc)
|
||||
else()
|
||||
set(QT_DEFAULT_MKSPEC win32-msvc)
|
||||
endif()
|
||||
elseif(CLANG AND MINGW)
|
||||
set(QT_DEFAULT_MKSPEC win32-clang-g++)
|
||||
elseif(MINGW)
|
||||
set(QT_DEFAULT_MKSPEC win32-g++)
|
||||
endif()
|
||||
|
||||
if (MINGW)
|
||||
list(APPEND QT_DEFAULT_PLATFORM_DEFINITIONS MINGW_HAS_SECURE_API=1)
|
||||
endif()
|
||||
elseif(LINUX)
|
||||
|
Loading…
x
Reference in New Issue
Block a user