# $OpenBSD: Makefile,v 1.14 2021/05/22 05:20:11 rsadowski Exp $

COMMENT-html =		HTML documentation for Qt5
COMMENT-qch =		qdoc-compiled documentation for Qt5

PKGNAME =		qt5-docs-${QT5_VERSION}
PKGNAME-html =		qt5-html-${QT5_VERSION}
PKGNAME-qch =		qt5-qch-${QT5_VERSION}
REVISION-html =		0

MULTI_PACKAGES =	-html -qch
SUBPACKAGE ?=		-html

WANTLIB-qch =
WANTLIB-html =

DOC_COMPONENTS = \
		qt3d \
		qtcharts \
		qtdoc \
		qtgamepad \
		qtgraphicaleffects \
		qtimageformats \
		qtlocation \
		qtmultimedia \
		qtnetworkauth \
		qtpurchasing \
		qtremoteobjects \
		qtscript \
		qtscxml \
		qtsensors \
		qtserialbus \
		qtserialport \
		qtspeech \
		qtsvg \
		qtvirtualkeyboard \
		qtwebchannel \
		qtwebsockets \
		qtx11extras \
		qtxmlpatterns

DISTFILES =	${DOC_COMPONENTS:C/$/-everywhere-src-${QT5_DIST_VERSION}${EXTRACT_SUFX}/}

MODQT5_USE_CXX11 =	No
CONFIGURE_STYLE =	none

BUILD_DEPENDS =		x11/qt5/qttools>=${QT5_VERSION},<${QT5_NEXT_VERSION} \
			x11/qt5/qtbase,-global>=${QT5_VERSION},<${QT5_NEXT_VERSION}

RUN_DEPENDS =		x11/qt5/qtbase,-global

NO_TEST =		Yes

PKG_ARCH =		*
WRKDIST =		${WRKDIR}

ALL_TARGET =		html_docs qch_docs
FAKE_TARGET =		install_html_docs install_qch_docs

QTTOOLS =		qdoc \
			qhelpgenerator \
			qtattributionsscanner
MASTER_CONF =		${WRKBUILD}/master.qdocconf

DOCDIR =		${PREFIX}/share/doc/qt5

# N.B.: .qch files are built using .qhp ones, generated by qdoc in html_docs

# XXX this will make qtwebkit same version as other Qt modules
BUILDDIR =		${WRKBUILD}
QT_INSTALL_DOCS =	${DOCDIR}
QT_VER =		${QT5_VERSION:R}
QT_VERSION =		${QT5_VERSION}
QT_VERSION_TAG =	${QT5_VERSION:C/\.//g}

MAKE_ENV =		BUILDDIR=${BUILDDIR} \
			QT_INSTALL_DOCS=${QT_INSTALL_DOCS} \
			QT_VER=${QT_VER} \
			QT_VERSION=${QT_VERSION} \
			QT_VERSION_TAG=${QT_VERSION_TAG}

do-build:
	find ${WRKSRC}/qt*/ -name '*.qdocconf' >${MASTER_CONF}
	${SETENV} ${MAKE_ENV} \
	${MODQT5_LIBDIR}/bin/qdoc --single-exec \
	                          --outputdir ${WRKBUILD} \
	                          --installdir ${DOCDIR} \
	                          ${MASTER_CONF}
	@for qhp in ${WRKBUILD}/*/*.qhp; do \
		qch=${WRKBUILD}/`basename $${qhp%.qhp}.qch`; \
		echo "building $$qch"; \
		${SETENV} ${MAKE_ENV} \
		${MODQT5_LIBDIR}/bin/qhelpgenerator $$qhp -o $$qch; \
	done

do-install:
	${INSTALL_DATA_DIR} ${DOCDIR}/
	for c in ${DOC_COMPONENTS}; do \
		${INSTALL_DATA_DIR} ${DOCDIR}/$$c; \
		cp -R ${WRKBUILD}/$$c.qch ${DOCDIR}/; \
		cp -R ${WRKBUILD}/$$c/*.html ${WRKBUILD}/$$c/images \
		${WRKBUILD}/$$c/style ${DOCDIR}/$$c; \
	done

.include <bsd.port.mk>
