Files
haikuports/kde-frameworks/kdoctools/kdoctools6-6.25.0.recipe
2026-04-14 06:25:26 +00:00

118 lines
3.1 KiB
Bash

SUMMARY="Create documentation from DocBook"
DESCRIPTION="Provides tools to generate documentation in various format from DocBook files."
HOMEPAGE="https://invent.kde.org/frameworks/kdoctools"
COPYRIGHT="2010-2026 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/frameworks/${portVersion%.*}/kdoctools-${portVersion}.tar.xz"
CHECKSUM_SHA256="2c5866257edda20f33c35f64a8bcab08de3dddb4e751bbbc2e09e941df979918"
SOURCE_DIR="kdoctools-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
kdoctools6$secondaryArchSuffix = $portVersion
cmd:checkXML6$secondaryArchSuffix = $portVersion
cmd:meinproc6$secondaryArchSuffix = $portVersion
lib:libKF6DocTools$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libexslt$secondaryArchSuffix
lib:libKF6Archive$secondaryArchSuffix
lib:libQt6Core$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libxslt$secondaryArchSuffix
"
PROVIDES_devel="
kdoctools6${secondaryArchSuffix}_devel = $portVersion
devel:libKF6DocTools$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
kdoctools6$secondaryArchSuffix == $portVersion base
"
ARCHITECTURES_doc="any"
PROVIDES_doc="
kdoctools6_doc = $portVersion
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
docbook_xml_dtd
docbook_xsl_stylesheets >= 1.79.2
extra_cmake_modules$secondaryArchSuffix >= $portVersion
# qt6_doc$secondaryArchSuffix
qt6_tools${secondaryArchSuffix}_devel
uri
devel:libKF6archive$secondaryArchSuffix >= $libVersion
# devel:libKF6i18n$secondaryArchSuffix >= $portVersion # breaks the build
devel:libQt6Core$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libxslt$secondaryArchSuffix
"
BUILD_PREREQUIRES="
kde_qdoc_common
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
# cmd:msgfmt$secondaryArchSuffix
# cmd:msgmerge$secondaryArchSuffix
cmd:perl
cmd:pkg_config$secondaryArchSuffix
"
PATCH()
{
# disable docs generation until libxml package is fixed
sed -e 's/add/#add/g' -i $sourceDir/docs/CMakeLists.txt
}
BUILD()
{
export KDE_DOCS="`finddir B_SYSTEM_DATA_DIRECTORY`"/kde-qdoc-common
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \
$cmakeDirArgs \
-DDocBookXSL_DIR=/system/data/xml/docbook/xsl-stylesheets-1.79.2 \
-DDocBookXML4_DTD_DIR=/system/data/xml/docbook/xml-dtd-4.5 \
-DCMAKE_SKIP_RPATH=YES \
-DBUILD_TESTING=OFF \
-Wno-dev
make -C build $jobArgs
cmake --build build --target prepare_docs
cmake --build build --target generate_docs
cmake --build build --target generate_qch
}
INSTALL()
{
make -C build install
# cmake --build build --target install_html_docs
cmake --build build --target install_qch_docs
prepareInstalledDevelLib \
libKF6DocTools
packageEntries devel \
$developDir \
$libDir/cmake
packageEntries doc \
$documentationDir
}
TEST()
{
# 0% tests passed, 2 tests failed out of 2
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
ctest --test-dir build --output-on-failure
}