Skip site navigation (1)Skip section navigation (2)
Date:      Thu,  8 Mar 2007 14:57:28 +0100 (CET)
From:      Martin Matuska <martin@matuska.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/110085: [MAINTAINER] x11-toolkits/tk85
Message-ID:  <20070308135728.726EB3F452@mail.vx.sk>
Resent-Message-ID: <200703081400.l28E0C3Y009327@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         110085
>Category:       ports
>Synopsis:       [MAINTAINER] x11-toolkits/tk85
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 08 14:00:11 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 TK85_MAN and WISH_WRAPPER to OPTIONS
- removes pseudo-installation of wish in favour of new lang/tcl-tk-wrapper port
- adds support for NO_INSTALL_MANPAGES knob
- uses USE_TCL from bsd.tcl.mk
- checks if threaded or non-threaded tcl is installed
- adds CONFLICTS between threaded and non-threaded versions

Portlint -A and tinderbox do not complain.
>How-To-Repeat:
>Fix:
diff -Nbur x11-toolkits/tk85.orig/Makefile x11-toolkits/tk85/Makefile
--- x11-toolkits/tk85.orig/Makefile	Mon Feb  5 15:06:06 2007
+++ x11-toolkits/tk85/Makefile	Thu Mar  8 14:49:52 2007
@@ -7,6 +7,7 @@
 
 PORTNAME=	tk
 PORTVERSION=	8.5.a.5
+PORTREVISION=	1
 CATEGORIES=	x11-toolkits
 MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
 MASTER_SITE_SUBDIR=	tcl
@@ -15,9 +16,10 @@
 MAINTAINER=	martin@matuska.org
 COMMENT=	Graphical toolkit for TCL
 
-LIB_DEPENDS=	tcl85:${PORTSDIR}/${TCL85_PORT}
+USE_TCL=	85
+USE_TCL_BUILD=	85
 
-LATEST_LINK=	tk85
+LATEST_LINK?=	tk85
 USE_XLIB=	yes
 USE_LDCONFIG=	yes
 WRKSRC=		${WRKDIR}/${PORTNAME}${PORTVERSION:S/.a./a/}/unix
@@ -35,16 +37,39 @@
 MANCOMPRESSED=	no
 DATADIR=	${PREFIX}/share/${PORTNAME}${TK_VER}
 
-.ifdef (WITH_THREADS)
+OPTIONS=	TK85_MAN "Install tk 8.5 manpages" on \
+		WISH_WRAPPER "Require wish wrapper from ports" off
+
+.include <bsd.port.pre.mk>
+
+.if exists(${TCLSH})
+_TCL_IS_THREADED!=	${ECHO_CMD}	'puts [array names tcl_platform	-exact threaded]' | ${TCLSH} || return 0
+. if !defined(TCL_WITH_THREADS) && !defined(WITH_THREADS) && !empty(_TCL_IS_THREADED)
+TCL_WITH_THREADS=	yes
+. endif
+.endif
+
+.if defined(TCL_WITH_THREADS) || defined(WITH_THREADS)
+. if defined(_TCL_IS_THREADED) && empty(_TCL_IS_THREADED)
+IGNORE=	tcl with threads is required. Please install tcl with WITH_THREADS defined or from lang/tcl${USE_TCL} port and try again
+. endif
 CONFIGURE_ARGS+=	--enable-threads
 CONFIGURE_ENV+=		PTHREAD_LIBS="${PTHREAD_LIBS}" PTHREAD_CFLAGS="${PTHREAD_CFLAGS}"
-PKGNAMESUFFIX?=		-threads
-TCL85_PORT?=		lang/tcl85-thread
+THREADS_SUFFIX=		-threads
+USE_TCL=		85-thread
+USE_TCL_BUILD=		85-thread
+CONFLICTS=		tk-8.5*
+.include "${PORTSDIR}/Mk/bsd.tcl.mk"
 .else
-TCL85_PORT?=		lang/tcl85
+CONFIGURE_ARGS+=	--disable-threads
+CONFLICTS=		tk-threads-8.5*
+.endif
+
+.if defined(WITH_WISH_WRAPPER)
+RUN_DEPENDS+=		wish:${PORTSDIR}/lang/tcl-tk-wrapper
 .endif
 
-.if !defined(WITHOUT_TK85_MAN)
+.if !defined(NO_INSTALL_MANPAGES) && !defined(WITHOUT_TK85_MAN)
 
 MAN1=	wish.1
 MAN3=	3DBorder.3 AddOption.3 BindTable.3 CanvPsY.3 CanvTkwin.3 \
