summaryrefslogtreecommitdiffstats
path: root/src/core/CMakeLists.txt
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2021-05-28 19:59:48 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-06-15 10:53:32 +0000
commite0979612a57d0a71c2b4f5d646547b5a5f6ab99c (patch)
tree4f01307f92341fb6e978773aef0998b9839fad90 /src/core/CMakeLists.txt
parentad036413b1044c802253a5843568048d22523ebf (diff)
Add spellchecker support and qwebengine_covert_dict to cmake
Add spellchecker dictionary conversion tool. Change scope of gn object imported variables to function scope. Change-Id: Ice579a89e20b80034b675e7f767a774100478472 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 9451ceee24e832d32a86ae6a2f37eea781acaa2f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/core/CMakeLists.txt')
-rw-r--r--src/core/CMakeLists.txt45
1 files changed, 21 insertions, 24 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 8dc6a8e9d..b5c30d3b9 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -14,6 +14,7 @@ include(${WEBENGINE_ROOT_SOURCE_DIR}/cmake/Functions.cmake)
assertRunAsTopLevelBuild(TRUE)
add_subdirectory(api)
+add_subdirectory(tools)
find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core)
find_package(Gn ${QT_REPO_MODULE_VERSION} EXACT REQUIRED)
@@ -528,7 +529,6 @@ foreach(config ${configs})
string(REGEX REPLACE "\n$" "" gnOutput "${gnOutput}")
message("-- GN ${gnOutput}")
endif()
- include(${buildDir}/${config}/QtWebEngineCore.cmake)
##
@@ -577,30 +577,10 @@ endif()
foreach(config ${configs})
- string(TOUPPER ${config} cfg)
-
- add_library(GnObjects_${config} OBJECT IMPORTED GLOBAL)
- target_link_libraries(WebEngineCore PRIVATE $<$<CONFIG:${config}>:GnObjects_${config}>)
- add_dependencies(GnObjects_${config} ninja_${config})
- #TODO: remove GnObjects_${config} with CMAKE 3.20
- set_property(TARGET GnObjects_${config} PROPERTY IMPORTED_OBJECTS_${cfg} ${${cfg}_NINJA_OBJECTS})
- set_source_files_properties(${${cfg}_NINJA_OBJECTS} PROPERTIES GENERATED TRUE)
-
- if(LINUX)
- target_link_libraries(WebEngineCore
- PRIVATE "-Wl,--start-group" "$<$<CONFIG:${config}>:${${cfg}_NINJA_ARCHIVES}>" "-Wl,--end-group")
- else()
- target_link_libraries(WebEngineCore PRIVATE "$<$<CONFIG:${config}>:${${cfg}_NINJA_ARCHIVES}>")
- endif()
-
- target_link_libraries(WebEngineCore PUBLIC "$<$<CONFIG:${config}>:${${cfg}_NINJA_LIBS}>")
-
- # we depend on WebEnigneCore stamp, but ninja backend generator needs more
- add_custom_command(OUTPUT ${${cfg}_NINJA_OBJECTS} ${${cfg}_NINJA_ARCHIVES}
- DEPENDS ${buildDir}/${config}/QtWebEngineCore.stamp)
- add_custom_target(generate_${cfg} DEPENDS ${${cfg}_NINJA_OBJECTS} ${${cfg}_NINJA_ARCHIVES})
+ extend_target_with_gn_objects(WebEngineCore ${config} QtWebEngineCore.cmake QtWebEngineCore.stamp)
if(WIN32)
+ string(TOUPPER ${config} cfg)
set(sandboxLibraryPath ${buildDir}/${config}/QtWebEngineCoreSandbox.lib)
set_property(TARGET WebEngineCoreSandbox
PROPERTY IMPORTED_LOCATION_${cfg} ${sandboxLibraryPath})
@@ -612,7 +592,7 @@ foreach(config ${configs})
endforeach()
##
-# RESOURCES
+# WEBENGINECORE RESOURCES
##
#TODO: use simply filter / globbing-expressions
@@ -712,3 +692,20 @@ else()
${CMAKE_INSTALL_PREFIX}/translations/qtwebengine_locales)
endif()
endif()
+
+##
+# WEBENGINECORE DICT TOOL SETUP
+##
+
+if(QT_FEATURE_webengine_spellchecker)
+ qt_get_tool_target_name(dict_target_name qwebengine_convert_dict)
+ target_include_directories(${dict_target_name} PRIVATE
+ ../3rdparty/chromium
+ ../3rdparty/chromium/third_party/boringssl/src/include
+ ${buildDir}/${config}/gen
+ )
+ foreach(config ${configs})
+ extend_target_with_gn_objects(${dict_target_name} ${config} convert_dict.cmake "")
+ endforeach()
+endif()
+