More information: If a tcl manpage describes more than one command (the majority of pages in `man3' and `mann' do), hard links are used to link the additional names to the same page. However...when the manpages are compressed later, hard links are broken (because of the way gzip works, it stores information about the uncompressed file as part of the comressed file)... resulting in multiple compressed copies of the same content. For instance, OpenFileChnl.3.gz, Tcl_OpenFileChannel.3.gz, Tcl_OpenCommandChannel.3.gz, Tcl_MakeFileChannel.3.gz, Tcl_GetChannel.3.gz, Tcl_GetChannelNames.3.gz, Tcl_GetChannelNamesEx.3.gz, Tcl_RegisterChannel.3.gz, Tcl_UnregisterChannel.3.gz, Tcl_Close.3.gz, Tcl_ReadChars.3.gz, Tcl_Read.3.gz, Tcl_GetsObj.3.gz, Tcl_Gets.3.gz, Tcl_WriteObj.3.gz, Tcl_WriteChars.3.gz, Tcl_Write.3.gz, Tcl_Flush.3.gz, Tcl_Seek.3.gz, Tcl_Tell.3.gz, Tcl_GetChannelOption.3.gz, Tcl_SetChannelOption.3.gz, Tcl_Eof.3.gz, Tcl_InputBlocked.3.gz, Tcl_InputBuffered.3.gz, Tcl_Ungets.3.gz (26 different files) all uncompress to the exact same data. Solution: use symlinks instead (tcl's disk usage in `/usr/share/man' drops from 3.2M to 814K). The shortest (not necessarily the cleanest) fix, --- tcl8.3.4/unix/mkLinks.orig +++ tcl8.3.4/unix/mkLinks @@ -15,6 +15,9 @@ # The script takes one argument, which is the name of the directory # where the manual entries have been installed. +set -e +ln() { /bin/ln -sf "$@"; } + if test $# != 1; then echo "Usage: mkLinks dir" exit 1
I'll take this one and hammer the kinks out.
Created attachment 37405 [details, diff] Catgets patch that fixes locale problems (see comments)
Created attachment 37406 [details] New ebuild for man that uses the catgets patch
Comment on attachment 37405 [details, diff] Catgets patch that fixes locale problems (see comments) WTF, for some reason this got added into wrong bug. Crap.
Sorry about three previous comments. I have *no* idea why my browser for some reason decided to submit those patches to this bug when they should have gone to #37778...And apparently I cannot delete these, either.
*** Bug 43235 has been marked as a duplicate of this bug. ***
Is there anybody out there?
dev-lang/tcl-8.3* removed from the tree.