From 32735640dedfcf1751748634f89b62d4749b1acf Mon Sep 17 00:00:00 2001 From: Mikhail Teterin Date: Mon, 18 Jul 2005 23:58:37 +0000 Subject: 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 :-) --- lang/tclX/Makefile | 44 +++++++++++++++++++++++--------------------- lang/tclX/files/patch-af | 8 +++++++- 2 files changed, 30 insertions(+), 22 deletions(-) (limited to 'lang/tclX') 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 -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 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} { -- cgit v1.2.3