macports-base icon indicating copy to clipboard operation
macports-base copied to clipboard

Repoint manpage symlinks that point to symlinks

Open ryandesign opened this issue 5 years ago • 2 comments

MacPorts previously only fixed up manpage symlinks that pointed to real manpage files, but some ports install manpage symlinks that point to other symlinks that then point to real manpage files.

The old two-step method of first compressing all manpage files and then fixing up symlinks is replaced with a three-step process that first inventories the man directory, then compresses all manpages, then fixes up symlinks. This ensures that we have a complete and accurate inventory including what each symlink points to before we change anything.

Closes: https://trac.macports.org/ticket/61288


This works for me to fix graphviz-devel's dot2gxl.1 symlink but I should do more testing on other types of ports, such as python modules or other ports that install manpages in a nonstandard man directory and then symlink those into the standard man directory.

ryandesign avatar Oct 19 '20 05:10 ryandesign

Do we actually need to do this at all on OS versions capable of hfscompression?

jmroot avatar Oct 19 '20 22:10 jmroot

If we could rely on hfscompression being available, then you're right, we wouldn't need this. However hfscompression requires the user to install libarchive to use its version of tar; the version provided by the OS hasn't been recent enough. We can't know at the time that we package up the archives on the build servers whether the user has hfscompression enabled. So I think we should continue to gzip-compress manpages as we've been doing.

Another reason not to change it now is that some ports may rely on the existing behavior, assuming that the manpages will be gzipped.

ryandesign avatar Oct 20 '20 02:10 ryandesign