ports/110805: lang/tclX: unbreak + various improvements.
Thierry Thomas
thierry at FreeBSD.org
Sun Mar 25 15:30:06 UTC 2007
>Number: 110805
>Category: ports
>Synopsis: lang/tclX: unbreak + various improvements.
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Sun Mar 25 15:30:04 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Thierry Thomas
>Release: FreeBSD 6.2-STABLE i386
>Organization:
Kabbale Eros
>Environment:
System: FreeBSD graf.pompo.net 6.2-STABLE FreeBSD 6.2-STABLE #0: Sun Jan 28 10:29:56 CET 2007 thierry at graf.pompo.net:/usr/obj/usr/src/sys/GRAF060511 i386
>Description:
- 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
- Move the test target to regression-test
- Pet portlint.
>How-To-Repeat:
See errors logs on pointyhat:
<http://portsmon.droso.net/portoverview.py?category=lang&portname=tclX>
>Fix:
Please apply the folowing patch:
--- tclX.diff begins here ---
diff -urN lang/tclX.orig/Makefile lang/tclX/Makefile
--- lang/tclX.orig/Makefile Fri Jun 30 22:20:18 2006
+++ lang/tclX/Makefile Sun Mar 25 17:09:14 2007
@@ -7,7 +7,8 @@
PORTNAME= tclX
PORTVERSION= 8.4
-CATEGORIES= lang tcl${TCL_DVER} devel
+PORTREVISION= 1
+CATEGORIES= lang tcl${USE_TCL} devel
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR=tclx
DISTNAME= tclx${PORTVERSION}
@@ -16,27 +17,24 @@
COMMENT= Extended TCL
USE_BZIP2= yes
-LIB_DEPENDS= tcl${TCL_DVER}:${PORTSDIR}/lang/tcl${TCL_DVER}
+USE_TCL_BUILD= yes
-TCL_VER?= 8.4
-TCL_DVER?= ${TCL_VER:S/.//}
-
-INSTALLS_SHLIB= yes
+USE_LDCONFIG= yes
GNU_CONFIGURE= yes
-CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include/tcl${TCL_VER}/unix\
- -I${LOCALBASE}/include/tcl${TCL_VER}/generic"
-CONFIGURE_ARGS= --enable-shared \
+CONFIGURE_ENV+= CPPFLAGS="-I${TCL_INCLUDEDIR}/unix\
+ -I${TCL_INCLUDEDIR}/generic"
+CONFIGURE_ARGS= --enable-shared \
--with-help=Help \
- --with-tcl="${LOCALBASE}/lib/tcl${TCL_VER}"
+ --with-tcl="${TCL_LIBDIR}"
PLIST_SUB= TCLX_VER=${PORTVERSION}
-ALL_TARGET= binaries libraries test
+ALL_TARGET= binaries libraries
INSTALL_TARGET= install-binaries install-libraries
.ifndef(NOPORTDOCS)
ALL_TARGET+= doc
INSTALL_TARGET+=install-help
.endif
-MAN3= CmdWrite.3 Handles.3 Keylist.3 ObjCmdWrite.3 TclXInit.3
+MAN3= CmdWrite.3 Handles.3 Keylist.3 ObjCmdWrite.3 TclXInit.3
MANN= TclX.n
MLINKS= CmdWrite.3 TclCommandWriting.3 \
@@ -51,15 +49,28 @@
MLINKS+= TclXInit.3 $l.3
.endfor
+.include <bsd.port.pre.mk>
+
+pre-configure:
+.if exists(${TCL_LIBDIR}/tclConfig-threads.sh)
+ ${REINPLACE_CMD} -e 's|tclConfig.sh|tclConfig-threads.sh|' \
+ ${WRKSRC}/${CONFIGURE_SCRIPT}
+.endif
+ ${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|' \
+ ${WRKSRC}/${CONFIGURE_SCRIPT}
+
post-configure:
${REINPLACE_CMD} -e \
- 's,^TCLSH_PROG.*,TCLSH_PROG=${LOCALBASE}/bin/tclsh${TCL_VER},' \
+ 's,^TCLSH_PROG.*,TCLSH_PROG=${TCLSH},' \
-e 's,TCL_LIBRARY=.*,\\,' ${WRKSRC}/Makefile
# Disabling the failing help.test
- mv ${WRKSRC}/tests/help.test ${WRKSRC}/tests/help.test.dis
+ ${MV} ${WRKSRC}/tests/help.test ${WRKSRC}/tests/help.test.dis
pre-su-install:
cd ${WRKSRC}/doc && ${INSTALL_MAN} ${MAN3} ${PREFIX}/man/man3
cd ${WRKSRC}/doc && ${INSTALL_MAN} ${MANN} ${PREFIX}/man/mann
-.include <bsd.port.mk>
+regression-test:
+ @(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} test)
+
+.include <bsd.port.post.mk>
diff -urN lang/tclX.orig/files/patch-af lang/tclX/files/patch-af
--- lang/tclX.orig/files/patch-af Fri Jun 30 22:20:18 2006
+++ lang/tclX/files/patch-af Sun Mar 25 17:07:57 2007
@@ -1,6 +1,7 @@
---- 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 @@
+--- ./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
@@ -10,13 +11,18 @@
-# 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 @@
+ # 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
@@ -42,7 +48,9 @@
+ {.so man.macros} {}
.so* {
CopyManPage [lindex $line 1] $outFH
-@@ -120,9 +131,8 @@
+ }
+@@ -119,11 +133,10 @@
+ # for input to buildhelp.
#
-proc GenInputFile {docDir manInfoTbl tmpFile} {
@@ -53,16 +61,19 @@
- cd $docDir
foreach ent $manInfoTbl {
-@@ -145,5 +155,4 @@
+ 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]
-@@ -151,5 +160,5 @@
+ set brief [lindex $argv 3]
puts stdout "Begin preprocessing UCB manual files"
-GenInputFile $docDir $manInfoTbl $tmpFile
+GenInputFile $manInfoTbl $tmpFile
buildhelp $helpDir $brief [list $tmpFile]
+
diff -urN lang/tclX.orig/files/patch-configure lang/tclX/files/patch-configure
--- lang/tclX.orig/files/patch-configure Thu Jan 1 01:00:00 1970
+++ lang/tclX/files/patch-configure Sun Mar 25 15:35:24 2007
@@ -0,0 +1,11 @@
+--- configure.orig Sat Oct 8 01:17:50 2005
++++ configure Sun Mar 25 15:34:58 2007
+@@ -6917,7 +6917,7 @@
+ fi
+ else
+ # tclConfig.sh is in $INSTALL/lib directory
+- REAL_TCL_BIN_DIR=`cd ${TCL_BIN_DIR}/../bin/;pwd`
++ REAL_TCL_BIN_DIR=`cd ${TCL_BIN_DIR}/../../bin/;pwd`
+ if test "$TEA_PLATFORM" = "windows"; then
+ TCLSH_PROG=${REAL_TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}
+ else
--- tclX.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list