freebsd-ports/lang/tclX/files/patch-af
Mikhail Teterin ad82eb27b8 Upgrade tclX from 8.3.5 to 8.4 released last November after several
years of idleness. The changes are fairly substantial -- all Tk bits,
however insignificant they were, are now removed completely, for
example. No TclX enabled executable is built/installed either -- a Tcl
script is expected to load the Tclx package via the "package require
Tclx" only.

The changes to port add the handling of SIGINFO (made possible by the
recent fix-up of lang/tcl84), running the authors' test-target as part
of the build, and skipping building/installing of help files in the
NOPORTDOCS case.

The devel/tcl-neo is the only dependant port of tclX and is updated to
depend on the new version.
2006-06-27 23:23:20 +00:00

68 lines
2 KiB
Text

--- unix/tools/bldmanhelp.tcl Thu Dec 2 15:33:05 2004
+++ unix/tools/bldmanhelp.tcl Mon Jun 26 19:51:14 2006
@@ -12,8 +12,7 @@
# 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
@@ -70,15 +69,27 @@
global skipSection
- set stat [catch {
- open $manPage
- } fh]
+ set section [lindex [split $manPage .] end]
+ 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
@@ -120,9 +131,8 @@
#
-proc GenInputFile {docDir manInfoTbl tmpFile} {
+proc GenInputFile {manInfoTbl tmpFile} {
set tmpFH [open $tmpFile w]
set cwd [pwd]
- cd $docDir
foreach ent $manInfoTbl {
@@ -145,5 +155,4 @@
set tmpFile "bldmanhelp.tmp"
-set docDir [lindex $argv 0]
set manInfoTbl [source [lindex $argv 1]]
set helpDir [lindex $argv 2]
@@ -151,5 +160,5 @@
puts stdout "Begin preprocessing UCB manual files"
-GenInputFile $docDir $manInfoTbl $tmpFile
+GenInputFile $manInfoTbl $tmpFile
buildhelp $helpDir $brief [list $tmpFile]