Page MenuHomeFreeBSD

security/gnupg: don't install man pages when DOCS is off
ClosedPublic

Authored by asomers on Thu, Nov 21, 10:52 PM.

Details

Summary

security/gnupg: don't install man pages when DOCS is off

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

asomers created this revision.Thu, Nov 21, 10:52 PM

This isn't the right approach. Manpages aren't docs like FAQ and HACKING and DETAILS; they're manpages and their existence shouldn't be controlled by the DOCS option.

There are a couple options we could do:

  1. Only touch *.texi and patch the texi sources if DOCS is enabled
  2. Add a MANPAGES option
  3. Continue touching *.texi and patching the texi sources regardless, but delete the makeinfo line from docs/Makefile.am if DOCS is off
  4. Everybody gets texinfo

This isn't the right approach. Manpages aren't docs like FAQ and HACKING and DETAILS; they're manpages and their existence shouldn't be controlled by the DOCS option.
There are a couple options we could do:

  1. Only touch *.texi and patch the texi sources if DOCS is enabled
  2. Add a MANPAGES option
  3. Continue touching *.texi and patching the texi sources regardless, but delete the makeinfo line from docs/Makefile.am if DOCS is off
  4. Everybody gets texinfo

It sounds like the right option then is to add a MANPAGES option. However, the --disable-docs configure option disables both man pages _and_ the help*.txt files. So as long as either MANPAGES or DOCS is on, we'll need to do makeinfo. Or, everybody gets man pages, and everybody needs to run makeinfo. Which would you prefer?

adamw added a comment.Fri, Nov 22, 2:55 AM

Normally I push hard against avoidable dependencies, but I think the right thing to do here is to make makeinfo non-optional. Major gnupg dependencies (like gnutls, libgcrypt, m4, nettle, and autoconf) depend on texinfo, so there's really nothing to gain from hiding it behind a MANPAGES option (which is normally used when dependencies are ludicrous, like pandoc or whatever nonsense python thing cmake uses).

So, my vote is for makeinfo always been used.

BTW, the depends line needs to be changed. I don't want to mess up your patches, so can you please add to your patch:

BUILD_DEPENDS= makeinfo:print/texinfo --> USES= makeinfo

asomers updated this revision to Diff 64712.Fri, Nov 22, 3:09 AM

Always install man pages, but use USE=makeinfo

This revision was not accepted when it landed; it landed in state Needs Review.Fri, Nov 22, 3:47 AM
Closed by commit rP518122: gnupg: Fix building on 11.3 (authored by adamw). · Explain Why
This revision was automatically updated to reflect the committed changes.
adamw added a comment.Fri, Nov 22, 3:48 AM

Sorry Alan, this was breaking the build on 11 so I committed it.

Sorry Alan, this was breaking the build on 11 so I committed it.

No problem. But what *was* the problem? It works for me on 11.3 in Poudriere, both with and without DOCS, both before and after your commit.

Ah sorry, forgot to reply here. Someone reported an error that seemed like it was caused by this, so I pushed the fix. Turns out he had some sort of environment contamination (building from ports), so it was a bad assumption on my part.