ports/110088: [UPDATE] lang/tcl82

Martin Matuska martin at matuska.org
Thu Mar 8 15:10:02 UTC 2007


>Number:         110088
>Category:       ports
>Synopsis:       [UPDATE] lang/tcl82
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 08 15:10:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Martin Matuska
>Release:        FreeBSD 6.2-RELEASE
>Organization:
>Environment:
FreeBSD 6.2-RELEASE i386 and amd64
>Description:
This update changes the following:
- adds TCL82_MAN and TCLSH_WRAPPER to OPTIONS
- removes pseudo-installation of tclsh in favour of new lang/tcl-tk-wrapper port
- adds support for NO_INSTALL_MANPAGES knob

Portlint -A and tinderbox do not complain.
>How-To-Repeat:
>Fix:
diff -Nbur lang/tcl82.orig/Makefile lang/tcl82/Makefile
--- lang/tcl82.orig/Makefile	Tue Aug 15 02:29:09 2006
+++ lang/tcl82/Makefile	Thu Mar  8 15:25:36 2007
@@ -7,7 +7,7 @@
 
 PORTNAME=	tcl
 PORTVERSION=	8.2.3
-PORTREVISION=	6
+PORTREVISION=	7
 CATEGORIES=	lang tcl82
 MASTER_SITES=	${MASTER_SITE_TCLTK}
 MASTER_SITE_SUBDIR=	tcl8_2
@@ -28,9 +28,16 @@
 NOPRECIOUSMAKEVARS=	yes # Otherwise 'make readmes' is broken
 PLIST_SUB=	TCL_VER=8.2 SHORT_TCL_VER=82
 
+OPTIONS=	TCL82_MAN "Install tcl 8.2 manpages" on \
+		TCLSH_WRAPPER "Require tclsh wrapper from ports" off
+
 .include <bsd.port.pre.mk>
 
-.if defined(WITH_TCL82_MAN)
+.if defined(WITH_TCLSH_WRAPPER)
+RUN_DEPENDS+=		tclsh:${PORTSDIR}/lang/tcl-tk-wrapper
+.endif
+
+.if !defined(NO_INSTALL_MANPAGES) && defined(WITH_TCL82_MAN)
 
 MAN1=	tclsh.1
 
@@ -384,7 +391,7 @@
 	${REINPLACE_CMD} \
 		-e 's|${WRKDIRPREFIX}${.CURDIR}|$${WRKDIRPREFIX}${TCLBASE}|' \
 		${WRKSRC}/tclConfig.sh
-.if !defined(WITH_TCL82_MAN)
+.if defined(NO_INSTALL_MANPAGES) || !defined(WITH_TCL82_MAN)
 	${REINPLACE_CMD} -e 's|^MAN_INSTALL_DIR.*$$|MAN_INSTALL_DIR = ${WRKDIR}|' \
 		${WRKSRC}/Makefile
 .endif
diff -Nbur lang/tcl82.orig/pkg-deinstall.tclsh lang/tcl82/pkg-deinstall.tclsh
--- lang/tcl82.orig/pkg-deinstall.tclsh	Wed May 31 20:31:16 2000
+++ lang/tcl82/pkg-deinstall.tclsh	Thu Jan  1 01:00:00 1970
@@ -1,22 +0,0 @@
-#! /bin/sh
-#
-# Remove the ${PREFIX}/bin/tclsh script that gets installed by INSTALL.tclsh
-# if we are the last tclsh installation to be pkg_delete'd.
-#
-# $FreeBSD: ports/lang/tcl82/pkg-deinstall.tclsh,v 1.2 2000/05/31 18:31:16 hoek Exp $
-#
-
-#
-# Explicitly listing /usr/X11R6/bin here is debatable.
-#
-BINDIR="${PKG_PREFIX}/bin /usr/X11R6/bin"
-TCLSH=${PKG_PREFIX}/bin/tclsh
-
-tclshs=$(/bin/ls ${BINDIR} 2> /dev/null | \
-    egrep '^(i?tclsh[0-9]+\.[0-9]+(\_r)?([a-z][a-z])?)|otclsh$')
-
-if [ "$tclshs" = "" -a -f ${TCLSH} ] && \
-    (head -3 ${TCLSH} | grep awieYJFnsuILOnfsYEW) > /dev/null 2>&1
-then
-	rm -f ${PKG_PREFIX}/bin/tclsh
-fi
diff -Nbur lang/tcl82.orig/pkg-install.tclsh lang/tcl82/pkg-install.tclsh
--- lang/tcl82.orig/pkg-install.tclsh	Wed May 31 20:31:16 2000
+++ lang/tcl82/pkg-install.tclsh	Thu Jan  1 01:00:00 1970
@@ -1,35 +0,0 @@
-#!/bin/sh
-
-# The user may have a tclsh they want to preserve
-ver=`grep -a awieYJFnsuILOnfsYEW ${PKG_PREFIX}/bin/tclsh 2> /dev/null \
-    | sed -e 's/.*\*\*//'`
-if [ ! -e ${PKG_PREFIX}/bin/tclsh ] || [ "$ver" != "" -a "$ver" -lt 002 ]
-then
-	[ -f ${PKG_PREFIX}/bin/tclsh ] && chmod u+w ${PKG_PREFIX}/bin/tclsh
-
-	mkdir -p ${PKG_PREFIX}/bin
-	cat > ${PKG_PREFIX}/bin/tclsh <<'EOF'
-#!/bin/sh
-# Installed by ports system.  id: awieYJFnsuILOnfsYEW**002
-#
-# $FreeBSD: ports/lang/tcl82/pkg-install.tclsh,v 1.5 2000/05/31 18:31:16 hoek Exp $
-#
- 
-(
-echo "In FreeBSD, tclsh is named with a version number.  This is because"
-echo "different versions of tclsh are not compatible with each other and"
-echo "they can not all be called \"tclsh\"!  You may need multiple versions"
-echo "installed because a given port may depend on a specific version."
-echo
-echo "On your system, tclsh is installed under at least the following names:"
-echo
-for name in $(/bin/ls $(echo $PATH | sed 's/:/ /g') 2> /dev/null | egrep '^(i?tclsh[0-9]+\.[0-9]+(\_r)?([a-z][a-z])?)|otclsh$')
-do
-	echo $name
-done
-[ "$name" = "" ] && echo "No tclsh installations found, sorry."
-) 1>&2
-exit 1
-EOF
-	chmod 555 ${PKG_PREFIX}/bin/tclsh
-fi
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list