Github messages for voidlinux
 help / color / mirror / Atom feed
From: meator <meator@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] doxygen: update + add documentation
Date: Wed, 31 May 2023 13:23:51 +0200	[thread overview]
Message-ID: <20230531112351.C1xKWaY10vee6-j70NQjTClKqRelaJK1CTLcmUeIUzI@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-44079@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 502 bytes --]

There is an updated pull request by meator against master on the void-packages repository

https://github.com/meator/void-packages doxygen
https://github.com/void-linux/void-packages/pull/44079

doxygen: update + add documentation
<!-- Uncomment relevant sections and delete options which are not applicable -->

CC maintainer @ericonr 

#### Testing the changes
- I tested the changes in this PR: **YES**

A patch file from https://github.com/void-linux/void-packages/pull/44079.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-doxygen-44079.patch --]
[-- Type: text/x-diff, Size: 5312 bytes --]

From e6baca99392811c7009b60c56d3eeda9ca6a10c2 Mon Sep 17 00:00:00 2001
From: meator <meator.dev@gmail.com>
Date: Thu, 25 May 2023 19:51:37 +0200
Subject: [PATCH] doxygen: update to 1.9.7 + add documentation

This adds a new subpackage doxygen-doc which contains doxygen's
documentation in PDF and HTML form.

This uses the .repack version of doxygen which contains some fixes,
notably for #10094 and #10053 doxygen issues.
---
 srcpkgs/doxygen-doc                           |  1 +
 .../doxygen/files/use-native-doxygen.patch    | 39 +++++++++++++++
 srcpkgs/doxygen/template                      | 48 +++++++++++++++----
 3 files changed, 80 insertions(+), 8 deletions(-)
 create mode 120000 srcpkgs/doxygen-doc
 create mode 100644 srcpkgs/doxygen/files/use-native-doxygen.patch

