Page MenuHomeFreeBSD

security/gnupg: rebuild man pages
ClosedPublic

Authored by asomers on Nov 20 2019, 11:26 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 18, 6:16 AM
Unknown Object (File)
Tue, Apr 16, 3:59 AM
Unknown Object (File)
Sun, Mar 31, 1:44 PM
Unknown Object (File)
Sun, Mar 31, 1:44 PM
Unknown Object (File)
Sun, Mar 31, 1:44 PM
Unknown Object (File)
Sun, Mar 31, 1:44 PM
Unknown Object (File)
Sat, Mar 30, 10:20 AM
Unknown Object (File)
Mar 14 2024, 6:00 PM
Subscribers

Details

Summary

security/gnupg: rebuild man pages

gnupg ships its man pages as texinfo files, precompiled into info files.
This patch rebuilds those info files. There are two reasons:

  • Rebuilding them automatically corrects several Linuxisms in paths (e.g. /etc => /usr/local/etc).
  • Rebuilding them is a neccessary precondition for making any local changes that will affect the content of the man pages, which I intend to do in a future patch.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This seems tremendously fragile. Unless I'm misunderstanding, these massive patches would have to be regenerated for every update (assuming changes), which---while I appreciate the patch coming down the pipeline---I don't relish the thought of being responsible for.

Can we just rebuild them using texinfo and apply your patches in pre-build? Or can you base your patches against the original so we can run texinfo on it afterwards?

This seems tremendously fragile. Unless I'm misunderstanding, these massive patches would have to be regenerated for every update (assuming changes), which---while I appreciate the patch coming down the pipeline---I don't relish the thought of being responsible for.

Yes, the patches would have to be regenerated for every update that changes the docs. It looks like upstream doesn't always revise the docs with each release, though.

Can we just rebuild them using texinfo and apply your patches in pre-build? Or can you base your patches against the original so we can run texinfo on it afterwards?

Basing my patches against the original .texinfo is what I tried first. We can certainly do that. The downside is running makeinfo during the build will reset the .Dd in the man pages. Effectively, the .Dd date would become the build date of the man pages, not their edit date. If you're ok with that wart, then I'll update the patch to work that way.

I'm fine with a date change in that context.

Rebuild man pages on every build, rather than try to patch them.

After updating the DOCS_BUILD_DEPENDS (and also bumping PORTREVISION please), feel free to commit this anytime.

security/gnupg/Makefile
48 ↗(On Diff #64657)

This should be makeinfo:print/texinfo. ${LOCALBASE}/bin is implied.

This revision is now accepted and ready to land.Nov 21 2019, 1:00 AM

FYI, the DR already contained a PORTREVISION bump. You were probably just looking at the second item in the history, instead of the whole diff.

security/gnupg/Makefile
48 ↗(On Diff #64657)

Ok. I saw it done both ways in existing ports.

This revision was automatically updated to reflect the committed changes.