@@ -373,7 +398,7 @@
 	${REINPLACE_CMD} \
 		-e 's|${WRKDIRPREFIX}${.CURDIR}|$${WRKDIRPREFIX}${TKBASE}|' \
 		${WRKSRC}/tkConfig.sh
-.if defined(WITHOUT_TK85_MAN)
+.if defined(NO_INSTALL_MANPAGES) || defined(WITHOUT_TK85_MAN)
 	${REINPLACE_CMD} -e 's|^MAN_INSTALL_DIR.*$$|MAN_INSTALL_DIR = ${WRKDIR}|' \
 		${WRKSRC}/Makefile
 .endif
@@ -391,4 +416,4 @@
 	${ECHO_CMD} "package require Tk" | tclsh${TK_VER}
 	${ECHO_CMD} "load libtk${SHORT_TK_VER}.so" | tclsh${TK_VER}
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff -Nbur x11-toolkits/tk85.orig/pkg-deinstall.wish x11-toolkits/tk85/pkg-deinstall.wish
--- x11-toolkits/tk85.orig/pkg-deinstall.wish	Mon Feb  5 14:48:38 2007
+++ x11-toolkits/tk85/pkg-deinstall.wish	Thu Jan  1 01:00:00 1970
@@ -1,22 +0,0 @@
-#! /bin/sh
-#
-# Remove the ${PREFIX}/bin/wish script that gets installed by INSTALL.wish
-# if we are the last wish installation to be pkg_delete'd.
-#
-# $FreeBSD: ports/x11-toolkits/tk85/pkg-deinstall.wish,v 1.1 2007/02/05 13:48:38 miwi Exp $
-#
-
-#
-# Explicitly listing /usr/X11R6/bin here is debatable.
-#
-BINDIR="${PKG_PREFIX}/bin /usr/X11R6/bin"
-WISH=${PKG_PREFIX}/bin/wish
-
-wishes=$(/bin/ls ${BINDIR} 2> /dev/null | \
-    egrep '^o?wish(step)?(x|([0-9]+\.[0-9]+))([a-z][a-z])?$')
-
-if [ "$wishes" = "" -a -f ${WISH} ] && \
-    (head -3 ${WISH} | grep awieYJFnsuILOnfsYEW) > /dev/null 2>&1
-then
-	rm -f ${PKG_PREFIX}/bin/wish
-fi
diff -Nbur x11-toolkits/tk85.orig/pkg-install.wish x11-toolkits/tk85/pkg-install.wish
--- x11-toolkits/tk85.orig/pkg-install.wish	Mon Feb  5 14:48:38 2007
+++ x11-toolkits/tk85/pkg-install.wish	Thu Jan  1 01:00:00 1970
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-# The user may have a wish they want to preserve
-ver=`grep -a awieYJFnsuILOnfsYEW ${PKG_PREFIX}/bin/wish 2> /dev/null \
-    | sed -e 's/.*\*\*//'`
-if [ ! -e ${PKG_PREFIX}/bin/wish ] || [ "$ver" != "" -a "$ver" -lt 001 ]
-then
-	[ -f ${PKG_PREFIX}/bin/wish ] && chmod u+w ${PKG_PREFIX}/bin/wish
-
-	mkdir -p ${PKG_PREFIX}/bin
-	cat > ${PKG_PREFIX}/bin/wish <<'EOF'
-#!/bin/sh
-# Installed by ports system.  id: awieYJFnsuILOnfsYEW**001
- 
-(
-echo "In FreeBSD, wish is named with a version number.  This is because"
-echo "different versions of wish are not compatible with each other and"
-echo "they can not all be called \"wish\"!  You may need multiple versions"
-echo "installed because a given port may depend on a specific version."
-echo
-echo "On your system, wish is installed under at least the following names:"
-echo
-for name in $(/bin/ls $(echo $PATH | sed 's/:/ /g') 2> /dev/null | egrep '^wish(step)?(x|([0-9]+\.[0-9]+))([a-z][a-z])?$')
-do
-	echo $name
-done
-[ "$name" = "" ] && echo "No wish installations found, sorry."
-) 1>&2
-exit 1
-EOF
-	chmod a+rx ${PKG_PREFIX}/bin/wish
-fi
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070308135728.726EB3F452>