diff options
author | Michal Klocek <michal.klocek@qt.io> | 2021-07-08 17:29:11 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@qt.io> | 2021-07-20 23:50:19 +0200 |
commit | b3031066d17ef01802a4c9752f87675d6a4a1df5 (patch) | |
tree | f2719b63b300020042fad5845b3534f3cf9bcc4a /src/host | |
parent | 8deed53fcd8937b46cabd19eaf14e6176ef5436b (diff) | |
download | qtwebengine-b3031066d17ef01802a4c9752f87675d6a4a1df5.tar.gz |
Refactor cmake build
Add macros to share common cmake code blocks
with QtPdf. Reconsider later to do proper scoping
and change those to functions if make sense.
Pick-to: 6.2
Change-Id: I500acdba1415feab373a012dcf9a9ddedf33cfac
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/host')
-rw-r--r-- | src/host/BUILD.toolchain.gn.in | 17 | ||||
-rw-r--r-- | src/host/CMakeLists.txt | 38 |
2 files changed, 55 insertions, 0 deletions
diff --git a/src/host/BUILD.toolchain.gn.in b/src/host/BUILD.toolchain.gn.in new file mode 100644 index 000000000..c1bf3845b --- /dev/null +++ b/src/host/BUILD.toolchain.gn.in @@ -0,0 +1,17 @@ +import("//build/config/sysroot.gni") +import("//build/toolchain/gcc_toolchain.gni") +gcc_toolchain("@GN_TOOLCHAIN@") { + cc = "@CMAKE_C_COMPILER@" + cxx = "@CMAKE_CXX_COMPILER@" + ld = "@CMAKE_CXX_COMPILER@" + ar = "@CMAKE_AR@" + nm = "@CMAKE_NM@" + extra_cppflags = "" + toolchain_args = { + current_os = "linux" + current_cpu = "@GN_CPU@" + v8_current_cpu = "@GN_V8_CPU@" + is_clang = false + use_gold = false + } +} diff --git a/src/host/CMakeLists.txt b/src/host/CMakeLists.txt new file mode 100644 index 000000000..86249d74c --- /dev/null +++ b/src/host/CMakeLists.txt @@ -0,0 +1,38 @@ +cmake_minimum_required(VERSION 3.19) + +if(NOT DEFINED WEBENGINE_ROOT_SOURCE_DIR) + get_filename_component(WEBENGINE_ROOT_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/../.." REALPATH) +endif() +if (NOT DEFINED WEBENGINE_ROOT_BUILD_DIR) + get_filename_component(WEBENGINE_ROOT_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/../.." REALPATH) +endif() + +include(${WEBENGINE_ROOT_SOURCE_DIR}/.cmake.conf) +include(${WEBENGINE_ROOT_SOURCE_DIR}/cmake/Functions.cmake) + +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${WEBENGINE_ROOT_SOURCE_DIR}/cmake") + +project(QtWebEngineConfigure + VERSION "${QT_REPO_MODULE_VERSION}" + LANGUAGES CXX C) + +find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) + +set(buildDir ${CMAKE_CURRENT_BINARY_DIR}) +configure_gn_toolchain(host ${TEST_architecture_arch} ${TEST_architecture_arch} + ${WEBENGINE_ROOT_SOURCE_DIR}/src/host/BUILD.toolchain.gn.in + ${buildDir}/host_toolchain +) +get_v8_arch(GN_V8_HOST_CPU ${GN_TARGET_CPU}) +configure_gn_toolchain(v8 ${GN_V8_HOST_CPU} ${GN_TARGET_CPU} + ${WEBENGINE_ROOT_SOURCE_DIR}/src/host/BUILD.toolchain.gn.in + ${buildDir}/v8_toolchain) + +if(QT_FEATURE_qtwebengine_build) + install(FILES ${buildDir}/host_toolchain/BUILD.gn + DESTINATION ${WEBENGINE_ROOT_BUILD_DIR}/src/core/host_toolchain + ) + install(FILES ${buildDir}/v8_toolchain/BUILD.gn + DESTINATION ${WEBENGINE_ROOT_BUILD_DIR}/src/core/v8_toolchain + ) +endif() |