Re: HTML man pages failed to build (was: GnuPG 2.4.6 released)

Todd Zullinger via Gnupg-devel <[email protected]>
Newsgroups gmane.comp.encryption.gpg.devel
Message-ID <[email protected]>
Werner Koch via Gnupg-devel wrote:
> On Tue, 29 Oct 2024 13:46, Todd Zullinger said:
> 
>> which builds the HTML documentation unconditionally.  This
>> calls yat2m with the --gnupgorg option added in libgpg-error
>> 1.48.
> 
> Oh, does that happen in the default way to build it?  I always do a
> double build to make sure we are really building everything from the
> tarball.

Yeah, I ran into while building an rpm package based on the
Fedora spec file.  That uses the tarball as a source and
runs configure without --enable-maintainer-mode.

>> Should the libgpg-error version requirement be increased
>> and/or what is the suggested method for folks building
>> against distribution packages?  Perhaps an option to
>> explicitly enable or disable the HTML documentation would be
> 
> Yeah, should only be build in --enable-maintainer-mode.  After all the
> HTML rendering still has a couple f problems.

I started to work on a patch to do that, but got a bit into
the weeds.  I'll include what I have at the end, just in
case it's useful to you or someone else in finishing this.  
(Or it may be an example of how _not_ to do it.  It's been
ages since I've done much with automake and I'm not too
familiar with the gnupg files either.)

One other thing I noticed from my build with a newer
libgpg-error is that gnupg-2.4.6 installs gnupg.7.html at
/usr/share/man/manh/gnupg.7.html.gz.  That seems like an
unintended consequence of having gnupg7.html included in
man_MANS.

-- 8< --
Subject: [PATCH gnupg] doc: Only build HTML man pages in --maintainer-mode

* doc/Makefile.am: Conditionally define myhtmlman_pages
--

Make the HTML man page support added in 35d80ebd7 (doc: Add support for
generating HTML versions of the man pages., 2024-09-19) conditional on
--maintainer-mode being enabled.  This avoids the need to increase the
lihgpg-error requirement to >= 1.48 (where the --gnupgorg option was
added to yat2m).
---
 doc/Makefile.am | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/doc/Makefile.am b/doc/Makefile.am
index 5d55767cd..7def87dbb 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -84,6 +84,7 @@ myman_pages   = gpg.1 gpgv.1 gpgsm.1 gpg-agent.1 dirmngr.8 scdaemon.1 \
 		gpg-connect-agent.1 gpgparsemail.1 gpgtar.1 gpg-mail-tube.1 \
 		applygnupgdefaults.8 gpg-wks-client.1 gpg-wks-server.1 \
 		dirmngr-client.1 gpg-card.1 gpg-check-pattern.1
+if MAINTAINER_MODE
 myhtmlman_pages = \
                 gpg.1.html gpgv.1.html gpgsm.1.html \
                 gpg-agent.1.html dirmngr.8.html scdaemon.1.html \
@@ -94,6 +95,9 @@ myhtmlman_pages = \
 		applygnupgdefaults.8.html gpg-wks-client.1.html \
                 gpg-wks-server.1.html \
 		dirmngr-client.1.html gpg-card.1.html gpg-check-pattern.1.html
+else
+myhtmlman_pages =
+endif
 
 man_MANS = $(myman_pages) gnupg.7 gnupg.7.html
 
@@ -143,10 +147,12 @@ yat2m-stamp: $(myman_sources) defs.inc
 	for file in $(myman_sources); do \
               $(YAT2M) $(YAT2M_OPTIONS) --store \
                   --date "`cat $$incd 2>/dev/null`" \
-	          `test -f '$$file' || echo '$(srcdir)/'`$$file ; \
-              $(YAT2M) $(YAT2M_OPTIONS) --store --html --gnupgorg \
-                  --date "`cat $$incd 2>/dev/null`" \
-	          `test -f '$$file' || echo '$(srcdir)/'`$$file ;\
+                  `test -f '$$file' || echo '$(srcdir)/'`$$file ; \
+              if test -n "$(myhtmlman_pages)" ; then \
+                  $(YAT2M) $(YAT2M_OPTIONS) --store --html --gnupgorg \
+                      --date "`cat $$incd 2>/dev/null`" \
+                      `test -f '$$file' || echo '$(srcdir)/'`$$file ; \
+              fi; \
         done
 	@mv -f yat2m-stamp.tmp $@

-- 
Todd

_______________________________________________
Gnupg-devel mailing list
[email protected]
https://lists.gnupg.org/mailman/listinfo/gnupg-devel
signature.asc (application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE-----

iHUEARYIAB0WIQSvlwC4tRNlCF6x+moHOcdGE+n45gUCZyKOFAAKCRAHOcdGE+n4
5iT5AQCtP5MUB/czN9dR5ywoF43abmQo/G2TlCRy1JxKgJvH+wD/SDge+Rd4jYQp
VEY3w7+85QmaNhWUhQf833K9WAVHdQA=
=dkiL
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.