aboutsummaryrefslogtreecommitdiffstats
path: root/lang/tclX
diff options
context:
space:
mode:
authormi <mi@FreeBSD.org>2005-07-19 07:58:37 +0800
committermi <mi@FreeBSD.org>2005-07-19 07:58:37 +0800
commit3cbc0f02eea88b4aae81459324598af40c1275d9 (patch)
treeb3c5cc4ea3adad008741d92ef7b6c8a8754eb481 /lang/tclX
parentabf3ee65fb549723dca5d6c8e5b872965837ee5e (diff)
downloadfreebsd-ports-gnome-3cbc0f02eea88b4aae81459324598af40c1275d9.tar.gz
freebsd-ports-gnome-3cbc0f02eea88b4aae81459324598af40c1275d9.tar.zst
freebsd-ports-gnome-3cbc0f02eea88b4aae81459324598af40c1275d9.zip
Unbreak the manual pages installation and help file generation:
. when parsing man-files, do not choke on files containing '.so man.macros'; . be ready for the .bz2 man-pages; . do not use vendor's install-doc target at all -- install the vendor's manual pages in post-install and declare MLINKS to have bsd.port.mk do the Right Thing (TM) -- links instead of copies of the manual pages. This may even work now :-)
Diffstat (limited to 'lang/tclX')
-rw-r--r--lang/tclX/Makefile44
-rw-r--r--lang/tclX/files/patch-af8
2 files changed, 30 insertions, 22 deletions
diff --git a/lang/tclX/Makefile b/lang/tclX/Makefile
index ed8b486da1cb..d3d035afe99c 100644
--- a/lang/tclX/Makefile
+++ b/lang/tclX/Makefile
@@ -18,14 +18,12 @@ MAINTAINER= mi@aldan.algebra.com
COMMENT= Extended TCL
.ifdef WITHOUT_X11
-LIB_DEPENDS= tcl${TCL_DVER}.1:${PORTSDIR}/lang/tcl${TCL_DVER}
+LIB_DEPENDS= tcl${TCL_DVER}:${PORTSDIR}/lang/tcl${TCL_DVER}
PKGNAMESUFFIX= -nox11
.else
-LIB_DEPENDS= tk${TCL_DVER}.1:${PORTSDIR}/x11-toolkits/tk${TCL_DVER}
+LIB_DEPENDS= tk${TCL_DVER}:${PORTSDIR}/x11-toolkits/tk${TCL_DVER}
.endif
-#BROKEN= Incorrect pkg-plist
-
TCL_VER?= 8.4
TCL_DVER?= ${TCL_VER:S/.//}
@@ -38,6 +36,7 @@ CONFIGURE_ARGS= --enable-shared \
--with-tk="${LOCALBASE}/lib/tk${TCL_VER}"
PLIST_SUB= TCLX_LONG_VER=${PORTVERSION:R} \
TCLX_SHORT_VER=${PORTVERSION:R:S/.//}
+INSTALL_TARGET= install-binaries install-libraries
.ifdef WITHOUT_X11
CONFIGURE_ARGS+=--enable-tk=NO
@@ -49,27 +48,30 @@ PLIST_SUB+= X11=''
MAKE_ENV= LDFLAGS="-lm"
-MAN3= CmdWrite.3 Handles.3 Keylist.3 ObjCmdWrite.3 TclXInit.3 \
- TclCommandWriting.3 \
- TclX_KeyedListDelete.3 TclX_KeyedListGet.3 TclX_KeyedListGetKeys.3 \
- TclX_KeyedListSet.3 TclX_Main.3 TclX_NewKeyedListObj.3 \
- Tcl_HandleAlloc.3 Tcl_HandleFree.3 Tcl_HandleTblInit.3 \
- Tcl_HandleTblRelease.3 Tcl_HandleTblUseCount.3 Tcl_HandleWalk.3 \
- Tcl_HandleXlate.3 Tclx_Init.3 Tclxcmd_Init.3 TkX_Main.3 Tkx_Init.3
+MAN3= CmdWrite.3 Handles.3 Keylist.3 ObjCmdWrite.3 TclXInit.3
+MANN= TclX.n
+
+MLINKS= CmdWrite.3 TclCommandWriting.3 \
+ Keylist.3 TclX_NewKeyedListObj.3
+.for l in Delete Get GetKeys Set TclX_Main TclX_NewKeyedListObj
+MLINKS+= Keylist.3 TclX_Keylist$l.3
+.endfor
+.for l in Alloc Free TblInit TblRelease TblUseCount Walk Xlate
+MLINKS+= Handles.3 TclX_Handle$l.3
+.endfor
+.for l in Tclxcmd_Init TclX_Main Tkx_Init TkX_Main
+MLINKS+= TclXInit.3 $l.3
+.endfor
-MANN= Memory.n TclX.n Tcl_DisplayMemory.n Tcl_InitMemory.n \
- Tcl_ValidateAllMemory.n ckalloc.n ckfree.n
+post-patch:
+ # This man-page is now part of Tcl distribution:
+ ${RM} ${WRKSRC:H}/doc/Memory.n
.include <bsd.port.pre.mk>
-post-install:
+pre-install:
# Preventing the help files from being rebuilt over and over:
- ${INSTALL_MAN} ${WRKSRC}/../doc/CmdWrite.3 ${PREFIX}/man/man3
- ${INSTALL_MAN} ${WRKSRC}/../doc/Handles.3 ${PREFIX}/man/man3
- ${INSTALL_MAN} ${WRKSRC}/../doc/Keylist.3 ${PREFIX}/man/man3
- ${INSTALL_MAN} ${WRKSRC}/../doc/ObjCmdWrite.3 ${PREFIX}/man/man3
- ${INSTALL_MAN} ${WRKSRC}/../doc/TclXInit.3 ${PREFIX}/man/man3
- ${INSTALL_MAN} ${WRKSRC}/../doc/Memory.n ${PREFIX}/man/mann
- ${INSTALL_MAN} ${WRKSRC}/../doc/TclX.n ${PREFIX}/man/mann
+ cd ${WRKSRC:H}/doc && ${INSTALL_MAN} ${MAN3} ${PREFIX}/man/man3
+ cd ${WRKSRC:H}/doc && ${INSTALL_MAN} ${MANN} ${PREFIX}/man/mann
.include <bsd.port.post.mk>
diff --git a/lang/tclX/files/patch-af b/lang/tclX/files/patch-af
index 1e38676af12c..bab422b04e6e 100644
--- a/lang/tclX/files/patch-af
+++ b/lang/tclX/files/patch-af
@@ -8,7 +8,7 @@
# 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
-@@ -64,5 +63,14 @@
+@@ -64,5 +63,16 @@
- set stat [catch {
- open $manPage
@@ -22,6 +22,8 @@
+
+ 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]
+ }
@@ -31,6 +33,10 @@
- puts stderr "can't open \"$manPage\" $fh"
+ puts stderr "can't open \"$manPage\" $fh. (cwd is [pwd])"
return
+@@ -75,2 +89,3 @@
+ switch -glob -- $line {
++ {.so man.macros} {}
+ .so* {
@@ -114,3 +119,3 @@
-proc GenInputFile {docDir manInfoTbl tmpFile} {