diff --git a/srcpkgs/doxygen-doc b/srcpkgs/doxygen-doc
new file mode 120000
index 000000000000..a7610321645c
--- /dev/null
+++ b/srcpkgs/doxygen-doc
@@ -0,0 +1 @@
+doxygen
\ No newline at end of file
diff --git a/srcpkgs/doxygen/files/use-native-doxygen.patch b/srcpkgs/doxygen/files/use-native-doxygen.patch
new file mode 100644
index 000000000000..bb8c516e40ec
--- /dev/null
+++ b/srcpkgs/doxygen/files/use-native-doxygen.patch
@@ -0,0 +1,39 @@
+This patch is applied only when cross building. It makes sure that the native
+version of doxygen is used for documentation generation and not the freshly built
+one (which cannot be executed on host).
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -21,13 +21,9 @@
+ find_program(MAKEINDEX NAMES makeindex )
+ include(GNUInstallDirs)
+ 
+-if (doxygen_BINARY_DIR)
+-    set(DOXYGEN_EXECUTABLE ${doxygen_BINARY_DIR}/bin/doxygen)
+-else()
+     # when building only the doxygen_doc, from the doc/ directory, the
+     # doxygen project variables are unknown so look for doxygen in PATH
+     find_package(Doxygen)
+-endif()
+ 
+ set(DOC_INSTALL_DIR "share/doc/packages/doxygen" CACHE STRING "Relative path where to install the documentation")
+ set(DOC_FILES
+--- a/examples/CMakeLists.txt
++++ b/examples/CMakeLists.txt
+@@ -62,6 +62,8 @@
+   EXAMPLE_manual  EXAMPLE_mux
+ )
+ 
++find_package(Doxygen)
++
+ foreach (f_inp  ${BASIC_EXAMPLES})
+ 	list(LENGTH ${f_inp} f_len)
+ 	list(GET    ${f_inp} 0 f)
+@@ -74,7 +76,7 @@
+     add_custom_command(
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/html/examples/${f}
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/latex/examples/${f}
+-        COMMAND ${CMAKE_COMMAND} -E env PROJECT_BINARY_DIR=${PROJECT_BINARY_DIR} ${EXECUTABLE_OUTPUT_PATH}/doxygen ${f}.cfg
++        COMMAND ${CMAKE_COMMAND} -E env PROJECT_BINARY_DIR=${PROJECT_BINARY_DIR} ${DOXYGEN_EXECUTABLE} ${f}.cfg
+         COMMAND ${PYTHON_EXECUTABLE}  ${TOP}/examples/strip_example.py  < ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
+ 	DEPENDS doxygen ${f}.${f_ext} ${f}.cfg ${TOP}/examples/strip_example.py ${f_dep}
+ 	OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
diff --git a/srcpkgs/doxygen/template b/srcpkgs/doxygen/template
index 981eb49049a9..46378ec8131a 100644
--- a/srcpkgs/doxygen/template
+++ b/srcpkgs/doxygen/template
@@ -1,17 +1,24 @@
 # Template file for 'doxygen'
 pkgname=doxygen
-version=1.9.5
-revision=2
+version=1.9.7
+revision=1
 build_style=cmake
-hostmakedepends="perl python3 flex"
+configure_args="-Dbuild_doc=ON"
+hostmakedepends="perl python3 flex texlive-ConTeXt texlive-latexextra
+ texlive-dvi"
 checkdepends="libxml2 texlive-BibTeX"
 short_desc="Source code documentation generator tool"
 maintainer="Érico Nogueira <ericonr@disroot.org>"
 license="GPL-2.0-only"
 homepage="http://www.doxygen.org/"
 changelog="https://www.doxygen.nl/manual/changelog.html"
-distfiles="http://doxygen.nl/files/doxygen-${version}.src.tar.gz"
-checksum=55b454b35d998229a96f3d5485d57a0a517ce2b78d025efb79d57b5a2e4b2eec
+# This archive contains few fixes. Next update must remove .repack
+distfiles="https://doxygen.nl/files/doxygen-${version}.repack.src.tar.gz"
+checksum=aa9b2118578f4d277954c8584eb7228be47cdf29e8041ce4dcba21e41dfb89f3
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" doxygen"
+fi
 
 build_options="wizard"
 desc_option_wizard="build Qt5 GUI configuration tool, doxywizard"
@@ -25,9 +32,34 @@ if [ "$build_option_wizard" ]; then
 	makedepends+=" qt5-devel"
 fi
 
+# Use the host doxygen when building documentation on cross.
+do_patch() {
+	if [ "$CROSS_BUILD" ]; then
+		patch -Np1 < ${FILESDIR}/use-native-doxygen.patch
+	fi
+}
+
+post_build() {
+	ninja -C build docs
+}
+
 post_install() {
-	vman doc/doxygen.1
-	if [ "$build_option_wizard" ]; then
-		vman doc/doxywizard.1
+	if [ ! "$build_option_wizard" ]; then
+		rm ${DESTDIR}/usr/share/man/man1/doxywizard.1
 	fi
+
+	# These manpages are generated because build_doc is ON, but we don't
+	# build these programs.
+	rm ${DESTDIR}/usr/share/man/man1/doxyindexer.1
+	rm ${DESTDIR}/usr/share/man/man1/doxysearch.1
+
+	mv ${DESTDIR}/usr/share/doc/packages/doxygen ${DESTDIR}/usr/share/doc/doxygen
+}
+
+doxygen-doc_package() {
+	short_desc+=" - documentation"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/share/doc/doxygen
+	}
 }

  parent reply	other threads:[~2023-05-31 11:23 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-25 17:58 [PR PATCH] doxygen: " meator
2023-05-25 18:29 ` meator
2023-05-27 16:34 ` meator
2023-05-27 18:26 ` [PR PATCH] [Updated] " meator
2023-05-31 11:23 ` meator [this message]
2023-05-31 11:26 ` [PR PATCH] [Updated] doxygen: update + " meator
2023-05-31 11:26 ` meator
2023-07-30 14:21 ` meator
2023-10-29  1:45 ` doxygen: " github-actions
2023-11-12  1:46 ` [PR PATCH] [Closed]: " github-actions

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230531112351.C1xKWaY10vee6-j70NQjTClKqRelaJK1CTLcmUeIUzI@z \
    --to=meator@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).