diff options
author | Peter Varga <pvarga@inf.u-szeged.hu> | 2022-06-16 10:35:51 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-06-21 22:59:20 +0000 |
commit | 965348f12d6c911427fee701bc9461f9d60162b2 (patch) | |
tree | b5cffed33f57d71f3fd065391423c8b263f8de14 /src | |
parent | e2cc337c29d73368be82a14a12cadcbe1eb82c2b (diff) |
Fix build of gn with clang-cl on Windows
clang-cl 14 does not support /MACHINE and /PDB flags for linking.
Use lld-link instead.
Change-Id: I018a18af494f115be252b65b24a1386f57af28bd
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
(cherry picked from commit b3bc7d00a190afc84e94425eacb7608512e76fa9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/gn/CMakeLists.txt | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gn/CMakeLists.txt b/src/gn/CMakeLists.txt index 37665465d..5e20b26f7 100644 --- a/src/gn/CMakeLists.txt +++ b/src/gn/CMakeLists.txt @@ -15,6 +15,7 @@ include(${WEBENGINE_ROOT_SOURCE_DIR}/.cmake.conf) set(GN_SOURCE_DIR ${WEBENGINE_ROOT_SOURCE_DIR}/src/3rdparty/gn) set(GN_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}) +set(GN_LINKER ${CMAKE_CXX_COMPILER}) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${WEBENGINE_ROOT_SOURCE_DIR}/cmake") find_package(Python3 REQUIRED) @@ -22,6 +23,10 @@ find_package(Ninja 1.7.2 REQUIRED) if(WIN32) set(GN_EXECUTABLE gn.exe) + if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + # Use lld-link instead of clang-cl. + set(GN_LINKER ${CMAKE_LINKER}) + endif() else() set(GN_EXECUTABLE gn) endif() @@ -35,7 +40,7 @@ add_custom_command( --out-path ${GN_BINARY_DIR}/$<CONFIG> --cc ${CMAKE_C_COMPILER} --cxx ${CMAKE_CXX_COMPILER} - --ld ${CMAKE_CXX_COMPILER} + --ld ${GN_LINKER} --ar ${CMAKE_AR} --qt-version "${QT_REPO_MODULE_VERSION}.qtwebengine.qt.io" $<$<PLATFORM_ID:Darwin>:--isysroot> |