aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1997-08-20 18:33:43 +0800
committerjkh <jkh@FreeBSD.org>1997-08-20 18:33:43 +0800
commitff5cc065d7f66c79365bcdedca4dbf98fe8aef4b (patch)
tree76a1d01efdc3f253ce60e864e2bdce6db084f39e
parent4e44f617dd4bae01c7070a66eae73e1f25d742c1 (diff)
downloadfreebsd-ports-gnome-ff5cc065d7f66c79365bcdedca4dbf98fe8aef4b.tar.gz
freebsd-ports-gnome-ff5cc065d7f66c79365bcdedca4dbf98fe8aef4b.tar.zst
freebsd-ports-gnome-ff5cc065d7f66c79365bcdedca4dbf98fe8aef4b.zip
Import TCL 8.0 as a port for the 2.x users and others who want it here
as an option. Reviewed by: asami
-rw-r--r--lang/tcl80/Makefile27
-rw-r--r--lang/tcl80/distinfo1
-rw-r--r--lang/tcl80/files/patch-aa68
-rw-r--r--lang/tcl80/pkg-comment1
-rw-r--r--lang/tcl80/pkg-descr7
-rw-r--r--lang/tcl80/pkg-plist184
-rw-r--r--lang/tcl82/Makefile27
-rw-r--r--lang/tcl82/distinfo1
-rw-r--r--lang/tcl82/files/patch-aa68
-rw-r--r--lang/tcl82/pkg-comment1
-rw-r--r--lang/tcl82/pkg-descr7
-rw-r--r--lang/tcl82/pkg-plist184
-rw-r--r--lang/tcl83/Makefile27
-rw-r--r--lang/tcl83/distinfo1
-rw-r--r--lang/tcl83/files/patch-aa68
-rw-r--r--lang/tcl83/pkg-comment1
-rw-r--r--lang/tcl83/pkg-descr7
-rw-r--r--lang/tcl83/pkg-plist184
-rw-r--r--lang/tcl84/Makefile27
-rw-r--r--lang/tcl84/distinfo1
-rw-r--r--lang/tcl84/files/patch-aa68
-rw-r--r--lang/tcl84/pkg-comment1
-rw-r--r--lang/tcl84/pkg-descr7
-rw-r--r--lang/tcl84/pkg-plist184
24 files changed, 1152 insertions, 0 deletions
diff --git a/lang/tcl80/Makefile b/lang/tcl80/Makefile
new file mode 100644
index 000000000000..7bd3c81b5fb5
--- /dev/null
+++ b/lang/tcl80/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: tcl8.0
+# Version required: 8.0
+# Date created: 19 August 1997
+# Whom: jkh
+#
+# $Id$
+#
+
+DISTNAME= tcl8.0
+PKGNAME= tcl-8.0
+CATEGORIES= lang
+MASTER_SITES= ftp://ftp.sunlabs.com/pub/tcl/
+
+MAINTAINER= jkh@freebsd.org
+
+WRKSRC= ${WRKDIR}/${DISTNAME}/unix
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --enable-shared
+CONFIGURE_ENV= PORTSDIR=${PORTSDIR}
+
+post-install:
+ ${LDCONFIG} -m ${PREFIX}/lib
+
+test:
+ cd ${WRKSRC} && ${MAKE} test
+
+.include <bsd.port.mk>
diff --git a/lang/tcl80/distinfo b/lang/tcl80/distinfo
new file mode 100644
index 000000000000..4eb3c5390a37
--- /dev/null
+++ b/lang/tcl80/distinfo
@@ -0,0 +1 @@
+MD5 (tcl8.0.tar.gz) = f1b78b79a40fd8e90e84186b42105b71
diff --git a/lang/tcl80/files/patch-aa b/lang/tcl80/files/patch-aa
new file mode 100644
index 000000000000..31e0c0e94885
--- /dev/null
+++ b/lang/tcl80/files/patch-aa
@@ -0,0 +1,68 @@
+--- Makefile.in.orig Fri Aug 15 13:17:28 1997
++++ Makefile.in Wed Aug 20 02:55:43 1997
+@@ -55,7 +55,7 @@
+ BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
+
+ # Directory in which to install the include file tcl.h:
+-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
++INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)
+
+ # Top-level directory in which to install manual entries:
+ MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
+@@ -138,7 +138,7 @@
+ # "install" around; better to use the install-sh script that comes
+ # with the distribution, which is slower but guaranteed to work.
+
+-INSTALL = @srcdir@/install-sh -c
++INSTALL = install -c
+ INSTALL_PROGRAM = ${INSTALL}
+ INSTALL_DATA = ${INSTALL} -m 644
+
+@@ -432,7 +432,8 @@
+ @echo "Installing tclsh"
+ @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
+ @echo "Installing tclConfig.sh"
+- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
++ @mkdir -p $(SCRIPT_INSTALL_DIR)
++ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
+
+ install-libraries:
+ @for i in $(INSTALL_ROOT)$(prefix)/lib $(INCLUDE_INSTALL_DIR) \
+@@ -483,28 +484,28 @@
+ @cd $(TOP_DIR)/doc; for i in *.1; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN1_INSTALL_DIR)/$$i; \
++ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN1_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.3; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN3_INSTALL_DIR)/$$i; \
++ rm -f $(MAN3_INSTALL_DIR)/$$i $(MAN3_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN3_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN3_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN3_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.n; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MANN_INSTALL_DIR)/$$i; \
++ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MANN_INSTALL_DIR)/$$i; \
+- chmod 444 $(MANN_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
+
diff --git a/lang/tcl80/pkg-comment b/lang/tcl80/pkg-comment
new file mode 100644
index 000000000000..12707ff6a415
--- /dev/null
+++ b/lang/tcl80/pkg-comment
@@ -0,0 +1 @@
+Tool Command Language.
diff --git a/lang/tcl80/pkg-descr b/lang/tcl80/pkg-descr
new file mode 100644
index 000000000000..1dcfb46167a8
--- /dev/null
+++ b/lang/tcl80/pkg-descr
@@ -0,0 +1,7 @@
+This package contains the binary release of Tcl8.0, an embeddable tool
+command language.
+
+The best way to get started with Tcl is to read ``Tcl and the Tk
+Toolkit'' by John K. Ousterhout, Addison-Wesley, ISBN 0-201-63337-X.
+
+A full set of manual pages is also provided with this package.
diff --git a/lang/tcl80/pkg-plist b/lang/tcl80/pkg-plist
new file mode 100644
index 000000000000..d5a3c85c7faa
--- /dev/null
+++ b/lang/tcl80/pkg-plist
@@ -0,0 +1,184 @@
+bin/tclsh8.0
+lib/libtcl80.so.1.0
+@exec /sbin/ldconfig -m %B
+include/tcl8.0/tcl.h
+lib/tcl8.0/history.tcl
+lib/tcl8.0/init.tcl
+lib/tcl8.0/ldAout.tcl
+lib/tcl8.0/parray.tcl
+lib/tcl8.0/safe.tcl
+lib/tcl8.0/word.tcl
+lib/tcl8.0/tclAppInit.c
+lib/tcl8.0/ldAix
+lib/tcl8.0/tclIndex
+lib/tcl8.0/tclConfig.sh
+lib/tcl8.0/http2.0/http.tcl
+lib/tcl8.0/http2.0/pkgIndex.tcl
+lib/tcl8.0/http1.0/http.tcl
+lib/tcl8.0/http1.0/pkgIndex.tcl
+lib/tcl8.0/opt0.1/optparse.tcl
+lib/tcl8.0/opt0.1/pkgIndex.tcl
+man/man1/tclsh.1.gz
+man/man3/Alloc.3.gz
+man/man3/AddErrInfo.3.gz
+man/man3/AllowExc.3.gz
+man/man3/AppInit.3.gz
+man/man3/AssocData.3.gz
+man/man3/Async.3.gz
+man/man3/BackgdErr.3.gz
+man/man3/Backslash.3.gz
+man/man3/BoolObj.3.gz
+man/man3/CallDel.3.gz
+man/man3/CmdCmplt.3.gz
+man/man3/Concat.3.gz
+man/man3/CrtChannel.3.gz
+man/man3/CrtChnlHdlr.3.gz
+man/man3/CrtCloseHdlr.3.gz
+man/man3/Eval.3.gz
+man/man3/CrtCommand.3.gz
+man/man3/CrtFileHdlr.3.gz
+man/man3/CrtInterp.3.gz
+man/man3/CrtMathFnc.3.gz
+man/man3/CrtObjCmd.3.gz
+man/man3/CrtSlave.3.gz
+man/man3/CrtTimerHdlr.3.gz
+man/man3/CrtTrace.3.gz
+man/man3/DString.3.gz
+man/man3/DetachPids.3.gz
+man/man3/DoOneEvent.3.gz
+man/man3/DoWhenIdle.3.gz
+man/man3/DoubleObj.3.gz
+man/man3/EvalObj.3.gz
+man/man3/Exit.3.gz
+man/man3/ExprLong.3.gz
+man/man3/ExprLongObj.3.gz
+man/man3/FindExec.3.gz
+man/man3/GetIndex.3.gz
+man/man3/GetInt.3.gz
+man/man3/GetOpnFl.3.gz
+man/man3/GetStdChan.3.gz
+man/man3/Hash.3.gz
+man/man3/IntObj.3.gz
+man/man3/Interp.3.gz
+man/man3/LinkVar.3.gz
+man/man3/ListObj.3.gz
+man/man3/Notifier.3.gz
+man/man3/ObjSetVar.3.gz
+man/man3/Object.3.gz
+man/man3/ObjectType.3.gz
+man/man3/OpenFileChnl.3.gz
+man/man3/OpenTcp.3.gz
+man/man3/PkgRequire.3.gz
+man/man3/Preserve.3.gz
+man/man3/PrintDbl.3.gz
+man/man3/RecEvalObj.3.gz
+man/man3/RecordEval.3.gz
+man/man3/RegExp.3.gz
+man/man3/SetVar.3.gz
+man/man3/SetErrno.3.gz
+man/man3/SetRecLmt.3.gz
+man/man3/SetResult.3.gz
+man/man3/Sleep.3.gz
+man/man3/SplitList.3.gz
+man/man3/SplitPath.3.gz
+man/man3/StaticPkg.3.gz
+man/man3/StrMatch.3.gz
+man/man3/StringObj.3.gz
+man/man3/Tcl_Main.3.gz
+man/man3/TraceVar.3.gz
+man/man3/Translate.3.gz
+man/man3/UpVar.3.gz
+man/man3/WrongNumArgs.3.gz
+man/mann/Tcl.n.gz
+man/mann/after.n.gz
+man/mann/append.n.gz
+man/mann/array.n.gz
+man/mann/bgerror.n.gz
+man/mann/binary.n.gz
+man/mann/break.n.gz
+man/mann/case.n.gz
+man/mann/catch.n.gz
+man/mann/cd.n.gz
+man/mann/clock.n.gz
+man/mann/close.n.gz
+man/mann/concat.n.gz
+man/mann/continue.n.gz
+man/mann/eof.n.gz
+man/mann/error.n.gz
+man/mann/eval.n.gz
+man/mann/exec.n.gz
+man/mann/exit.n.gz
+man/mann/expr.n.gz
+man/mann/fblocked.n.gz
+man/mann/fconfigure.n.gz
+man/mann/fcopy.n.gz
+man/mann/if.n.gz
+man/mann/file.n.gz
+man/mann/fileevent.n.gz
+man/mann/filename.n.gz
+man/mann/flush.n.gz
+man/mann/for.n.gz
+man/mann/foreach.n.gz
+man/mann/format.n.gz
+man/mann/gets.n.gz
+man/mann/glob.n.gz
+man/mann/global.n.gz
+man/mann/history.n.gz
+man/mann/http.n.gz
+man/mann/incr.n.gz
+man/mann/info.n.gz
+man/mann/interp.n.gz
+man/mann/join.n.gz
+man/mann/lappend.n.gz
+man/mann/library.n.gz
+man/mann/lindex.n.gz
+man/mann/linsert.n.gz
+man/mann/list.n.gz
+man/mann/llength.n.gz
+man/mann/load.n.gz
+man/mann/lrange.n.gz
+man/mann/lreplace.n.gz
+man/mann/lsearch.n.gz
+man/mann/lsort.n.gz
+man/mann/namespace.n.gz
+man/mann/open.n.gz
+man/mann/package.n.gz
+man/mann/pid.n.gz
+man/mann/pkgMkIndex.n.gz
+man/mann/proc.n.gz
+man/mann/puts.n.gz
+man/mann/pwd.n.gz
+man/mann/read.n.gz
+man/mann/regexp.n.gz
+man/mann/registry.n.gz
+man/mann/regsub.n.gz
+man/mann/rename.n.gz
+man/mann/resource.n.gz
+man/mann/return.n.gz
+man/mann/safe.n.gz
+man/mann/scan.n.gz
+man/mann/seek.n.gz
+man/mann/set.n.gz
+man/mann/socket.n.gz
+man/mann/source.n.gz
+man/mann/split.n.gz
+man/mann/string.n.gz
+man/mann/subst.n.gz
+man/mann/switch.n.gz
+man/mann/tclvars.n.gz
+man/mann/tell.n.gz
+man/mann/time.n.gz
+man/mann/trace.n.gz
+man/mann/unknown.n.gz
+man/mann/unset.n.gz
+man/mann/update.n.gz
+man/mann/uplevel.n.gz
+man/mann/upvar.n.gz
+man/mann/variable.n.gz
+man/mann/vwait.n.gz
+man/mann/while.n.gz
+@dirrm include/tcl8.0
+@dirrm lib/tcl8.0/http2.0
+@dirrm lib/tcl8.0/http1.0
+@dirrm lib/tcl8.0/opt0.1
+@dirrm lib/tcl8.0
diff --git a/lang/tcl82/Makefile b/lang/tcl82/Makefile
new file mode 100644
index 000000000000..7bd3c81b5fb5
--- /dev/null
+++ b/lang/tcl82/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: tcl8.0
+# Version required: 8.0
+# Date created: 19 August 1997
+# Whom: jkh
+#
+# $Id$
+#
+
+DISTNAME= tcl8.0
+PKGNAME= tcl-8.0
+CATEGORIES= lang
+MASTER_SITES= ftp://ftp.sunlabs.com/pub/tcl/
+
+MAINTAINER= jkh@freebsd.org
+
+WRKSRC= ${WRKDIR}/${DISTNAME}/unix
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --enable-shared
+CONFIGURE_ENV= PORTSDIR=${PORTSDIR}
+
+post-install:
+ ${LDCONFIG} -m ${PREFIX}/lib
+
+test:
+ cd ${WRKSRC} && ${MAKE} test
+
+.include <bsd.port.mk>
diff --git a/lang/tcl82/distinfo b/lang/tcl82/distinfo
new file mode 100644
index 000000000000..4eb3c5390a37
--- /dev/null
+++ b/lang/tcl82/distinfo
@@ -0,0 +1 @@
+MD5 (tcl8.0.tar.gz) = f1b78b79a40fd8e90e84186b42105b71
diff --git a/lang/tcl82/files/patch-aa b/lang/tcl82/files/patch-aa
new file mode 100644
index 000000000000..31e0c0e94885
--- /dev/null
+++ b/lang/tcl82/files/patch-aa
@@ -0,0 +1,68 @@
+--- Makefile.in.orig Fri Aug 15 13:17:28 1997
++++ Makefile.in Wed Aug 20 02:55:43 1997
+@@ -55,7 +55,7 @@
+ BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
+
+ # Directory in which to install the include file tcl.h:
+-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
++INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)
+
+ # Top-level directory in which to install manual entries:
+ MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
+@@ -138,7 +138,7 @@
+ # "install" around; better to use the install-sh script that comes
+ # with the distribution, which is slower but guaranteed to work.
+
+-INSTALL = @srcdir@/install-sh -c
++INSTALL = install -c
+ INSTALL_PROGRAM = ${INSTALL}
+ INSTALL_DATA = ${INSTALL} -m 644
+
+@@ -432,7 +432,8 @@
+ @echo "Installing tclsh"
+ @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
+ @echo "Installing tclConfig.sh"
+- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
++ @mkdir -p $(SCRIPT_INSTALL_DIR)
++ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
+
+ install-libraries:
+ @for i in $(INSTALL_ROOT)$(prefix)/lib $(INCLUDE_INSTALL_DIR) \
+@@ -483,28 +484,28 @@
+ @cd $(TOP_DIR)/doc; for i in *.1; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN1_INSTALL_DIR)/$$i; \
++ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN1_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.3; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN3_INSTALL_DIR)/$$i; \
++ rm -f $(MAN3_INSTALL_DIR)/$$i $(MAN3_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN3_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN3_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN3_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.n; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MANN_INSTALL_DIR)/$$i; \
++ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MANN_INSTALL_DIR)/$$i; \
+- chmod 444 $(MANN_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
+
diff --git a/lang/tcl82/pkg-comment b/lang/tcl82/pkg-comment
new file mode 100644
index 000000000000..12707ff6a415
--- /dev/null
+++ b/lang/tcl82/pkg-comment
@@ -0,0 +1 @@
+Tool Command Language.
diff --git a/lang/tcl82/pkg-descr b/lang/tcl82/pkg-descr
new file mode 100644
index 000000000000..1dcfb46167a8
--- /dev/null
+++ b/lang/tcl82/pkg-descr
@@ -0,0 +1,7 @@
+This package contains the binary release of Tcl8.0, an embeddable tool
+command language.
+
+The best way to get started with Tcl is to read ``Tcl and the Tk
+Toolkit'' by John K. Ousterhout, Addison-Wesley, ISBN 0-201-63337-X.
+
+A full set of manual pages is also provided with this package.
diff --git a/lang/tcl82/pkg-plist b/lang/tcl82/pkg-plist
new file mode 100644
index 000000000000..d5a3c85c7faa
--- /dev/null
+++ b/lang/tcl82/pkg-plist
@@ -0,0 +1,184 @@
+bin/tclsh8.0
+lib/libtcl80.so.1.0
+@exec /sbin/ldconfig -m %B
+include/tcl8.0/tcl.h
+lib/tcl8.0/history.tcl
+lib/tcl8.0/init.tcl
+lib/tcl8.0/ldAout.tcl
+lib/tcl8.0/parray.tcl
+lib/tcl8.0/safe.tcl
+lib/tcl8.0/word.tcl
+lib/tcl8.0/tclAppInit.c
+lib/tcl8.0/ldAix
+lib/tcl8.0/tclIndex
+lib/tcl8.0/tclConfig.sh
+lib/tcl8.0/http2.0/http.tcl
+lib/tcl8.0/http2.0/pkgIndex.tcl
+lib/tcl8.0/http1.0/http.tcl
+lib/tcl8.0/http1.0/pkgIndex.tcl
+lib/tcl8.0/opt0.1/optparse.tcl
+lib/tcl8.0/opt0.1/pkgIndex.tcl
+man/man1/tclsh.1.gz
+man/man3/Alloc.3.gz
+man/man3/AddErrInfo.3.gz
+man/man3/AllowExc.3.gz
+man/man3/AppInit.3.gz
+man/man3/AssocData.3.gz
+man/man3/Async.3.gz
+man/man3/BackgdErr.3.gz
+man/man3/Backslash.3.gz
+man/man3/BoolObj.3.gz
+man/man3/CallDel.3.gz
+man/man3/CmdCmplt.3.gz
+man/man3/Concat.3.gz
+man/man3/CrtChannel.3.gz
+man/man3/CrtChnlHdlr.3.gz
+man/man3/CrtCloseHdlr.3.gz
+man/man3/Eval.3.gz
+man/man3/CrtCommand.3.gz
+man/man3/CrtFileHdlr.3.gz
+man/man3/CrtInterp.3.gz
+man/man3/CrtMathFnc.3.gz
+man/man3/CrtObjCmd.3.gz
+man/man3/CrtSlave.3.gz
+man/man3/CrtTimerHdlr.3.gz
+man/man3/CrtTrace.3.gz
+man/man3/DString.3.gz
+man/man3/DetachPids.3.gz
+man/man3/DoOneEvent.3.gz
+man/man3/DoWhenIdle.3.gz
+man/man3/DoubleObj.3.gz
+man/man3/EvalObj.3.gz
+man/man3/Exit.3.gz
+man/man3/ExprLong.3.gz
+man/man3/ExprLongObj.3.gz
+man/man3/FindExec.3.gz
+man/man3/GetIndex.3.gz
+man/man3/GetInt.3.gz
+man/man3/GetOpnFl.3.gz
+man/man3/GetStdChan.3.gz
+man/man3/Hash.3.gz
+man/man3/IntObj.3.gz
+man/man3/Interp.3.gz
+man/man3/LinkVar.3.gz
+man/man3/ListObj.3.gz
+man/man3/Notifier.3.gz
+man/man3/ObjSetVar.3.gz
+man/man3/Object.3.gz
+man/man3/ObjectType.3.gz
+man/man3/OpenFileChnl.3.gz
+man/man3/OpenTcp.3.gz
+man/man3/PkgRequire.3.gz
+man/man3/Preserve.3.gz
+man/man3/PrintDbl.3.gz
+man/man3/RecEvalObj.3.gz
+man/man3/RecordEval.3.gz
+man/man3/RegExp.3.gz
+man/man3/SetVar.3.gz
+man/man3/SetErrno.3.gz
+man/man3/SetRecLmt.3.gz
+man/man3/SetResult.3.gz
+man/man3/Sleep.3.gz
+man/man3/SplitList.3.gz
+man/man3/SplitPath.3.gz
+man/man3/StaticPkg.3.gz
+man/man3/StrMatch.3.gz
+man/man3/StringObj.3.gz
+man/man3/Tcl_Main.3.gz
+man/man3/TraceVar.3.gz
+man/man3/Translate.3.gz
+man/man3/UpVar.3.gz
+man/man3/WrongNumArgs.3.gz
+man/mann/Tcl.n.gz
+man/mann/after.n.gz
+man/mann/append.n.gz
+man/mann/array.n.gz
+man/mann/bgerror.n.gz
+man/mann/binary.n.gz
+man/mann/break.n.gz
+man/mann/case.n.gz
+man/mann/catch.n.gz
+man/mann/cd.n.gz
+man/mann/clock.n.gz
+man/mann/close.n.gz
+man/mann/concat.n.gz
+man/mann/continue.n.gz
+man/mann/eof.n.gz
+man/mann/error.n.gz
+man/mann/eval.n.gz
+man/mann/exec.n.gz
+man/mann/exit.n.gz
+man/mann/expr.n.gz
+man/mann/fblocked.n.gz
+man/mann/fconfigure.n.gz
+man/mann/fcopy.n.gz
+man/mann/if.n.gz
+man/mann/file.n.gz
+man/mann/fileevent.n.gz
+man/mann/filename.n.gz
+man/mann/flush.n.gz
+man/mann/for.n.gz
+man/mann/foreach.n.gz
+man/mann/format.n.gz
+man/mann/gets.n.gz
+man/mann/glob.n.gz
+man/mann/global.n.gz
+man/mann/history.n.gz
+man/mann/http.n.gz
+man/mann/incr.n.gz
+man/mann/info.n.gz
+man/mann/interp.n.gz
+man/mann/join.n.gz
+man/mann/lappend.n.gz
+man/mann/library.n.gz
+man/mann/lindex.n.gz
+man/mann/linsert.n.gz
+man/mann/list.n.gz
+man/mann/llength.n.gz
+man/mann/load.n.gz
+man/mann/lrange.n.gz
+man/mann/lreplace.n.gz
+man/mann/lsearch.n.gz
+man/mann/lsort.n.gz
+man/mann/namespace.n.gz
+man/mann/open.n.gz
+man/mann/package.n.gz
+man/mann/pid.n.gz
+man/mann/pkgMkIndex.n.gz
+man/mann/proc.n.gz
+man/mann/puts.n.gz
+man/mann/pwd.n.gz
+man/mann/read.n.gz
+man/mann/regexp.n.gz
+man/mann/registry.n.gz
+man/mann/regsub.n.gz
+man/mann/rename.n.gz
+man/mann/resource.n.gz
+man/mann/return.n.gz
+man/mann/safe.n.gz
+man/mann/scan.n.gz
+man/mann/seek.n.gz
+man/mann/set.n.gz
+man/mann/socket.n.gz
+man/mann/source.n.gz
+man/mann/split.n.gz
+man/mann/string.n.gz
+man/mann/subst.n.gz
+man/mann/switch.n.gz
+man/mann/tclvars.n.gz
+man/mann/tell.n.gz
+man/mann/time.n.gz
+man/mann/trace.n.gz
+man/mann/unknown.n.gz
+man/mann/unset.n.gz
+man/mann/update.n.gz
+man/mann/uplevel.n.gz
+man/mann/upvar.n.gz
+man/mann/variable.n.gz
+man/mann/vwait.n.gz
+man/mann/while.n.gz
+@dirrm include/tcl8.0
+@dirrm lib/tcl8.0/http2.0
+@dirrm lib/tcl8.0/http1.0
+@dirrm lib/tcl8.0/opt0.1
+@dirrm lib/tcl8.0
diff --git a/lang/tcl83/Makefile b/lang/tcl83/Makefile
new file mode 100644
index 000000000000..7bd3c81b5fb5
--- /dev/null
+++ b/lang/tcl83/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: tcl8.0
+# Version required: 8.0
+# Date created: 19 August 1997
+# Whom: jkh
+#
+# $Id$
+#
+
+DISTNAME= tcl8.0
+PKGNAME= tcl-8.0
+CATEGORIES= lang
+MASTER_SITES= ftp://ftp.sunlabs.com/pub/tcl/
+
+MAINTAINER= jkh@freebsd.org
+
+WRKSRC= ${WRKDIR}/${DISTNAME}/unix
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --enable-shared
+CONFIGURE_ENV= PORTSDIR=${PORTSDIR}
+
+post-install:
+ ${LDCONFIG} -m ${PREFIX}/lib
+
+test:
+ cd ${WRKSRC} && ${MAKE} test
+
+.include <bsd.port.mk>
diff --git a/lang/tcl83/distinfo b/lang/tcl83/distinfo
new file mode 100644
index 000000000000..4eb3c5390a37
--- /dev/null
+++ b/lang/tcl83/distinfo
@@ -0,0 +1 @@
+MD5 (tcl8.0.tar.gz) = f1b78b79a40fd8e90e84186b42105b71
diff --git a/lang/tcl83/files/patch-aa b/lang/tcl83/files/patch-aa
new file mode 100644
index 000000000000..31e0c0e94885
--- /dev/null
+++ b/lang/tcl83/files/patch-aa
@@ -0,0 +1,68 @@
+--- Makefile.in.orig Fri Aug 15 13:17:28 1997
++++ Makefile.in Wed Aug 20 02:55:43 1997
+@@ -55,7 +55,7 @@
+ BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
+
+ # Directory in which to install the include file tcl.h:
+-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
++INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)
+
+ # Top-level directory in which to install manual entries:
+ MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
+@@ -138,7 +138,7 @@
+ # "install" around; better to use the install-sh script that comes
+ # with the distribution, which is slower but guaranteed to work.
+
+-INSTALL = @srcdir@/install-sh -c
++INSTALL = install -c
+ INSTALL_PROGRAM = ${INSTALL}
+ INSTALL_DATA = ${INSTALL} -m 644
+
+@@ -432,7 +432,8 @@
+ @echo "Installing tclsh"
+ @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
+ @echo "Installing tclConfig.sh"
+- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
++ @mkdir -p $(SCRIPT_INSTALL_DIR)
++ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
+
+ install-libraries:
+ @for i in $(INSTALL_ROOT)$(prefix)/lib $(INCLUDE_INSTALL_DIR) \
+@@ -483,28 +484,28 @@
+ @cd $(TOP_DIR)/doc; for i in *.1; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN1_INSTALL_DIR)/$$i; \
++ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN1_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.3; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN3_INSTALL_DIR)/$$i; \
++ rm -f $(MAN3_INSTALL_DIR)/$$i $(MAN3_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN3_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN3_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN3_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.n; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MANN_INSTALL_DIR)/$$i; \
++ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MANN_INSTALL_DIR)/$$i; \
+- chmod 444 $(MANN_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
+
diff --git a/lang/tcl83/pkg-comment b/lang/tcl83/pkg-comment
new file mode 100644
index 000000000000..12707ff6a415
--- /dev/null
+++ b/lang/tcl83/pkg-comment
@@ -0,0 +1 @@
+Tool Command Language.
diff --git a/lang/tcl83/pkg-descr b/lang/tcl83/pkg-descr
new file mode 100644
index 000000000000..1dcfb46167a8
--- /dev/null
+++ b/lang/tcl83/pkg-descr
@@ -0,0 +1,7 @@
+This package contains the binary release of Tcl8.0, an embeddable tool
+command language.
+
+The best way to get started with Tcl is to read ``Tcl and the Tk
+Toolkit'' by John K. Ousterhout, Addison-Wesley, ISBN 0-201-63337-X.
+
+A full set of manual pages is also provided with this package.
diff --git a/lang/tcl83/pkg-plist b/lang/tcl83/pkg-plist
new file mode 100644
index 000000000000..d5a3c85c7faa
--- /dev/null
+++ b/lang/tcl83/pkg-plist
@@ -0,0 +1,184 @@
+bin/tclsh8.0
+lib/libtcl80.so.1.0
+@exec /sbin/ldconfig -m %B
+include/tcl8.0/tcl.h
+lib/tcl8.0/history.tcl
+lib/tcl8.0/init.tcl
+lib/tcl8.0/ldAout.tcl
+lib/tcl8.0/parray.tcl
+lib/tcl8.0/safe.tcl
+lib/tcl8.0/word.tcl
+lib/tcl8.0/tclAppInit.c
+lib/tcl8.0/ldAix
+lib/tcl8.0/tclIndex
+lib/tcl8.0/tclConfig.sh
+lib/tcl8.0/http2.0/http.tcl
+lib/tcl8.0/http2.0/pkgIndex.tcl
+lib/tcl8.0/http1.0/http.tcl
+lib/tcl8.0/http1.0/pkgIndex.tcl
+lib/tcl8.0/opt0.1/optparse.tcl
+lib/tcl8.0/opt0.1/pkgIndex.tcl
+man/man1/tclsh.1.gz
+man/man3/Alloc.3.gz
+man/man3/AddErrInfo.3.gz
+man/man3/AllowExc.3.gz
+man/man3/AppInit.3.gz
+man/man3/AssocData.3.gz
+man/man3/Async.3.gz
+man/man3/BackgdErr.3.gz
+man/man3/Backslash.3.gz
+man/man3/BoolObj.3.gz
+man/man3/CallDel.3.gz
+man/man3/CmdCmplt.3.gz
+man/man3/Concat.3.gz
+man/man3/CrtChannel.3.gz
+man/man3/CrtChnlHdlr.3.gz
+man/man3/CrtCloseHdlr.3.gz
+man/man3/Eval.3.gz
+man/man3/CrtCommand.3.gz
+man/man3/CrtFileHdlr.3.gz
+man/man3/CrtInterp.3.gz
+man/man3/CrtMathFnc.3.gz
+man/man3/CrtObjCmd.3.gz
+man/man3/CrtSlave.3.gz
+man/man3/CrtTimerHdlr.3.gz
+man/man3/CrtTrace.3.gz
+man/man3/DString.3.gz
+man/man3/DetachPids.3.gz
+man/man3/DoOneEvent.3.gz
+man/man3/DoWhenIdle.3.gz
+man/man3/DoubleObj.3.gz
+man/man3/EvalObj.3.gz
+man/man3/Exit.3.gz
+man/man3/ExprLong.3.gz
+man/man3/ExprLongObj.3.gz
+man/man3/FindExec.3.gz
+man/man3/GetIndex.3.gz
+man/man3/GetInt.3.gz
+man/man3/GetOpnFl.3.gz
+man/man3/GetStdChan.3.gz
+man/man3/Hash.3.gz
+man/man3/IntObj.3.gz
+man/man3/Interp.3.gz
+man/man3/LinkVar.3.gz
+man/man3/ListObj.3.gz
+man/man3/Notifier.3.gz
+man/man3/ObjSetVar.3.gz
+man/man3/Object.3.gz
+man/man3/ObjectType.3.gz
+man/man3/OpenFileChnl.3.gz
+man/man3/OpenTcp.3.gz
+man/man3/PkgRequire.3.gz
+man/man3/Preserve.3.gz
+man/man3/PrintDbl.3.gz
+man/man3/RecEvalObj.3.gz
+man/man3/RecordEval.3.gz
+man/man3/RegExp.3.gz
+man/man3/SetVar.3.gz
+man/man3/SetErrno.3.gz
+man/man3/SetRecLmt.3.gz
+man/man3/SetResult.3.gz
+man/man3/Sleep.3.gz
+man/man3/SplitList.3.gz
+man/man3/SplitPath.3.gz
+man/man3/StaticPkg.3.gz
+man/man3/StrMatch.3.gz
+man/man3/StringObj.3.gz
+man/man3/Tcl_Main.3.gz
+man/man3/TraceVar.3.gz
+man/man3/Translate.3.gz
+man/man3/UpVar.3.gz
+man/man3/WrongNumArgs.3.gz
+man/mann/Tcl.n.gz
+man/mann/after.n.gz
+man/mann/append.n.gz
+man/mann/array.n.gz
+man/mann/bgerror.n.gz
+man/mann/binary.n.gz
+man/mann/break.n.gz
+man/mann/case.n.gz
+man/mann/catch.n.gz
+man/mann/cd.n.gz
+man/mann/clock.n.gz
+man/mann/close.n.gz
+man/mann/concat.n.gz
+man/mann/continue.n.gz
+man/mann/eof.n.gz
+man/mann/error.n.gz
+man/mann/eval.n.gz
+man/mann/exec.n.gz
+man/mann/exit.n.gz
+man/mann/expr.n.gz
+man/mann/fblocked.n.gz
+man/mann/fconfigure.n.gz
+man/mann/fcopy.n.gz
+man/mann/if.n.gz
+man/mann/file.n.gz
+man/mann/fileevent.n.gz
+man/mann/filename.n.gz
+man/mann/flush.n.gz
+man/mann/for.n.gz
+man/mann/foreach.n.gz
+man/mann/format.n.gz
+man/mann/gets.n.gz
+man/mann/glob.n.gz
+man/mann/global.n.gz
+man/mann/history.n.gz
+man/mann/http.n.gz
+man/mann/incr.n.gz
+man/mann/info.n.gz
+man/mann/interp.n.gz
+man/mann/join.n.gz
+man/mann/lappend.n.gz
+man/mann/library.n.gz
+man/mann/lindex.n.gz
+man/mann/linsert.n.gz
+man/mann/list.n.gz
+man/mann/llength.n.gz
+man/mann/load.n.gz
+man/mann/lrange.n.gz
+man/mann/lreplace.n.gz
+man/mann/lsearch.n.gz
+man/mann/lsort.n.gz
+man/mann/namespace.n.gz
+man/mann/open.n.gz
+man/mann/package.n.gz
+man/mann/pid.n.gz
+man/mann/pkgMkIndex.n.gz
+man/mann/proc.n.gz
+man/mann/puts.n.gz
+man/mann/pwd.n.gz
+man/mann/read.n.gz
+man/mann/regexp.n.gz
+man/mann/registry.n.gz
+man/mann/regsub.n.gz
+man/mann/rename.n.gz
+man/mann/resource.n.gz
+man/mann/return.n.gz
+man/mann/safe.n.gz
+man/mann/scan.n.gz
+man/mann/seek.n.gz
+man/mann/set.n.gz
+man/mann/socket.n.gz
+man/mann/source.n.gz
+man/mann/split.n.gz
+man/mann/string.n.gz
+man/mann/subst.n.gz
+man/mann/switch.n.gz
+man/mann/tclvars.n.gz
+man/mann/tell.n.gz
+man/mann/time.n.gz
+man/mann/trace.n.gz
+man/mann/unknown.n.gz
+man/mann/unset.n.gz
+man/mann/update.n.gz
+man/mann/uplevel.n.gz
+man/mann/upvar.n.gz
+man/mann/variable.n.gz
+man/mann/vwait.n.gz
+man/mann/while.n.gz
+@dirrm include/tcl8.0
+@dirrm lib/tcl8.0/http2.0
+@dirrm lib/tcl8.0/http1.0
+@dirrm lib/tcl8.0/opt0.1
+@dirrm lib/tcl8.0
diff --git a/lang/tcl84/Makefile b/lang/tcl84/Makefile
new file mode 100644
index 000000000000..7bd3c81b5fb5
--- /dev/null
+++ b/lang/tcl84/Makefile
@@ -0,0 +1,27 @@
+# New ports collection makefile for: tcl8.0
+# Version required: 8.0
+# Date created: 19 August 1997
+# Whom: jkh
+#
+# $Id$
+#
+
+DISTNAME= tcl8.0
+PKGNAME= tcl-8.0
+CATEGORIES= lang
+MASTER_SITES= ftp://ftp.sunlabs.com/pub/tcl/
+
+MAINTAINER= jkh@freebsd.org
+
+WRKSRC= ${WRKDIR}/${DISTNAME}/unix
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --enable-shared
+CONFIGURE_ENV= PORTSDIR=${PORTSDIR}
+
+post-install:
+ ${LDCONFIG} -m ${PREFIX}/lib
+
+test:
+ cd ${WRKSRC} && ${MAKE} test
+
+.include <bsd.port.mk>
diff --git a/lang/tcl84/distinfo b/lang/tcl84/distinfo
new file mode 100644
index 000000000000..4eb3c5390a37
--- /dev/null
+++ b/lang/tcl84/distinfo
@@ -0,0 +1 @@
+MD5 (tcl8.0.tar.gz) = f1b78b79a40fd8e90e84186b42105b71
diff --git a/lang/tcl84/files/patch-aa b/lang/tcl84/files/patch-aa
new file mode 100644
index 000000000000..31e0c0e94885
--- /dev/null
+++ b/lang/tcl84/files/patch-aa
@@ -0,0 +1,68 @@
+--- Makefile.in.orig Fri Aug 15 13:17:28 1997
++++ Makefile.in Wed Aug 20 02:55:43 1997
+@@ -55,7 +55,7 @@
+ BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
+
+ # Directory in which to install the include file tcl.h:
+-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
++INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)
+
+ # Top-level directory in which to install manual entries:
+ MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
+@@ -138,7 +138,7 @@
+ # "install" around; better to use the install-sh script that comes
+ # with the distribution, which is slower but guaranteed to work.
+
+-INSTALL = @srcdir@/install-sh -c
++INSTALL = install -c
+ INSTALL_PROGRAM = ${INSTALL}
+ INSTALL_DATA = ${INSTALL} -m 644
+
+@@ -432,7 +432,8 @@
+ @echo "Installing tclsh"
+ @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
+ @echo "Installing tclConfig.sh"
+- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
++ @mkdir -p $(SCRIPT_INSTALL_DIR)
++ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
+
+ install-libraries:
+ @for i in $(INSTALL_ROOT)$(prefix)/lib $(INCLUDE_INSTALL_DIR) \
+@@ -483,28 +484,28 @@
+ @cd $(TOP_DIR)/doc; for i in *.1; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN1_INSTALL_DIR)/$$i; \
++ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN1_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.3; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MAN3_INSTALL_DIR)/$$i; \
++ rm -f $(MAN3_INSTALL_DIR)/$$i $(MAN3_INSTALL_DIR)/$$i.gz ; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MAN3_INSTALL_DIR)/$$i; \
+- chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MAN3_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MAN3_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
+ @cd $(TOP_DIR)/doc; for i in *.n; \
+ do \
+ echo "Installing doc/$$i"; \
+- rm -f $(MANN_INSTALL_DIR)/$$i; \
++ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \
+ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
+- $$i > $(MANN_INSTALL_DIR)/$$i; \
+- chmod 444 $(MANN_INSTALL_DIR)/$$i; \
++ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \
++ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \
+ done;
+ $(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
+
diff --git a/lang/tcl84/pkg-comment b/lang/tcl84/pkg-comment
new file mode 100644
index 000000000000..12707ff6a415
--- /dev/null
+++ b/lang/tcl84/pkg-comment
@@ -0,0 +1 @@
+Tool Command Language.
diff --git a/lang/tcl84/pkg-descr b/lang/tcl84/pkg-descr
new file mode 100644
index 000000000000..1dcfb46167a8
--- /dev/null
+++ b/lang/tcl84/pkg-descr
@@ -0,0 +1,7 @@
+This package contains the binary release of Tcl8.0, an embeddable tool
+command language.
+
+The best way to get started with Tcl is to read ``Tcl and the Tk
+Toolkit'' by John K. Ousterhout, Addison-Wesley, ISBN 0-201-63337-X.
+
+A full set of manual pages is also provided with this package.
diff --git a/lang/tcl84/pkg-plist b/lang/tcl84/pkg-plist
new file mode 100644
index 000000000000..d5a3c85c7faa
--- /dev/null
+++ b/lang/tcl84/pkg-plist
@@ -0,0 +1,184 @@
+bin/tclsh8.0
+lib/libtcl80.so.1.0
+@exec /sbin/ldconfig -m %B
+include/tcl8.0/tcl.h
+lib/tcl8.0/history.tcl
+lib/tcl8.0/init.tcl
+lib/tcl8.0/ldAout.tcl
+lib/tcl8.0/parray.tcl
+lib/tcl8.0/safe.tcl
+lib/tcl8.0/word.tcl
+lib/tcl8.0/tclAppInit.c
+lib/tcl8.0/ldAix
+lib/tcl8.0/tclIndex
+lib/tcl8.0/tclConfig.sh
+lib/tcl8.0/http2.0/http.tcl
+lib/tcl8.0/http2.0/pkgIndex.tcl
+lib/tcl8.0/http1.0/http.tcl
+lib/tcl8.0/http1.0/pkgIndex.tcl
+lib/tcl8.0/opt0.1/optparse.tcl
+lib/tcl8.0/opt0.1/pkgIndex.tcl
+man/man1/tclsh.1.gz
+man/man3/Alloc.3.gz
+man/man3/AddErrInfo.3.gz
+man/man3/AllowExc.3.gz
+man/man3/AppInit.3.gz
+man/man3/AssocData.3.gz
+man/man3/Async.3.gz
+man/man3/BackgdErr.3.gz
+man/man3/Backslash.3.gz
+man/man3/BoolObj.3.gz
+man/man3/CallDel.3.gz
+man/man3/CmdCmplt.3.gz
+man/man3/Concat.3.gz
+man/man3/CrtChannel.3.gz
+man/man3/CrtChnlHdlr.3.gz
+man/man3/CrtCloseHdlr.3.gz
+man/man3/Eval.3.gz
+man/man3/CrtCommand.3.gz
+man/man3/CrtFileHdlr.3.gz
+man/man3/CrtInterp.3.gz
+man/man3/CrtMathFnc.3.gz
+man/man3/CrtObjCmd.3.gz
+man/man3/CrtSlave.3.gz
+man/man3/CrtTimerHdlr.3.gz
+man/man3/CrtTrace.3.gz
+man/man3/DString.3.gz
+man/man3/DetachPids.3.gz
+man/man3/DoOneEvent.3.gz
+man/man3/DoWhenIdle.3.gz
+man/man3/DoubleObj.3.gz
+man/man3/EvalObj.3.gz
+man/man3/Exit.3.gz
+man/man3/ExprLong.3.gz
+man/man3/ExprLongObj.3.gz
+man/man3/FindExec.3.gz
+man/man3/GetIndex.3.gz
+man/man3/GetInt.3.gz
+man/man3/GetOpnFl.3.gz
+man/man3/GetStdChan.3.gz
+man/man3/Hash.3.gz
+man/man3/IntObj.3.gz
+man/man3/Interp.3.gz
+man/man3/LinkVar.3.gz
+man/man3/ListObj.3.gz
+man/man3/Notifier.3.gz
+man/man3/ObjSetVar.3.gz
+man/man3/Object.3.gz
+man/man3/ObjectType.3.gz
+man/man3/OpenFileChnl.3.gz
+man/man3/OpenTcp.3.gz
+man/man3/PkgRequire.3.gz
+man/man3/Preserve.3.gz
+man/man3/PrintDbl.3.gz
+man/man3/RecEvalObj.3.gz
+man/man3/RecordEval.3.gz
+man/man3/RegExp.3.gz
+man/man3/SetVar.3.gz
+man/man3/SetErrno.3.gz
+man/man3/SetRecLmt.3.gz
+man/man3/SetResult.3.gz
+man/man3/Sleep.3.gz
+man/man3/SplitList.3.gz
+man/man3/SplitPath.3.gz
+man/man3/StaticPkg.3.gz
+man/man3/StrMatch.3.gz
+man/man3/StringObj.3.gz
+man/man3/Tcl_Main.3.gz
+man/man3/TraceVar.3.gz
+man/man3/Translate.3.gz
+man/man3/UpVar.3.gz
+man/man3/WrongNumArgs.3.gz
+man/mann/Tcl.n.gz
+man/mann/after.n.gz
+man/mann/append.n.gz
+man/mann/array.n.gz
+man/mann/bgerror.n.gz
+man/mann/binary.n.gz
+man/mann/break.n.gz
+man/mann/case.n.gz
+man/mann/catch.n.gz
+man/mann/cd.n.gz
+man/mann/clock.n.gz
+man/mann/close.n.gz
+man/mann/concat.n.gz
+man/mann/continue.n.gz
+man/mann/eof.n.gz
+man/mann/error.n.gz
+man/mann/eval.n.gz
+man/mann/exec.n.gz
+man/mann/exit.n.gz
+man/mann/expr.n.gz
+man/mann/fblocked.n.gz
+man/mann/fconfigure.n.gz
+man/mann/fcopy.n.gz
+man/mann/if.n.gz
+man/mann/file.n.gz
+man/mann/fileevent.n.gz
+man/mann/filename.n.gz
+man/mann/flush.n.gz
+man/mann/for.n.gz
+man/mann/foreach.n.gz
+man/mann/format.n.gz
+man/mann/gets.n.gz
+man/mann/glob.n.gz
+man/mann/global.n.gz
+man/mann/history.n.gz
+man/mann/http.n.gz
+man/mann/incr.n.gz
+man/mann/info.n.gz
+man/mann/interp.n.gz
+man/mann/join.n.gz
+man/mann/lappend.n.gz
+man/mann/library.n.gz
+man/mann/lindex.n.gz
+man/mann/linsert.n.gz
+man/mann/list.n.gz
+man/mann/llength.n.gz
+man/mann/load.n.gz
+man/mann/lrange.n.gz
+man/mann/lreplace.n.gz
+man/mann/lsearch.n.gz
+man/mann/lsort.n.gz
+man/mann/namespace.n.gz
+man/mann/open.n.gz
+man/mann/package.n.gz
+man/mann/pid.n.gz
+man/mann/pkgMkIndex.n.gz
+man/mann/proc.n.gz
+man/mann/puts.n.gz
+man/mann/pwd.n.gz
+man/mann/read.n.gz
+man/mann/regexp.n.gz
+man/mann/registry.n.gz
+man/mann/regsub.n.gz
+man/mann/rename.n.gz
+man/mann/resource.n.gz
+man/mann/return.n.gz
+man/mann/safe.n.gz
+man/mann/scan.n.gz
+man/mann/seek.n.gz
+man/mann/set.n.gz
+man/mann/socket.n.gz
+man/mann/source.n.gz
+man/mann/split.n.gz
+man/mann/string.n.gz
+man/mann/subst.n.gz
+man/mann/switch.n.gz
+man/mann/tclvars.n.gz
+man/mann/tell.n.gz
+man/mann/time.n.gz
+man/mann/trace.n.gz
+man/mann/unknown.n.gz
+man/mann/unset.n.gz
+man/mann/update.n.gz
+man/mann/uplevel.n.gz
+man/mann/upvar.n.gz
+man/mann/variable.n.gz
+man/mann/vwait.n.gz
+man/mann/while.n.gz
+@dirrm include/tcl8.0
+@dirrm lib/tcl8.0/http2.0
+@dirrm lib/tcl8.0/http1.0
+@dirrm lib/tcl8.0/opt0.1
+@dirrm lib/tcl8.0