Add tcl-memchan, an extension library to tcl, which is useful for

transferring large amounts of data between procedures or interpreters.

PR:		ports/18761
Submitted by:	Mikhail Teterin <mi@privatelabs.com>
This commit is contained in:
Neil Blakey-Milner 2000-07-31 15:36:11 +00:00
parent 3638ee2d00
commit ad814bbdd7
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=31171
9 changed files with 155 additions and 0 deletions

View file

@ -284,6 +284,7 @@
SUBDIR += str SUBDIR += str
SUBDIR += swarm SUBDIR += swarm
SUBDIR += t1lib SUBDIR += t1lib
SUBDIR += tcl-memchan
SUBDIR += tclcheck SUBDIR += tclcheck
SUBDIR += tclcl SUBDIR += tclcl
SUBDIR += tclgetopts SUBDIR += tclgetopts

View file

@ -0,0 +1,49 @@
# New ports collection makefile for: TclTrf
# Date created: May 22, 2000
# Whom: Mikhail Teterin <mi@aldan.algebra.com>
#
# $FreeBSD$
#
PORTNAME= memchan
PORTVERSION= 2.1p1
CATEGORIES= devel tcl83
MASTER_SITES= http://www.oche.de/~akupries/soft/memchan/download/
PKGNAMEPREFIX= tcl-
DISTNAME= memchan${PORTVERSION}
MAINTAINER= mi@aldan.algebra.com
BUILD_DEPENDS= tclsh${TCLV}:${PORTSDIR}/lang/tcl${TCLVND}
USE_OPENSSL= yes
WRKSRC= ${WRKDIR}/${DISTNAME}/unix
# Bzip2 library is also needed, but it requested implicitly below.
# Also, the current Bzip2 port only builds the static version :(
# bz2:${PORTSDIR}/archivers/bzip2
GNU_CONFIGURE= yes
PLIST_SUB+= TCLV=${TCLV} TCLVND=${TCLVND}
CONFIGURE_ARGS= --with-tcl-include-dir=${PREFIX}/include/tcl${TCLV} \
--with-tcl-lib-dir=${PREFIX}/lib/tcl${TCLV}
#ALL_TARGET= library
USE_BZIP2= yes
TCLV?= 8.3
TCLVND= ${TCLV:S/.//}
DDIR= ${PREFIX}/lib/tcl${TCLV}/Trf
do-install:
${MKDIR} ${PREFIX}/lib/tcl${TCLV}/memchan
${INSTALL_DATA} ${WRKSRC}/libmemchan${TCLVND}.so.1 ${FILESDIR}/pkgIndex.tcl \
${PREFIX}/lib/tcl${TCLV}/memchan
.ifndef(NOPORTDOCS)
${MKDIR} ${PREFIX}/share/doc/memchan
${CP} -pR ${WRKSRC}/../doc/html/* ${PREFIX}/share/doc/memchan/
.endif
.include <bsd.port.mk>

View file

@ -0,0 +1 @@
MD5 (memchan2.1p1.tar.bz2) = e28df221d9576a28c40416089a3640f1

View file

@ -0,0 +1,68 @@
--- configure Sat Jan 15 15:51:23 2000
+++ configure Mon May 22 18:04:39 2000
@@ -1051,65 +1051,2 @@
-
-echo $ac_n "checking for tcl library""... $ac_c" 1>&6
-echo "configure:1055: checking for tcl library" >&5
-if eval "test \"`echo '$''{'memchan_cv_lib_TCL_LIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- memchan_cv_lib_TCL_LIB=""
- places="$TCL_LIB_DIR \
- ../../tcl8.2.*/unix \
- ../../tcl8.2/unix \
- ../../tcl8.2b*/unix \
- ../../tcl8.2a*/unix \
- ../../tcl8.1.*/unix \
- ../../tcl8.1/unix \
- ../../tcl8.1b*/unix \
- ../../tcl8.1a*/unix \
- ../../tcl8.0.*/unix \
- ../../tcl8.0/unix \
- ../../tcl/unix \
- ../../tcl \
- $exec_prefix/lib \
- $prefix/lib \
- /usr/local/lib \
- /usr/lib"
- for dir in $places; do
- if test -n "$memchan_cv_lib_TCL_LIB"; then
- break
- fi
- for version in 8.2 8.1.1 8.1 8.0.5 8.0.4 8.0.3 8.0 82 811 81 805 804 803 80 ""; do
- if test -n "$memchan_cv_lib_TCL_LIB"; then
- break
- fi
- for libsuff in .so ".so.*" .sl .a; do
- if test -n "$memchan_cv_lib_TCL_LIB"; then
- break
- fi
- if test -f $dir/libtcl$version$libsuff; then
- memchan_cv_lib_TCL_LIB="-L$dir -ltcl$version"
- TCL_LIB_DIR="$dir"
- fi
- done
- done
- done
-fi
-
-echo "$ac_t""$memchan_cv_lib_TCL_LIB" 1>&6
-
-TCL_LIB="$memchan_cv_lib_TCL_LIB"
-if test -z "$TCL_LIB" ; then
- { echo "configure: error: not found; use --with-tcl-lib-dir=path" 1>&2; exit 1; }
-fi
-
-
-
-if eval "test \"`echo '$''{'memchan_cv_TCL_LIB_DIR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- memchan_cv_TCL_LIB_DIR="$TCL_LIB_DIR"
-fi
-
-TCL_LIB_DIR="$memchan_cv_TCL_LIB_DIR"
-
-
#--------------------------------------------------------------------

View file

@ -0,0 +1,7 @@
--- Makefile.in Sat Jan 15 15:51:20 2000
+++ Makefile.in Mon May 22 18:08:28 2000
@@ -244,3 +244,3 @@
rm -f $(MEMCHAN_LIB_FILE)
- @MAKE_LIB@
+ @MAKE_LIB@ -L$(prefix)/lib
$(RANLIB) $(MEMCHAN_LIB_FILE)

View file

@ -0,0 +1 @@
package ifneeded Memchan 2.1.1 [list load $dir/libmemchan.so.1]

View file

@ -0,0 +1 @@
Two new channel types for in-memory channels in TCL8

View file

@ -0,0 +1,10 @@
memchan is an extension library to the script language tcl, as created
by John Ousterhout. It provides two new channel types for in-memory
channels and the appropriate commands for their creation.
They are useful to transfer large amounts of data between procedures or
interpreters, and additionally provide an easy interface to on-the-fly
generation of code too. No need to set or append to a string, just do a
simple puts.
WWW: http://www.oche.de/~akupries/soft/memchan/

View file

@ -0,0 +1,17 @@
lib/tcl%%TCLV%%/memchan/libmemchan%%TCLVND%%.so.1
lib/tcl%%TCLV%%/memchan/pkgIndex.tcl
@dirrm lib/tcl%%TCLV%%/memchan
share/doc/memchan/img/up.gif
share/doc/memchan/memchan_ack.html
share/doc/memchan/memchan_bdist.html
share/doc/memchan/memchan_cmac.html
share/doc/memchan/memchan_cmds.html
share/doc/memchan/memchan_compile.html
share/doc/memchan/memchan_ctea.html
share/doc/memchan/memchan_cunix.html
share/doc/memchan/memchan_cwin.html
share/doc/memchan/index.html
share/doc/memchan/memchan_where.html
share/doc/memchan/sitemap.html
@dirrm share/doc/memchan/img/
@dirrm share/doc/memchan/