commit:     63df6ab2e4749fbb894f599d03cb62e3d4f4bc27
Author:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 10:50:19 2024 +0000
Commit:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
CommitDate: Sat May 11 10:51:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63df6ab2

dev-libs/uriparser: Fix docs compilation

Closes: https://bugs.gentoo.org/931287
Signed-off-by: Sebastian Pipping <sping <AT> gentoo.org>

 .../files/uriparser-0.9.8-docs-compilation.patch   | 13 +++++
 dev-libs/uriparser/uriparser-0.9.8-r1.ebuild       | 61 ++++++++++++++++++++++
 2 files changed, 74 insertions(+)

diff --git a/dev-libs/uriparser/files/uriparser-0.9.8-docs-compilation.patch 
b/dev-libs/uriparser/files/uriparser-0.9.8-docs-compilation.patch
new file mode 100644
index 000000000000..fbf298e6a7cd
--- /dev/null
+++ b/dev-libs/uriparser/files/uriparser-0.9.8-docs-compilation.patch
@@ -0,0 +1,13 @@
+diff --git a/doc/preprocess.sh b/doc/preprocess.sh
+index c77bb6a..6ee75f2 100755
+--- a/doc/preprocess.sh
++++ b/doc/preprocess.sh
+@@ -1,4 +1,6 @@
+ #! /usr/bin/env bash
+ # Run GCC preprocessor and delete empty lines
+-: ${CPP:=cpp}
+-"${CPP}" -DURI_DOXYGEN -DURI_NO_UNICODE -C -I ../include "$1" | sed -e 
'/^$/d' -e 's/COMMENT_HACK//g'
++: ${CC:=cc}
++PS4='doc/preprocess.sh|# '
++set -x
++"${CC}" -E -DURI_DOXYGEN -DURI_NO_UNICODE -C -I ../include "$1" | sed -e 
'/^$/d' -e 's/COMMENT_HACK//g'

diff --git a/dev-libs/uriparser/uriparser-0.9.8-r1.ebuild 
b/dev-libs/uriparser/uriparser-0.9.8-r1.ebuild
new file mode 100644
index 000000000000..984256a19ba3
--- /dev/null
+++ b/dev-libs/uriparser/uriparser-0.9.8-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Strictly RFC 3986 compliant URI parsing library in C"
+HOMEPAGE="https://uriparser.github.io/";
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.bz2";
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux 
~ppc-macos"
+IUSE="+doc qt5 test unicode"  # +doc to address warning RequiredUseDefaults
+
+REQUIRED_USE="qt5? ( doc ) test? ( unicode )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       test? ( >=dev-cpp/gtest-1.8.1 )
+"
+BDEPEND="
+       virtual/pkgconfig
+       doc? (
+               >=app-text/doxygen-1.5.8
+               media-gfx/graphviz
+               qt5? ( dev-qt/qthelp:5 )
+       )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-docs-compilation.patch
+)
+
+DOCS=( AUTHORS ChangeLog THANKS )
+
+src_configure() {
+       local mycmakeargs=(
+               -DURIPARSER_BUILD_CHAR=ON
+               -DURIPARSER_BUILD_DOCS=$(usex doc ON OFF)
+               -DURIPARSER_BUILD_TESTS=$(usex test ON OFF)
+               -DURIPARSER_BUILD_TOOLS=ON
+               -DURIPARSER_BUILD_WCHAR_T=$(usex unicode ON OFF)
+
+               # The usex wrapper is here to address this warning:
+               #   One or more CMake variables were not used by the project:
+               #   CMAKE_DISABLE_FIND_PACKAGE_Qt5Help
+               $(usex doc "$(cmake_use_find_package qt5 Qt5Help)")
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+
+       if use doc && use qt5; then
+               dodoc "${BUILD_DIR}"/doc/*.qch
+               docompress -x /usr/share/doc/${PF}/${P}.qch
+       fi
+}

Reply via email to