Files
haikuports/dev-util/gtk_doc/gtk_doc-1.33.2.recipe
2023-12-09 08:11:03 +01:00

126 lines
2.8 KiB
Bash

SUMMARY="Generate documentation from C sources"
DESCRIPTION="GTK-Doc is a project which was started to generate API \
documentation from comments added to C code. It is typically used to \
document the public API of GTK+ and GNOME libraries, but it can also \
be used to document application code."
HOMEPAGE="https://www.gtk.org/gtk-doc/"
COPYRIGHT="2002-2018 Damon Chaplin and Owen Taylor"
LICENSE="GNU GPL v2"
REVISION="5"
SOURCE_URI="https://download.gnome.org/sources/gtk-doc/${portVersion%.*}/gtk-doc-$portVersion.tar.xz"
CHECKSUM_SHA256="cc1b709a20eb030a278a1f9842a362e00402b7f834ae1df4c1998a723152bf43"
SOURCE_DIR="gtk-doc-$portVersion"
ARCHITECTURES="any"
pyVersion="3.10"
pyPackage="python310"
PROVIDES="
gtk_doc = $portVersion
cmd:gtkdoc_check
cmd:gtkdoc_depscan
cmd:gtkdoc_fixxref
cmd:gtkdoc_mkdb
cmd:gtkdoc_mkhtml
cmd:gtkdoc_mkhtml2
cmd:gtkdoc_mkman
cmd:gtkdoc_mkpdf
cmd:gtkdoc_rebase
cmd:gtkdoc_scan
cmd:gtkdoc_scangobj
cmd:gtkdocize
"
REQUIRES="
haiku
pygments_$pyPackage
six_$pyPackage
cmd:perl
cmd:pkg_config
cmd:python$pyVersion
cmd:xsltproc
docbook_xsl_stylesheets
"
BUILD_REQUIRES="
haiku_devel
docbook_xml_dtd
docbook_xsl_stylesheets
pygments_$pyPackage
"
BUILD_PREREQUIRES="
cmd:awk
cmd:cmake
cmd:gcc
cmd:itstool
cmd:meson
cmd:msgfmt
cmd:perl
cmd:pkg_config
cmd:python$pyVersion
cmd:xsltproc
"
TEST_REQUIRES="
lxml_$pyPackage
parameterized_$pyPackage
six_$pyPackage
cmd:bc
cmd:xmllint
"
if [ $targetArchitecture = x86_gcc2 ]; then
TEST_REQUIRES+="
devel:libglib_2.0_x86
cmd:pkg_config_x86
"
else
TEST_REQUIRES+="
devel:libglib_2.0
"
fi
BUILD()
{
# Generate an XML catalog that includes both the Docbook-XML and Docbook-XSL
# ones. Linux distros populate a global catalog file using post-install
# scripts in the docbook packages, but we don't have that yet.
echo "<!DOCTYPE catalog
PUBLIC \"-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN\"
\"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd\">
<catalog xmlns=\"urn:oasis:names:tc:entity:xmlns:xml:catalog\"
prefer=\"public\">
" > xmlcat
for i in /system/data/xml/catalog/*
do
echo " <nextCatalog catalog=\"file://$i\"/>" >> xmlcat
done
echo "</catalog>" >> xmlcat
unset meson
meson setup build --buildtype=release \
--prefix="$prefix" --libdir="$libDir" --includedir="$includeDir" \
--datadir=$dataDir --bindir=$binDir -Dtests=false
meson compile -C build
}
INSTALL()
{
unset meson
meson install -C build
}
TEST()
{
if [ $targetArchitecture = x86_gcc2 ]; then
export PKG_CONFIG=pkg-config-x86
fi
unset meson
meson setup build_test --buildtype=release \
--prefix="$prefix" --libdir="$libDir" --includedir="$includeDir" \
--datadir=$dataDir --bindir=$binDir
meson compile -C build_test
PATH="$sourceDir:$PATH" meson test -C build_test
}