summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2023-03-28 10:46:05 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-03-29 01:25:12 +0000
commite30817a0544311b043fc5b40f0652c4b7dd4e2d3 (patch)
treef73c8fdc9a6e23f395f10d2b19484b8bebed646a
parent239cef0bb84c6f0f9ebd176071ee60f738713ca4 (diff)
downloadqtwebengine-e30817a0544311b043fc5b40f0652c4b7dd4e2d3.tar.gz
Add gn target to code attributions generator
Use gn_target for code attributions generation. Task-number: QTBUG-88482 Change-Id: I4e5d063dec2347c10eb715a467bdd376e39e60af Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 51fa03ce5936d5461e99cc6b3e9c6ea641c54f40) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--cmake/Functions.cmake25
-rw-r--r--src/core/api/CMakeLists.txt25
2 files changed, 37 insertions, 13 deletions
diff --git a/cmake/Functions.cmake b/cmake/Functions.cmake
index d3f8862ce..8c666a7ac 100644
--- a/cmake/Functions.cmake
+++ b/cmake/Functions.cmake
@@ -1325,3 +1325,28 @@ function(add_build feature value)
set(depTracker "${depTracker}" ${feature})
set_property(GLOBAL PROPERTY MATRIX_DEPENDENCY_TRACKER "${depTracker}")
endfunction()
+
+function(add_code_attributions_target)
+ cmake_parse_arguments(PARSE_ARGV 0 arg ""
+ "TARGET;OUTPUT;GN_TARGET;FILE_TEMPLATE;ENTRY_TEMPLATE;BUILDDIR" ""
+ )
+ _qt_internal_validate_all_args_are_parsed(arg)
+ get_filename_component(fileTemplate ${arg_FILE_TEMPLATE} ABSOLUTE)
+ get_filename_component(entryTemplate ${arg_ENTRY_TEMPLATE} ABSOLUTE)
+ add_custom_command(
+ OUTPUT ${arg_OUTPUT}
+ COMMAND ${Python3_EXECUTABLE} ${WEBENGINE_ROOT_SOURCE_DIR}/src/3rdparty/chromium/tools/licenses.py
+ --file-template ${fileTemplate}
+ --entry-template ${entryTemplate}
+ --gn-binary ${Gn_EXECUTABLE}
+ --gn-target ${arg_GN_TARGET} --gn-out-dir ${arg_BUILDDIR}
+ credits ${arg_OUTPUT}
+ WORKING_DIRECTORY ${arg_BUILDDIR}
+ DEPENDS
+ ${WEBENGINE_ROOT_SOURCE_DIR}/src/3rdparty/chromium/tools/licenses.py
+ ${arg_FILE_TEMPLATE}
+ ${arg_ENTRY_TEMPLATE}
+ USES_TERMINAL
+ )
+ add_custom_target(${arg_TARGET} DEPENDS ${arg_OUTPUT})
+endfunction()
diff --git a/src/core/api/CMakeLists.txt b/src/core/api/CMakeLists.txt
index d4125b476..f452656d3 100644
--- a/src/core/api/CMakeLists.txt
+++ b/src/core/api/CMakeLists.txt
@@ -74,6 +74,10 @@ qt_internal_extend_target(WebEngineCore CONDITION QT_FEATURE_webengine_geolocati
Qt::Positioning
)
+get_install_config(config)
+get_architectures(archs)
+list(GET archs 0 arch)
+
##
# DOCS
##
@@ -82,17 +86,14 @@ qt_internal_add_docs(WebEngineCore
../doc/qtwebengine.qdocconf
)
-add_custom_command(
- OUTPUT chromium_attributions.qdoc
- COMMAND ${Python3_EXECUTABLE} chromium/tools/licenses.py
- --file-template ../core/doc/about_credits.tmpl
- --entry-template ../core/doc/about_credits_entry.tmpl
- credits ${CMAKE_CURRENT_BINARY_DIR}/chromium_attributions.qdoc
- DEPENDS ../doc/about_credits.tmpl ../doc/about_credits_entry.tmpl
- WORKING_DIRECTORY ${WEBENGINE_ROOT_SOURCE_DIR}/src/3rdparty
- USES_TERMINAL
+add_code_attributions_target(
+ TARGET generate_chromium_attributions
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/chromium_attributions.qdoc
+ GN_TARGET :QtWebEngineCore
+ FILE_TEMPLATE ../doc/about_credits.tmpl
+ ENTRY_TEMPLATE ../doc/about_credits_entry.tmpl
+ BUILDDIR ${buildDir}/${config}/${arch}
)
-add_custom_target(generate_chromium_attributions DEPENDS chromium_attributions.qdoc)
add_dependencies(docs generate_chromium_attributions)
##
@@ -109,9 +110,7 @@ set(resourceList qtwebengine_resources.pak
qtwebengine_resources_200p.pak
qtwebengine_devtools_resources.pak)
-get_install_config(config)
-get_architectures(archs)
-list(GET archs 0 arch)
+
foreach(loc ${localeList})
get_filename_component(locSourcePath ${buildDir}/${config}/${arch}/qtwebengine_locales/${loc}.pak REALPATH)