Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2007 17:49:02 +0100 (CET)
From:      Martin Matuska <martin@matuska.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/110626: [NEW PORT] lang/tcl-wrapper
Message-ID:  <20070321164902.A891F3F441@mail.vx.sk>
Resent-Message-ID: <200703211650.l2LGoGHK035762@freefall.freebsd.org>

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

>Number:         110626
>Category:       ports
>Synopsis:       [NEW PORT] lang/tcl-wrapper
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Mar 21 16:50:15 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Martin Matuska
>Release:        FreeBSD 6.2-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD 6.2-RELEASE i386/amd64
>Description:
New port: lang/tcl-wrapper

This ports installs bin/tclsh that wraps to user-defined versions
of the Tcl shells defined in etc/tclsh.conf

Obsoletes port: tcl-tk-wrapper
>How-To-Repeat:
>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	lang/tcl-wrapper
#	lang/tcl-wrapper/files
#	lang/tcl-wrapper/files/pkg-install.in
#	lang/tcl-wrapper/files/wrapper.in
#	lang/tcl-wrapper/files/pkg-deinstall.in
#	lang/tcl-wrapper/files/pkg-message.in
#	lang/tcl-wrapper/files/conf.sample.in
#	lang/tcl-wrapper/Makefile
#	lang/tcl-wrapper/pkg-descr
#
echo c - lang/tcl-wrapper
mkdir -p lang/tcl-wrapper > /dev/null 2>&1
echo c - lang/tcl-wrapper/files
mkdir -p lang/tcl-wrapper/files > /dev/null 2>&1
echo x - lang/tcl-wrapper/files/pkg-install.in
sed 's/^X//' >lang/tcl-wrapper/files/pkg-install.in << 'END-of-lang/tcl-wrapper/files/pkg-install.in'
X#!/bin/sh
X# $FreeBSD$
X#
XCP="%%CP%%"
XTX_CONF="%%TX_CONF_FULL%%"
X
Xif [ "$2" = "POST-INSTALL" ]; then
X
X	if [ ! -f "${TX_CONF}" ]; then
X		${CP} "${TX_CONF}.sample" "${TX_CONF}"
X	fi
Xfi
END-of-lang/tcl-wrapper/files/pkg-install.in
echo x - lang/tcl-wrapper/files/wrapper.in
sed 's/^X//' >lang/tcl-wrapper/files/wrapper.in << 'END-of-lang/tcl-wrapper/files/wrapper.in'
X#!/bin/sh
X# $FreeBSD: ports/lang/tcl-tk-wrapper/files/tclsh.in,v 1.1 2007/03/06 19:38:10 miwi Exp $
X#
X# Wrapper for the %%TX_PORT%% shell "%%TX_SHELL%%"
X
X%%TX_SHELL_U%%=
X%%TX_SHELL_U%%_CONF=%%TX_CONF_FULL%%
X
Xif [ -f "${%%TX_SHELL_U%%_CONF}" ]; then
X  . ${%%TX_SHELL_U%%_CONF}
X  if [ -n "${%%TX_SHELL_U%%}" ]; then
X    if [ -x "${%%TX_SHELL_U%%}" ]; then
X      exec ${%%TX_SHELL_U%%} "$@"
X    else
X      %%ECHO_CMD%% "File not found or not executable: ${%%TX_SHELL_U%%}" 
X      %%ECHO_CMD%% "Please check variable %%TX_SHELL_U%% in: ${%%TX_SHELL_U%%_CONF}"
X    fi
X  else
X    %%ECHO_CMD%% "You do not have set path to default %%TX_SHELL%% in the configuration file:"
X    %%ECHO_CMD%% "%%TX_CONF%%"
X    %%ECHO_CMD%% "Please see the sample configuration file for details:"
X    %%ECHO_CMD%% "%%TX_CONF%%.sample"
X  fi
Xelse
X  %%ECHO_CMD%% "Configuration file not found: %%TX_CONF%%"
X  %%ECHO_CMD%% "Please see the sample configuration file for details:"
X  %%ECHO_CMD%% "%%TX_CONF%%.sample"
Xfi
END-of-lang/tcl-wrapper/files/wrapper.in
echo x - lang/tcl-wrapper/files/pkg-deinstall.in
sed 's/^X//' >lang/tcl-wrapper/files/pkg-deinstall.in << 'END-of-lang/tcl-wrapper/files/pkg-deinstall.in'
X#!/bin/sh
X# $FreeBSD$
X#
XMD5="%%MD5%%"
XMD5SUM=
XRM="%%RM%%"
XTX_CONF="%%TX_CONF_FULL%%"
X
Xif [ "$2" = "POST-DEINSTALL" ]; then
X
X	if [ -f ${TX_CONF} ]; then
X		MD5CHECK=`${MD5} ${TX_CONF}`
X		if [ "x${MD5CHECK}" = "x${MD5SUM}" ]; then
X	 		${RM} ${TX_CONF}
X		fi
X	fi
Xfi
END-of-lang/tcl-wrapper/files/pkg-deinstall.in
echo x - lang/tcl-wrapper/files/pkg-message.in
sed 's/^X//' >lang/tcl-wrapper/files/pkg-message.in << 'END-of-lang/tcl-wrapper/files/pkg-message.in'
X*******************************************************************
XYou may wish to modify (or create) the configuration file:
X%%TX_CONF_FULL%%
X
XSample configuration file is located at:
X%%TX_CONF_FULL%%.sample
X*******************************************************************
END-of-lang/tcl-wrapper/files/pkg-message.in
echo x - lang/tcl-wrapper/files/conf.sample.in
sed 's/^X//' >lang/tcl-wrapper/files/conf.sample.in << 'END-of-lang/tcl-wrapper/files/conf.sample.in'
X# This is a sample configuration file for %%TX_CONF%%
X# Target for the "%%TX_SHELL%%" wrapper is configured here.
X#
X# %%TX_SHELL_U%%= full path to your %%TX_SHELL%% shell
X%%TX_SHELL_U%%=%%PREFIX%%/bin/%%TX_SHELL%%%%TX_VER%%
X#%%TX_SHELL_U%%=%%PREFIX%%/bin/%%TX_SHELL%%%%TX_VER%%-threads
END-of-lang/tcl-wrapper/files/conf.sample.in
echo x - lang/tcl-wrapper/Makefile
sed 's/^X//' >lang/tcl-wrapper/Makefile << 'END-of-lang/tcl-wrapper/Makefile'
X# Ports collection makefile for:	tcl-tk-wrapper
X# Date created:			4 March 2007
X# Whom:	      			martin@matuska.org
X#
X# $FreeBSD: ports/lang/tcl-tk-wrapper/Makefile,v 1.1 2007/03/06 19:38:10 miwi Exp $
X#
X
XPORTNAME=	wrapper
XPORTVERSION=	1.0
XCATEGORIES=	lang tcl84 tk84
XMASTER_SITES=	# empty
XPKGNAMEPREFIX=	${TX_PORT}-
XDISTFILES=	# none
XEXTRACT_ONLY=	# empty
X
XMAINTAINER=	martin@matuska.org
XCOMMENT=	Shell wrapper for ${TX_SHELL}
X
XNO_BUILD=	yes
X
XSUB_FILES=	wrapper conf.sample pkg-message pkg-install pkg-deinstall
X
XPKGINSTALL=	${WRKDIR}/pkg-install
XPKGDEINSTALL=	${WRKDIR}/pkg-deinstall
X
XTX_SHELL=	tclsh
XTX_PORT=	tcl
XTX_PORT_U=	Tcl
XTX_CAT=		lang
X
X.if defined(BUILDING_TK_WRAPPER)
XTX_SHELL=	wish
XTX_PORT=	tk
XTX_PORT_U=	Tk
XTX_CAT=		x11-toolkits
XUSE_TK=		yes
X.else
XUSE_TCL=	yes
X.endif
X
XTX_CONF=	${TX_SHELL}.conf
XTX_CONF_FULL=	${PREFIX}/etc/${TX_CONF}
X
XPLIST_FILES=	bin/${TX_SHELL} etc/${TX_CONF}.sample
X
X.include <bsd.port.pre.mk>
X
X.if defined(TK_VER)
XTX_VER=${TK_VER:S/8./8/}
X.else
XTX_VER=${TCL_VER:S/8./8/}
X.endif
X
XSUB_LIST+=	ECHO_CMD="${ECHO_CMD}" GREP="${GREP}" LS="${LS}" \
X		CP="${CP}" RM="${RM}" MD5="${MD5} -q" \
X		TX_SHELL="${TX_SHELL}" TX_SHELL_U="${TX_SHELL:U}" \
X		TX_PORT="${TX_PORT}" TX_PORT_U="${TX_PORT_U}" \
X		TX_CAT="${TX_CAT}" TX_VER="${TX_VER}" TX_CONF="${TX_CONF}" \
X		TX_CONF_FULL="${TX_CONF_FULL}"
X
Xdo-install:
X	${INSTALL_SCRIPT} ${WRKDIR}/wrapper ${PREFIX}/bin/${TX_SHELL}
X	${INSTALL_DATA} ${WRKDIR}/conf.sample ${PREFIX}/etc/${TX_CONF}.sample
X
Xpost-install:
X	@MD5SUM=`${MD5} -q ${WRKDIR}/conf.sample` && \
X	${REINPLACE_CMD} -e "s|^MD5SUM=.*$$|MD5SUM=$${MD5SUM}|g" ${WRKDIR}/pkg-deinstall
X	@PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
END-of-lang/tcl-wrapper/Makefile
echo x - lang/tcl-wrapper/pkg-descr
sed 's/^X//' >lang/tcl-wrapper/pkg-descr << 'END-of-lang/tcl-wrapper/pkg-descr'
XTcl-wrapper installs a shell wrapper for the "tclsh" command that
Xcomes with different versions of Tcl. Users can define in a configuration file
Xwhich version of the Tcl shell should be called.
X
X- Martin Matuska
Xmartin@matuska.org
END-of-lang/tcl-wrapper/pkg-descr
exit

>Release-Note:
>Audit-Trail:
>Unformatted:



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