Merge pull request #9555 from MehdiChinoune/qt6-doc
[new-package] qt6-doc 6.1.3
This commit is contained in:
15
mingw-w64-qt6-base/002-fix-qtdocs-helpers-cmake.patch
Normal file
15
mingw-w64-qt6-base/002-fix-qtdocs-helpers-cmake.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
--- a/cmake/QtDocsHelpers.cmake
|
||||
+++ b/cmake/QtDocsHelpers.cmake
|
||||
@@ -37,9 +37,9 @@
|
||||
set(doc_tools_dir "${QT_BUILD_INTERNALS_RELOCATABLE_INSTALL_PREFIX}/${INSTALL_BINDIR}")
|
||||
endif()
|
||||
|
||||
- set(qdoc_bin "${doc_tools_dir}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
- set(qtattributionsscanner_bin "${doc_tools_dir}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
- set(qhelpgenerator_bin "${doc_tools_dir}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qdoc_bin "${doc_tools_dir}/qdoc-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qtattributionsscanner_bin "${doc_tools_dir}/qtattributionsscanner-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qhelpgenerator_bin "${doc_tools_dir}/qhelpgenerator-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
|
||||
get_target_property(target_type ${target} TYPE)
|
||||
if (NOT target_type STREQUAL "INTERFACE_LIBRARY")
|
||||
@@ -6,7 +6,7 @@ pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
"${MINGW_PACKAGE_PREFIX}-${_realname}-debug")
|
||||
_qtver=6.1.3
|
||||
pkgver=${_qtver/-/}
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
arch=(any)
|
||||
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
|
||||
url='https://www.qt.io'
|
||||
@@ -35,9 +35,11 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"rsync")
|
||||
_pkgfn="${_realname/6-/}-everywhere-src-${_qtver}"
|
||||
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz"
|
||||
001-appending-qt6-to-remove-qt5-conflict.patch)
|
||||
001-appending-qt6-to-remove-qt5-conflict.patch
|
||||
002-fix-qtdocs-helpers-cmake.patch)
|
||||
sha256sums=('1e9abb2ea4daa0fd11f46fc871d9e896b916e1b7130fed74c83d66221bb4fe78'
|
||||
'76c1af04c635f683b0ef314ead96d71ab6f54a28d4572a65087debbbc484ef54')
|
||||
'76c1af04c635f683b0ef314ead96d71ab6f54a28d4572a65087debbbc484ef54'
|
||||
'ac6dae470b0e8e65e4e86b67bcf9486810dd35247a41fbfdac92800de0261151')
|
||||
|
||||
# Helper macros to help make tasks easier #
|
||||
apply_patch_with_msg() {
|
||||
@@ -52,7 +54,8 @@ prepare() {
|
||||
cd $srcdir/${_pkgfn}
|
||||
|
||||
apply_patch_with_msg \
|
||||
001-appending-qt6-to-remove-qt5-conflict.patch
|
||||
001-appending-qt6-to-remove-qt5-conflict.patch \
|
||||
002-fix-qtdocs-helpers-cmake.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
||||
109
mingw-w64-qt6-doc/001-qt6-doc-bindir.patch
Normal file
109
mingw-w64-qt6-doc/001-qt6-doc-bindir.patch
Normal file
@@ -0,0 +1,109 @@
|
||||
From 582fdf06d179ee17ff68c67fb2f55ac10b7b6e4a Mon Sep 17 00:00:00 2001
|
||||
From: Joerg Bornemann <joerg.bornemann@qt.io>
|
||||
Date: Wed, 28 Apr 2021 09:23:59 +0200
|
||||
Subject: Make a documentation-only build possible
|
||||
|
||||
Packagers usually build Qt per repo, but the documentation must be built
|
||||
from the full Qt source archive to ensure that inter-repo links are set
|
||||
up correctly. When building the documentation, it's desirable to avoid
|
||||
building tools and re-use to tools of an existing Qt build.
|
||||
|
||||
One now can do a documentation-only build by configuring Qt like this:
|
||||
|
||||
cmake /path/to/Qt/source -GNinja \
|
||||
-DQT_HOST_PATH=/path/to/Qt/installation
|
||||
|
||||
and build the documentation with
|
||||
|
||||
ninja docs
|
||||
|
||||
To avoid building tools, this patch removes the DEPENDS arguments from
|
||||
some add_custom_target calls in QtDocsHelpers.cmake and makes another
|
||||
one conditional. The removed dependencies are added at the end of
|
||||
qt_internal_add_docs. Adding of tool dependencies is not done if
|
||||
QT_HOST_PATH is set.
|
||||
|
||||
Fixes: QTBUG-88441
|
||||
Change-Id: I3b7a908e22d252d2edcdc1dd522a78b8ad6c487e
|
||||
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
||||
---
|
||||
cmake/QtDocsHelpers.cmake | 28 ++++++++++++++++++++--------
|
||||
1 file changed, 20 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/cmake/QtDocsHelpers.cmake b/cmake/QtDocsHelpers.cmake
|
||||
index 593a72c90e..e2f75db213 100644
|
||||
--- a/cmake/QtDocsHelpers.cmake
|
||||
+++ b/cmake/QtDocsHelpers.cmake
|
||||
@@ -31,7 +31,11 @@ function(qt_internal_add_docs)
|
||||
return()
|
||||
endif()
|
||||
|
||||
- if(QT_SUPERBUILD)
|
||||
+ set(tool_dependencies_enabled TRUE)
|
||||
+ if(NOT "${QT_HOST_PATH}" STREQUAL "")
|
||||
+ set(tool_dependencies_enabled FALSE)
|
||||
+ set(doc_tools_dir "${QT_HOST_PATH}/${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_BINDIR}")
|
||||
+ elseif(QT_SUPERBUILD)
|
||||
set(doc_tools_dir "${QtBase_BINARY_DIR}/${INSTALL_BINDIR}")
|
||||
else()
|
||||
set(doc_tools_dir "${QT_BUILD_INTERNALS_RELOCATABLE_INSTALL_PREFIX}/${INSTALL_BINDIR}")
|
||||
@@ -85,7 +89,6 @@ function(qt_internal_add_docs)
|
||||
|
||||
# qtattributionsscanner
|
||||
add_custom_target(qattributionsscanner_${target}
|
||||
- DEPENDS ${qattributionsscanner_bin}
|
||||
COMMAND ${qtattributionsscanner_bin}
|
||||
${PROJECT_SOURCE_DIR}
|
||||
--filter "QDocModule=${doc_target}"
|
||||
@@ -120,7 +123,6 @@ function(qt_internal_add_docs)
|
||||
)
|
||||
|
||||
add_custom_target(prepare_docs_${target}
|
||||
- DEPENDS ${qdoc_bin}
|
||||
COMMAND ${CMAKE_COMMAND} -E env ${qdoc_env_args}
|
||||
${qdoc_bin}
|
||||
${prepare_qdoc_args}
|
||||
@@ -139,8 +141,12 @@ function(qt_internal_add_docs)
|
||||
)
|
||||
|
||||
foreach(target_prefix generate_top_level_docs generate_repo_docs generate_docs)
|
||||
+ set(depends_arg "")
|
||||
+ if(tool_dependencies_enabled)
|
||||
+ set(depends_arg DEPENDS ${qdoc_bin})
|
||||
+ endif()
|
||||
add_custom_target(${target_prefix}_${target}
|
||||
- DEPENDS ${qdoc_bin}
|
||||
+ ${depends_arg}
|
||||
COMMAND ${CMAKE_COMMAND} -E env ${qdoc_env_args} ${qdoc_bin} ${generate_qdocs_args})
|
||||
endforeach()
|
||||
|
||||
@@ -158,8 +164,12 @@ function(qt_internal_add_docs)
|
||||
set(qch_file_path ${qdoc_qch_output_dir}/${qch_file_name})
|
||||
|
||||
foreach(target_prefix qch_top_level_docs qch_repo_docs qch_docs)
|
||||
+ set(depends_arg "")
|
||||
+ if(tool_dependencies_enabled)
|
||||
+ set(depends_arg DEPENDS ${qhelpgenerator_bin})
|
||||
+ endif()
|
||||
add_custom_target(${target_prefix}_${target}
|
||||
- DEPENDS ${qhelpgenerator_bin}
|
||||
+ ${depends_arg}
|
||||
COMMAND ${qhelpgenerator_bin}
|
||||
"${qdoc_output_dir}/${doc_target}.qhp"
|
||||
-o "${qch_file_path}"
|
||||
@@ -218,7 +228,9 @@ function(qt_internal_add_docs)
|
||||
|
||||
# Make sure that the necessary tools are built when running,
|
||||
# for example 'cmake --build . --target generate_docs'.
|
||||
- qt_internal_add_doc_tool_dependency(qattributionsscanner_${target} qtattributionsscanner)
|
||||
- qt_internal_add_doc_tool_dependency(prepare_docs_${target} qdoc)
|
||||
- qt_internal_add_doc_tool_dependency(qch_docs_${target} qhelpgenerator)
|
||||
+ if(tool_dependencies_enabled)
|
||||
+ qt_internal_add_doc_tool_dependency(qattributionsscanner_${target} qtattributionsscanner)
|
||||
+ qt_internal_add_doc_tool_dependency(prepare_docs_${target} qdoc)
|
||||
+ qt_internal_add_doc_tool_dependency(qch_docs_${target} qhelpgenerator)
|
||||
+ endif()
|
||||
endfunction()
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
||||
15
mingw-w64-qt6-doc/002-fix-qtdocs-helpers-cmake.patch
Normal file
15
mingw-w64-qt6-doc/002-fix-qtdocs-helpers-cmake.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
--- a/cmake/QtDocsHelpers.cmake
|
||||
+++ b/cmake/QtDocsHelpers.cmake
|
||||
@@ -37,9 +37,9 @@
|
||||
set(doc_tools_dir "${QT_BUILD_INTERNALS_RELOCATABLE_INSTALL_PREFIX}/${INSTALL_BINDIR}")
|
||||
endif()
|
||||
|
||||
- set(qdoc_bin "${doc_tools_dir}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
- set(qtattributionsscanner_bin "${doc_tools_dir}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
- set(qhelpgenerator_bin "${doc_tools_dir}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qdoc_bin "${doc_tools_dir}/qdoc-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qtattributionsscanner_bin "${doc_tools_dir}/qtattributionsscanner-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
+ set(qhelpgenerator_bin "${doc_tools_dir}/qhelpgenerator-qt6${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
|
||||
get_target_property(target_type ${target} TYPE)
|
||||
if (NOT target_type STREQUAL "INTERFACE_LIBRARY")
|
||||
79
mingw-w64-qt6-doc/PKGBUILD
Normal file
79
mingw-w64-qt6-doc/PKGBUILD
Normal file
@@ -0,0 +1,79 @@
|
||||
# Contributor: Mehdi Chinoune <mehdi.chinoune@hotmail.com>
|
||||
|
||||
_realname=qt6-doc
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
|
||||
_qtver=6.1.3
|
||||
pkgver=${_qtver/-/}
|
||||
pkgrel=1
|
||||
arch=(any)
|
||||
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
|
||||
url='https://www.qt.io'
|
||||
license=(GPL3 LGPL3 FDL custom)
|
||||
pkgdesc='Classes for displaying the contents of SVG files (mingw-w64)'
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-qt6-base")
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-ninja"
|
||||
"${MINGW_PACKAGE_PREFIX}-qt6-tools"
|
||||
"${MINGW_PACKAGE_PREFIX}-clang"
|
||||
"${MINGW_PACKAGE_PREFIX}-clang-tools-extra"
|
||||
"${MINGW_PACKAGE_PREFIX}-polly"
|
||||
"${MINGW_PACKAGE_PREFIX}-vulkan-headers"
|
||||
"${MINGW_PACKAGE_PREFIX}-libmariadbclient"
|
||||
$( [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]] || echo "${MINGW_PACKAGE_PREFIX}-firebird2" )
|
||||
"${MINGW_PACKAGE_PREFIX}-postgresql")
|
||||
groups=(${MINGW_PACKAGE_PREFIX}-qt6)
|
||||
_pkgfn="qt-everywhere-src-${_qtver}"
|
||||
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/single/$_pkgfn.tar.xz"
|
||||
001-qt6-doc-bindir.patch
|
||||
002-fix-qtdocs-helpers-cmake.patch)
|
||||
sha256sums=('552342a81fa76967656b0301233b4b586d36967fad5cd110765347aebe07413c'
|
||||
'7ab018729ae933f7f4ba0a4783f8f66277c681aa9dd7657ecdf011120b56bda1'
|
||||
'ac6dae470b0e8e65e4e86b67bcf9486810dd35247a41fbfdac92800de0261151')
|
||||
|
||||
# Helper macros to help make tasks easier #
|
||||
apply_patch_with_msg() {
|
||||
for _patch in "$@"
|
||||
do
|
||||
msg2 "Applying ${_patch}"
|
||||
patch -Nbp1 -i "${srcdir}/${_patch}"
|
||||
done
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd $srcdir/${_pkgfn}
|
||||
|
||||
cd qtbase
|
||||
apply_patch_with_msg \
|
||||
001-qt6-doc-bindir.patch \
|
||||
002-fix-qtdocs-helpers-cmake.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
cd ${srcdir}
|
||||
[[ -d build-${MSYSTEM} ]] && rm -rf build-${MSYSTEM}
|
||||
mkdir -p build-${MSYSTEM} && cd build-${MSYSTEM}
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
cmake \
|
||||
-GNinja \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DQT_HOST_PATH=${MINGW_PREFIX} \
|
||||
-DINSTALL_INCLUDEDIR=include/qt6 \
|
||||
-DINSTALL_ARCHDATADIR=share/qt6 \
|
||||
-DINSTALL_DATADIR=share/qt6 \
|
||||
-DINSTALL_MKSPECSDIR=share/qt6/mkspecs \
|
||||
-DINSTALL_DESCRIPTIONSDIR=share/qt6/modules \
|
||||
-DINSTALL_DOCDIR=share/qt6/doc \
|
||||
../${_pkgfn}
|
||||
|
||||
cmake --build . --target docs
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR=${pkgdir} cmake --build build-${MSYSTEM} --target install_docs
|
||||
|
||||
install -d "$pkgdir${MINGW_PREFIX}"/share/licenses/${_realname}
|
||||
install -Dm644 $_pkgfn/LICENSE* -t "$pkgdir${MINGW_PREFIX}"/share/licenses/${_realname}
|
||||
}
|
||||
Reference in New Issue
Block a user