freebsd-ports/lang/tclX/files/patch-af
Thierry Thomas d3f0ec5007 - Fix a breakage caused by revision v 1.91 of ports/lang/tcl84/Makefile
- Switch to USE_TCL

- s/INSTALLS_SHLIB/USE_LDCONFIG/

- Support tcl84-thread

- Fix tclsh detection in configure

- Pet portlint.

Note: this port is still broken, because a test is failing, and tests
are part of the all target.

PR:		ports/110805
Submitted by:	/me
Approved by:	mi (excepted the move of tests to a regression-test target)
2007-03-26 17:11:37 +00:00

79 lines
2.3 KiB
Text

--- ./unix/tools/bldmanhelp.tcl.orig Thu Dec 2 21:33:05 2004
+++ ./unix/tools/bldmanhelp.tcl Sun Mar 25 17:07:36 2007
@@ -11,10 +11,9 @@
#
# The command line is:
#
-# bldmanhelp docdir maninfo helpdir
+# bldmanhelp maninfo helpdir
#
# Where:
-# o docdir is the directory containing the manual pages.
# o maninfo is the path to a file that when sources returns a list of
# entries describing manual pages to convert. Each entry is a list
# of manual file and the path of the help file to generate.
@@ -69,17 +68,32 @@
proc CopyManPage {manPage outFH} {
global skipSection
- set stat [catch {
- open $manPage
- } fh]
+ set section [lindex [split $manPage .] end]
+ if {$section == "macros"} {
+ return
+ }
+ set manPage [file rootname $manPage]
+ set manPage [split [exec man -w $section $manPage] ":)"]
+ if {[llength $manPage] > 1} { # Get the source, not from cat
+ set manPage [string trim [lindex $manPage 1]]
+ }
+
+ if {[string match *.gz $manPage]} {
+ set stat [catch {open "|gzip -d -c $manPage"} fh]
+ } elseif {[string match *.bz2 $manPage]} {
+ set stat [catch {open "|bzip2 -d -c $manPage"} fh]
+ } else {
+ set stat [catch {open $manPage} fh]
+ }
if {$stat != 0} {
global gotErrors
set gotErrors 1
- puts stderr "can't open \"$manPage\" $fh"
+ puts stderr "can't open \"$manPage\" $fh. (cwd is [pwd])"
return
}
while {[gets $fh line] >= 0} {
switch -glob -- $line {
+ {.so man.macros} {}
.so* {
CopyManPage [lindex $line 1] $outFH
}
@@ -119,11 +133,10 @@
# for input to buildhelp.
#
-proc GenInputFile {docDir manInfoTbl tmpFile} {
+proc GenInputFile {manInfoTbl tmpFile} {
set tmpFH [open $tmpFile w]
set cwd [pwd]
- cd $docDir
foreach ent $manInfoTbl {
puts stdout " preprocessing $ent"
@@ -144,13 +157,12 @@
set tmpFile "bldmanhelp.tmp"
-set docDir [lindex $argv 0]
set manInfoTbl [source [lindex $argv 1]]
set helpDir [lindex $argv 2]
set brief [lindex $argv 3]
puts stdout "Begin preprocessing UCB manual files"
-GenInputFile $docDir $manInfoTbl $tmpFile
+GenInputFile $manInfoTbl $tmpFile
buildhelp $helpDir $brief [list $tmpFile]