summaryrefslogtreecommitdiff
path: root/lang/tcl85
diff options
context:
space:
mode:
authortaca <taca@pkgsrc.org>2014-03-10 14:20:44 +0000
committertaca <taca@pkgsrc.org>2014-03-10 14:20:44 +0000
commit7c825f5df3b3b875e503a26439f3b972e88feb17 (patch)
treeb6dc195fb481659581fccbcc36c1a3ffebb300f9 /lang/tcl85
parent7b13a121f09cda56d0d767181f465ca1aaa77024 (diff)
downloadpkgsrc-7c825f5df3b3b875e503a26439f3b972e88feb17.tar.gz
Restore tcl-8.5.15 package as lang/tcl85 with bump PKGREVISION since
x11/ruby-tk package needs tcl/tk 8.5 and it dosen't support tcl/tk 8.6 and later.
Diffstat (limited to 'lang/tcl85')
-rw-r--r--lang/tcl85/DESCR15
-rw-r--r--lang/tcl85/Makefile47
-rw-r--r--lang/tcl85/Makefile.version5
-rw-r--r--lang/tcl85/PLIST956
-rw-r--r--lang/tcl85/buildlink3.mk32
-rw-r--r--lang/tcl85/distinfo17
-rw-r--r--lang/tcl85/options.mk18
-rw-r--r--lang/tcl85/patches/patch-generic_tclInt.h29
-rw-r--r--lang/tcl85/patches/patch-generic_tclPort.h15
-rw-r--r--lang/tcl85/patches/patch-generic_tclPosixStr.c24
-rw-r--r--lang/tcl85/patches/patch-tests_load.test15
-rw-r--r--lang/tcl85/patches/patch-tests_pkgMkIndex.test33
-rw-r--r--lang/tcl85/patches/patch-unix_Makefile.in153
-rw-r--r--lang/tcl85/patches/patch-unix_configure178
-rw-r--r--lang/tcl85/patches/patch-unix_tclConfig.sh.in25
-rw-r--r--lang/tcl85/patches/patch-unix_tclUnixCompat.c67
-rw-r--r--lang/tcl85/patches/patch-unix_tclUnixFCmd.c21
-rw-r--r--lang/tcl85/patches/patch-unix_tclUnixInit.c65
-rw-r--r--lang/tcl85/patches/patch-unix_tclUnixPort.h28
19 files changed, 1743 insertions, 0 deletions
diff --git a/lang/tcl85/DESCR b/lang/tcl85/DESCR
new file mode 100644
index 00000000000..521fe4d2e65
--- /dev/null
+++ b/lang/tcl85/DESCR
@@ -0,0 +1,15 @@
+Tcl (Tool Command Language) is a very powerful but easy to learn dynamic
+programming language, suitable for a very wide range of uses, including
+web and desktop applications, networking, administration, testing and
+many more. Open source and business-friendly, Tcl is a mature yet
+evolving language that is truly cross platform, easily deployed and
+highly extensible.
+
+Tcl/Tk resources:
+ Newsgroup: comp.lang.tcl
+ Wiki: http://wiki.tcl.tk
+ Books:
+ * Practical Programming in Tcl and Tk, 4th Edition
+ ISBN: 0-13-038560-3
+ * Tcl and the Tk Toolkit, 2nd Edition
+ ISBN: 978-0-321-33633-0
diff --git a/lang/tcl85/Makefile b/lang/tcl85/Makefile
new file mode 100644
index 00000000000..ccb9ac67bd7
--- /dev/null
+++ b/lang/tcl85/Makefile
@@ -0,0 +1,47 @@
+# $NetBSD: Makefile,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+DISTNAME= tcl${TCL_VERSION}-src
+PKGNAME= tcl-${TCL_VERSION}
+PKGREVISION= 1
+CATEGORIES= lang
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=tcl/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.tcl.tk/
+COMMENT= Tool Command Language, a dynamic language
+LICENSE= 2-clause-bsd
+
+.include "../../lang/tcl85/Makefile.version"
+
+WRKSRC= ${WRKDIR}/tcl${TCL_VERSION}
+
+GNU_CONFIGURE= yes
+CONFIGURE_DIRS= unix
+BUILD_DIRS= ${CONFIGURE_DIRS}
+INSTALL_TARGET= install
+
+PKGCONFIG_OVERRIDE+= unix/tcl.pc.in
+
+CHECK_PORTABILITY_SKIP= win/configure
+
+# The test target gives better results when not run as root.
+TEST_TARGET= test
+
+.include "options.mk"
+
+# This is needed for SGI and maybe sun (according to tcl developers)
+.if defined(ABI) && ${ABI} == "64"
+CONFIGURE_ARGS+= --enable-64bit
+.endif
+
+SUBST_CLASSES+= tcl-config
+SUBST_STAGE.tcl-config= post-build
+SUBST_FILES.tcl-config= unix/tclConfig.sh
+SUBST_SED.tcl-config+= -e "s|${WRKSRC}/unix|${PREFIX}/lib|"
+SUBST_SED.tcl-config+= -e "s|${WRKSRC}|${PREFIX}/include/tcl|"
+
+PLIST_SUBST+= SONUM=${TCL_SONUM}
+PLIST_SUBST+= BASEVER=${TCL_BASEVER}
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/tcl85/Makefile.version b/lang/tcl85/Makefile.version
new file mode 100644
index 00000000000..ead01507516
--- /dev/null
+++ b/lang/tcl85/Makefile.version
@@ -0,0 +1,5 @@
+# $NetBSD: Makefile.version,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+TCL_SONUM= 85
+TCL_BASEVER= 8.5
+TCL_VERSION= 8.5.15
diff --git a/lang/tcl85/PLIST b/lang/tcl85/PLIST
new file mode 100644
index 00000000000..37dd28b2f24
--- /dev/null
+++ b/lang/tcl85/PLIST
@@ -0,0 +1,956 @@
+@comment $NetBSD: PLIST,v 1.1 2014/03/10 14:20:44 taca Exp $
+bin/tclsh
+bin/tclsh${BASEVER}
+include/tcl.h
+include/tcl/generic/regcustom.h
+include/tcl/generic/regerrs.h
+include/tcl/generic/regex.h
+include/tcl/generic/regguts.h
+include/tcl/generic/tcl.h
+include/tcl/generic/tclCompile.h
+include/tcl/generic/tclDecls.h
+include/tcl/generic/tclFileSystem.h
+include/tcl/generic/tclIO.h
+include/tcl/generic/tclInt.h
+include/tcl/generic/tclIntDecls.h
+include/tcl/generic/tclIntPlatDecls.h
+include/tcl/generic/tclPlatDecls.h
+include/tcl/generic/tclPort.h
+include/tcl/generic/tclRegexp.h
+include/tcl/generic/tclTomMath.h
+include/tcl/generic/tclTomMathDecls.h
+include/tcl/generic/tclTomMathInt.h
+include/tcl/generic/tommath.h
+include/tcl/unix/tclUnixPort.h
+include/tcl/unix/tclUnixThrd.h
+include/tclDecls.h
+include/tclPlatDecls.h
+lib/libtcl${SONUM}.a
+lib/libtcl${SONUM}.so
+lib/libtcl${SONUM}.so.1.0
+lib/libtclstub${SONUM}.a
+lib/tcl${BASEVER}/auto.tcl
+lib/tcl${BASEVER}/clock.tcl
+lib/tcl${BASEVER}/encoding/ascii.enc
+lib/tcl${BASEVER}/encoding/big5.enc
+lib/tcl${BASEVER}/encoding/cp1250.enc
+lib/tcl${BASEVER}/encoding/cp1251.enc
+lib/tcl${BASEVER}/encoding/cp1252.enc
+lib/tcl${BASEVER}/encoding/cp1253.enc
+lib/tcl${BASEVER}/encoding/cp1254.enc
+lib/tcl${BASEVER}/encoding/cp1255.enc
+lib/tcl${BASEVER}/encoding/cp1256.enc
+lib/tcl${BASEVER}/encoding/cp1257.enc
+lib/tcl${BASEVER}/encoding/cp1258.enc
+lib/tcl${BASEVER}/encoding/cp437.enc
+lib/tcl${BASEVER}/encoding/cp737.enc
+lib/tcl${BASEVER}/encoding/cp775.enc
+lib/tcl${BASEVER}/encoding/cp850.enc
+lib/tcl${BASEVER}/encoding/cp852.enc
+lib/tcl${BASEVER}/encoding/cp855.enc
+lib/tcl${BASEVER}/encoding/cp857.enc
+lib/tcl${BASEVER}/encoding/cp860.enc
+lib/tcl${BASEVER}/encoding/cp861.enc
+lib/tcl${BASEVER}/encoding/cp862.enc
+lib/tcl${BASEVER}/encoding/cp863.enc
+lib/tcl${BASEVER}/encoding/cp864.enc
+lib/tcl${BASEVER}/encoding/cp865.enc
+lib/tcl${BASEVER}/encoding/cp866.enc
+lib/tcl${BASEVER}/encoding/cp869.enc
+lib/tcl${BASEVER}/encoding/cp874.enc
+lib/tcl${BASEVER}/encoding/cp932.enc
+lib/tcl${BASEVER}/encoding/cp936.enc
+lib/tcl${BASEVER}/encoding/cp949.enc
+lib/tcl${BASEVER}/encoding/cp950.enc
+lib/tcl${BASEVER}/encoding/dingbats.enc
+lib/tcl${BASEVER}/encoding/ebcdic.enc
+lib/tcl${BASEVER}/encoding/euc-cn.enc
+lib/tcl${BASEVER}/encoding/euc-jp.enc
+lib/tcl${BASEVER}/encoding/euc-kr.enc
+lib/tcl${BASEVER}/encoding/gb12345.enc
+lib/tcl${BASEVER}/encoding/gb1988.enc
+lib/tcl${BASEVER}/encoding/gb2312-raw.enc
+lib/tcl${BASEVER}/encoding/gb2312.enc
+lib/tcl${BASEVER}/encoding/iso2022-jp.enc
+lib/tcl${BASEVER}/encoding/iso2022-kr.enc
+lib/tcl${BASEVER}/encoding/iso2022.enc
+lib/tcl${BASEVER}/encoding/iso8859-1.enc
+lib/tcl${BASEVER}/encoding/iso8859-10.enc
+lib/tcl${BASEVER}/encoding/iso8859-13.enc
+lib/tcl${BASEVER}/encoding/iso8859-14.enc
+lib/tcl${BASEVER}/encoding/iso8859-15.enc
+lib/tcl${BASEVER}/encoding/iso8859-16.enc
+lib/tcl${BASEVER}/encoding/iso8859-2.enc
+lib/tcl${BASEVER}/encoding/iso8859-3.enc
+lib/tcl${BASEVER}/encoding/iso8859-4.enc
+lib/tcl${BASEVER}/encoding/iso8859-5.enc
+lib/tcl${BASEVER}/encoding/iso8859-6.enc
+lib/tcl${BASEVER}/encoding/iso8859-7.enc
+lib/tcl${BASEVER}/encoding/iso8859-8.enc
+lib/tcl${BASEVER}/encoding/iso8859-9.enc
+lib/tcl${BASEVER}/encoding/jis0201.enc
+lib/tcl${BASEVER}/encoding/jis0208.enc
+lib/tcl${BASEVER}/encoding/jis0212.enc
+lib/tcl${BASEVER}/encoding/koi8-r.enc
+lib/tcl${BASEVER}/encoding/koi8-u.enc
+lib/tcl${BASEVER}/encoding/ksc5601.enc
+lib/tcl${BASEVER}/encoding/macCentEuro.enc
+lib/tcl${BASEVER}/encoding/macCroatian.enc
+lib/tcl${BASEVER}/encoding/macCyrillic.enc
+lib/tcl${BASEVER}/encoding/macDingbats.enc
+lib/tcl${BASEVER}/encoding/macGreek.enc
+lib/tcl${BASEVER}/encoding/macIceland.enc
+lib/tcl${BASEVER}/encoding/macJapan.enc
+lib/tcl${BASEVER}/encoding/macRoman.enc
+lib/tcl${BASEVER}/encoding/macRomania.enc
+lib/tcl${BASEVER}/encoding/macThai.enc
+lib/tcl${BASEVER}/encoding/macTurkish.enc
+lib/tcl${BASEVER}/encoding/macUkraine.enc
+lib/tcl${BASEVER}/encoding/shiftjis.enc
+lib/tcl${BASEVER}/encoding/symbol.enc
+lib/tcl${BASEVER}/encoding/tis-620.enc
+lib/tcl${BASEVER}/history.tcl
+lib/tcl${BASEVER}/http/http.tcl
+lib/tcl${BASEVER}/http/pkgIndex.tcl
+lib/tcl${BASEVER}/http1.0/http.tcl
+lib/tcl${BASEVER}/http1.0/pkgIndex.tcl
+lib/tcl${BASEVER}/init.tcl
+lib/tcl${BASEVER}/msgcat1.4/msgcat.tcl
+lib/tcl${BASEVER}/msgcat1.4/pkgIndex.tcl
+lib/tcl${BASEVER}/msgs/af.msg
+lib/tcl${BASEVER}/msgs/af_za.msg
+lib/tcl${BASEVER}/msgs/ar.msg
+lib/tcl${BASEVER}/msgs/ar_in.msg
+lib/tcl${BASEVER}/msgs/ar_jo.msg
+lib/tcl${BASEVER}/msgs/ar_lb.msg
+lib/tcl${BASEVER}/msgs/ar_sy.msg
+lib/tcl${BASEVER}/msgs/be.msg
+lib/tcl${BASEVER}/msgs/bg.msg
+lib/tcl${BASEVER}/msgs/bn.msg
+lib/tcl${BASEVER}/msgs/bn_in.msg
+lib/tcl${BASEVER}/msgs/ca.msg
+lib/tcl${BASEVER}/msgs/cs.msg
+lib/tcl${BASEVER}/msgs/da.msg
+lib/tcl${BASEVER}/msgs/de.msg
+lib/tcl${BASEVER}/msgs/de_at.msg
+lib/tcl${BASEVER}/msgs/de_be.msg
+lib/tcl${BASEVER}/msgs/el.msg
+lib/tcl${BASEVER}/msgs/en_au.msg
+lib/tcl${BASEVER}/msgs/en_be.msg
+lib/tcl${BASEVER}/msgs/en_bw.msg
+lib/tcl${BASEVER}/msgs/en_ca.msg
+lib/tcl${BASEVER}/msgs/en_gb.msg
+lib/tcl${BASEVER}/msgs/en_hk.msg
+lib/tcl${BASEVER}/msgs/en_ie.msg
+lib/tcl${BASEVER}/msgs/en_in.msg
+lib/tcl${BASEVER}/msgs/en_nz.msg
+lib/tcl${BASEVER}/msgs/en_ph.msg
+lib/tcl${BASEVER}/msgs/en_sg.msg
+lib/tcl${BASEVER}/msgs/en_za.msg
+lib/tcl${BASEVER}/msgs/en_zw.msg
+lib/tcl${BASEVER}/msgs/eo.msg
+lib/tcl${BASEVER}/msgs/es.msg
+lib/tcl${BASEVER}/msgs/es_ar.msg
+lib/tcl${BASEVER}/msgs/es_bo.msg
+lib/tcl${BASEVER}/msgs/es_cl.msg
+lib/tcl${BASEVER}/msgs/es_co.msg
+lib/tcl${BASEVER}/msgs/es_cr.msg
+lib/tcl${BASEVER}/msgs/es_do.msg
+lib/tcl${BASEVER}/msgs/es_ec.msg
+lib/tcl${BASEVER}/msgs/es_gt.msg
+lib/tcl${BASEVER}/msgs/es_hn.msg
+lib/tcl${BASEVER}/msgs/es_mx.msg
+lib/tcl${BASEVER}/msgs/es_ni.msg
+lib/tcl${BASEVER}/msgs/es_pa.msg
+lib/tcl${BASEVER}/msgs/es_pe.msg
+lib/tcl${BASEVER}/msgs/es_pr.msg
+lib/tcl${BASEVER}/msgs/es_py.msg
+lib/tcl${BASEVER}/msgs/es_sv.msg
+lib/tcl${BASEVER}/msgs/es_uy.msg
+lib/tcl${BASEVER}/msgs/es_ve.msg
+lib/tcl${BASEVER}/msgs/et.msg
+lib/tcl${BASEVER}/msgs/eu.msg
+lib/tcl${BASEVER}/msgs/eu_es.msg
+lib/tcl${BASEVER}/msgs/fa.msg
+lib/tcl${BASEVER}/msgs/fa_in.msg
+lib/tcl${BASEVER}/msgs/fa_ir.msg
+lib/tcl${BASEVER}/msgs/fi.msg
+lib/tcl${BASEVER}/msgs/fo.msg
+lib/tcl${BASEVER}/msgs/fo_fo.msg
+lib/tcl${BASEVER}/msgs/fr.msg
+lib/tcl${BASEVER}/msgs/fr_be.msg
+lib/tcl${BASEVER}/msgs/fr_ca.msg
+lib/tcl${BASEVER}/msgs/fr_ch.msg
+lib/tcl${BASEVER}/msgs/ga.msg
+lib/tcl${BASEVER}/msgs/ga_ie.msg
+lib/tcl${BASEVER}/msgs/gl.msg
+lib/tcl${BASEVER}/msgs/gl_es.msg
+lib/tcl${BASEVER}/msgs/gv.msg
+lib/tcl${BASEVER}/msgs/gv_gb.msg
+lib/tcl${BASEVER}/msgs/he.msg
+lib/tcl${BASEVER}/msgs/hi.msg
+lib/tcl${BASEVER}/msgs/hi_in.msg
+lib/tcl${BASEVER}/msgs/hr.msg
+lib/tcl${BASEVER}/msgs/hu.msg
+lib/tcl${BASEVER}/msgs/id.msg
+lib/tcl${BASEVER}/msgs/id_id.msg
+lib/tcl${BASEVER}/msgs/is.msg
+lib/tcl${BASEVER}/msgs/it.msg
+lib/tcl${BASEVER}/msgs/it_ch.msg
+lib/tcl${BASEVER}/msgs/ja.msg
+lib/tcl${BASEVER}/msgs/kl.msg
+lib/tcl${BASEVER}/msgs/kl_gl.msg
+lib/tcl${BASEVER}/msgs/ko.msg
+lib/tcl${BASEVER}/msgs/ko_kr.msg
+lib/tcl${BASEVER}/msgs/kok.msg
+lib/tcl${BASEVER}/msgs/kok_in.msg
+lib/tcl${BASEVER}/msgs/kw.msg
+lib/tcl${BASEVER}/msgs/kw_gb.msg
+lib/tcl${BASEVER}/msgs/lt.msg
+lib/tcl${BASEVER}/msgs/lv.msg
+lib/tcl${BASEVER}/msgs/mk.msg
+lib/tcl${BASEVER}/msgs/mr.msg
+lib/tcl${BASEVER}/msgs/mr_in.msg
+lib/tcl${BASEVER}/msgs/ms.msg
+lib/tcl${BASEVER}/msgs/ms_my.msg
+lib/tcl${BASEVER}/msgs/mt.msg
+lib/tcl${BASEVER}/msgs/nb.msg
+lib/tcl${BASEVER}/msgs/nl.msg
+lib/tcl${BASEVER}/msgs/nl_be.msg
+lib/tcl${BASEVER}/msgs/nn.msg
+lib/tcl${BASEVER}/msgs/pl.msg
+lib/tcl${BASEVER}/msgs/pt.msg
+lib/tcl${BASEVER}/msgs/pt_br.msg
+lib/tcl${BASEVER}/msgs/ro.msg
+lib/tcl${BASEVER}/msgs/ru.msg
+lib/tcl${BASEVER}/msgs/ru_ua.msg
+lib/tcl${BASEVER}/msgs/sh.msg
+lib/tcl${BASEVER}/msgs/sk.msg
+lib/tcl${BASEVER}/msgs/sl.msg
+lib/tcl${BASEVER}/msgs/sq.msg
+lib/tcl${BASEVER}/msgs/sr.msg
+lib/tcl${BASEVER}/msgs/sv.msg
+lib/tcl${BASEVER}/msgs/sw.msg
+lib/tcl${BASEVER}/msgs/ta.msg
+lib/tcl${BASEVER}/msgs/ta_in.msg
+lib/tcl${BASEVER}/msgs/te.msg
+lib/tcl${BASEVER}/msgs/te_in.msg
+lib/tcl${BASEVER}/msgs/th.msg
+lib/tcl${BASEVER}/msgs/tr.msg
+lib/tcl${BASEVER}/msgs/uk.msg
+lib/tcl${BASEVER}/msgs/vi.msg
+lib/tcl${BASEVER}/msgs/zh.msg
+lib/tcl${BASEVER}/msgs/zh_cn.msg
+lib/tcl${BASEVER}/msgs/zh_hk.msg
+lib/tcl${BASEVER}/msgs/zh_sg.msg
+lib/tcl${BASEVER}/msgs/zh_tw.msg
+lib/tcl${BASEVER}/opt0.4/optparse.tcl
+lib/tcl${BASEVER}/opt0.4/pkgIndex.tcl
+lib/tcl${BASEVER}/package.tcl
+lib/tcl${BASEVER}/parray.tcl
+lib/tcl${BASEVER}/platform1.0/pkgIndex.tcl
+lib/tcl${BASEVER}/platform1.0/platform.tcl
+lib/tcl${BASEVER}/safe.tcl
+lib/tcl${BASEVER}/shell1.1/pkgIndex.tcl
+lib/tcl${BASEVER}/shell1.1/shell.tcl
+lib/tcl${BASEVER}/tclAppInit.c
+lib/tcl${BASEVER}/tclIndex
+lib/tcl${BASEVER}/tcltest2.3/tcltest.tcl
+lib/tcl${BASEVER}/tcltest2.3/pkgIndex.tcl
+lib/tcl${BASEVER}/tm.tcl
+lib/tcl${BASEVER}/word.tcl
+lib/tclConfig.sh
+man/man1/tclsh.1
+man/man3/TCL_MEM_DEBUG.3
+man/man3/Tcl_Access.3
+man/man3/Tcl_AddErrorInfo.3
+man/man3/Tcl_AddObjErrorInfo.3
+man/man3/Tcl_AlertNotifier.3
+man/man3/Tcl_Alloc.3
+man/man3/Tcl_AllocStatBuf.3
+man/man3/Tcl_AllowExceptions.3
+man/man3/Tcl_AppInit.3
+man/man3/Tcl_AppendAllObjTypes.3
+man/man3/Tcl_AppendElement.3
+man/man3/Tcl_AppendExportList.3
+man/man3/Tcl_AppendFormatToObj.3
+man/man3/Tcl_AppendLimitedToObj.3
+man/man3/Tcl_AppendObjToErrorInfo.3
+man/man3/Tcl_AppendObjToObj.3
+man/man3/Tcl_AppendPrintfToObj.3
+man/man3/Tcl_AppendResult.3
+man/man3/Tcl_AppendResultVA.3
+man/man3/Tcl_AppendStringsToObj.3
+man/man3/Tcl_AppendStringsToObjVA.3
+man/man3/Tcl_AppendToObj.3
+man/man3/Tcl_AppendUnicodeToObj.3
+man/man3/Tcl_AsyncCreate.3
+man/man3/Tcl_AsyncDelete.3
+man/man3/Tcl_AsyncInvoke.3
+man/man3/Tcl_AsyncMark.3
+man/man3/Tcl_AsyncReady.3
+man/man3/Tcl_AttemptAlloc.3
+man/man3/Tcl_AttemptRealloc.3
+man/man3/Tcl_AttemptSetObjLength.3
+man/man3/Tcl_BackgroundError.3
+man/man3/Tcl_Backslash.3
+man/man3/Tcl_BadChannelOption.3
+man/man3/Tcl_CallWhenDeleted.3
+man/man3/Tcl_CancelIdleCall.3
+man/man3/Tcl_ChannelBlockModeProc.3
+man/man3/Tcl_ChannelBuffered.3
+man/man3/Tcl_ChannelClose2Proc.3
+man/man3/Tcl_ChannelCloseProc.3
+man/man3/Tcl_ChannelFlushProc.3
+man/man3/Tcl_ChannelGetHandleProc.3
+man/man3/Tcl_ChannelGetOptionProc.3
+man/man3/Tcl_ChannelHandlerProc.3
+man/man3/Tcl_ChannelInputProc.3
+man/man3/Tcl_ChannelName.3
+man/man3/Tcl_ChannelOutputProc.3
+man/man3/Tcl_ChannelSeekProc.3
+man/man3/Tcl_ChannelSetOptionProc.3
+man/man3/Tcl_ChannelThreadActionProc.3
+man/man3/Tcl_ChannelTruncateProc.3
+man/man3/Tcl_ChannelVersion.3
+man/man3/Tcl_ChannelWatchProc.3
+man/man3/Tcl_ChannelWideSeekProc.3
+man/man3/Tcl_Chdir.3
+man/man3/Tcl_ClearChannelHandlers.3
+man/man3/Tcl_Close.3
+man/man3/Tcl_CommandComplete.3
+man/man3/Tcl_CommandTraceInfo.3
+man/man3/Tcl_Concat.3
+man/man3/Tcl_ConcatObj.3
+man/man3/Tcl_ConditionFinalize.3
+man/man3/Tcl_ConditionNotify.3
+man/man3/Tcl_ConditionWait.3
+man/man3/Tcl_ConvertCountedElement.3
+man/man3/Tcl_ConvertElement.3
+man/man3/Tcl_ConvertToType.3
+man/man3/Tcl_CreateAlias.3
+man/man3/Tcl_CreateAliasObj.3
+man/man3/Tcl_CreateChannel.3
+man/man3/Tcl_CreateChannelHandler.3
+man/man3/Tcl_CreateCloseHandler.3
+man/man3/Tcl_CreateCommand.3
+man/man3/Tcl_CreateEncoding.3
+man/man3/Tcl_CreateEnsemble.3
+man/man3/Tcl_CreateEventSource.3
+man/man3/Tcl_CreateExitHandler.3
+man/man3/Tcl_CreateFileHandler.3
+man/man3/Tcl_CreateHashEntry.3
+man/man3/Tcl_CreateInterp.3
+man/man3/Tcl_CreateMathFunc.3
+man/man3/Tcl_CreateNamespace.3
+man/man3/Tcl_CreateObjCommand.3
+man/man3/Tcl_CreateObjTrace.3
+man/man3/Tcl_CreateSlave.3
+man/man3/Tcl_CreateThread.3
+man/man3/Tcl_CreateThreadExitHandler.3
+man/man3/Tcl_CreateTimerHandler.3
+man/man3/Tcl_CreateTrace.3
+man/man3/Tcl_CutChannel.3
+man/man3/Tcl_DStringAppend.3
+man/man3/Tcl_DStringAppendElement.3
+man/man3/Tcl_DStringEndSublist.3
+man/man3/Tcl_DStringFree.3
+man/man3/Tcl_DStringGetResult.3
+man/man3/Tcl_DStringInit.3
+man/man3/Tcl_DStringLength.3
+man/man3/Tcl_DStringResult.3
+man/man3/Tcl_DStringSetLength.3
+man/man3/Tcl_DStringStartSublist.3
+man/man3/Tcl_DStringTrunc.3
+man/man3/Tcl_DStringValue.3
+man/man3/Tcl_DecrRefCount.3
+man/man3/Tcl_DeleteAssocData.3
+man/man3/Tcl_DeleteChannelHandler.3
+man/man3/Tcl_DeleteCloseHandler.3
+man/man3/Tcl_DeleteCommand.3
+man/man3/Tcl_DeleteCommandFromToken.3
+man/man3/Tcl_DeleteEventSource.3
+man/man3/Tcl_DeleteEvents.3
+man/man3/Tcl_DeleteExitHandler.3
+man/man3/Tcl_DeleteFileHandler.3
+man/man3/Tcl_DeleteHashEntry.3
+man/man3/Tcl_DeleteHashTable.3
+man/man3/Tcl_DeleteInterp.3
+man/man3/Tcl_DeleteNamespace.3
+man/man3/Tcl_DeleteThreadExitHandler.3
+man/man3/Tcl_DeleteTimerHandler.3
+man/man3/Tcl_DeleteTrace.3
+man/man3/Tcl_DetachChannel.3
+man/man3/Tcl_DetachPids.3
+man/man3/Tcl_DictObjDone.3
+man/man3/Tcl_DictObjFirst.3
+man/man3/Tcl_DictObjGet.3
+man/man3/Tcl_DictObjNext.3
+man/man3/Tcl_DictObjPut.3
+man/man3/Tcl_DictObjPutKeyList.3
+man/man3/Tcl_DictObjRemove.3
+man/man3/Tcl_DictObjRemoveKeyList.3
+man/man3/Tcl_DictObjSize.3
+man/man3/Tcl_DiscardInterpState.3
+man/man3/Tcl_DiscardResult.3
+man/man3/Tcl_DoOneEvent.3
+man/man3/Tcl_DoWhenIdle.3
+man/man3/Tcl_DontCallWhenDeleted.3
+man/man3/Tcl_DumpActiveMemory.3
+man/man3/Tcl_DuplicateObj.3
+man/man3/Tcl_Eof.3
+man/man3/Tcl_ErrnoId.3
+man/man3/Tcl_ErrnoMsg.3
+man/man3/Tcl_Eval.3
+man/man3/Tcl_EvalEx.3
+man/man3/Tcl_EvalFile.3
+man/man3/Tcl_EvalObjEx.3
+man/man3/Tcl_EvalObjv.3
+man/man3/Tcl_EvalTokens.3
+man/man3/Tcl_EvalTokensStandard.3
+man/man3/Tcl_EventuallyFree.3
+man/man3/Tcl_Exit.3
+man/man3/Tcl_ExitThread.3
+man/man3/Tcl_Export.3
+man/man3/Tcl_ExposeCommand.3
+man/man3/Tcl_ExprBoolean.3
+man/man3/Tcl_ExprBooleanObj.3
+man/man3/Tcl_ExprDouble.3
+man/man3/Tcl_ExprDoubleObj.3
+man/man3/Tcl_ExprLong.3
+man/man3/Tcl_ExprLongObj.3
+man/man3/Tcl_ExprObj.3
+man/man3/Tcl_ExprString.3
+man/man3/Tcl_ExternalToUtf.3
+man/man3/Tcl_ExternalToUtfDString.3
+man/man3/Tcl_FSAccess.3
+man/man3/Tcl_FSChdir.3
+man/man3/Tcl_FSConvertToPathType.3
+man/man3/Tcl_FSCopyDirectory.3
+man/man3/Tcl_FSCopyFile.3
+man/man3/Tcl_FSCreateDirectory.3
+man/man3/Tcl_FSData.3
+man/man3/Tcl_FSDeleteFile.3
+man/man3/Tcl_FSEqualPaths.3
+man/man3/Tcl_FSEvalFile.3
+man/man3/Tcl_FSEvalFileEx.3
+man/man3/Tcl_FSFileAttrStrings.3
+man/man3/Tcl_FSFileAttrsGet.3
+man/man3/Tcl_FSFileAttrsSet.3
+man/man3/Tcl_FSFileSystemInfo.3
+man/man3/Tcl_FSGetCwd.3
+man/man3/Tcl_FSGetFileSystemForPath.3
+man/man3/Tcl_FSGetInternalRep.3
+man/man3/Tcl_FSGetNativePath.3
+man/man3/Tcl_FSGetNormalizedPath.3
+man/man3/Tcl_FSGetPathType.3
+man/man3/Tcl_FSGetTranslatedPath.3
+man/man3/Tcl_FSGetTranslatedStringPath.3
+man/man3/Tcl_FSJoinPath.3
+man/man3/Tcl_FSJoinToPath.3
+man/man3/Tcl_FSLink.3
+man/man3/Tcl_FSListVolumes.3
+man/man3/Tcl_FSLoadFile.3
+man/man3/Tcl_FSLstat.3
+man/man3/Tcl_FSMatchInDirectory.3
+man/man3/Tcl_FSMountsChanged.3
+man/man3/Tcl_FSNewNativePath.3
+man/man3/Tcl_FSOpenFileChannel.3
+man/man3/Tcl_FSPathSeparator.3
+man/man3/Tcl_FSRegister.3
+man/man3/Tcl_FSRemoveDirectory.3
+man/man3/Tcl_FSRenameFile.3
+man/man3/Tcl_FSSplitPath.3
+man/man3/Tcl_FSStat.3
+man/man3/Tcl_FSUnregister.3
+man/man3/Tcl_FSUtime.3
+man/man3/Tcl_Finalize.3
+man/man3/Tcl_FinalizeNotifier.3
+man/man3/Tcl_FinalizeThread.3
+man/man3/Tcl_FindCommand.3
+man/man3/Tcl_FindEnsemble.3
+man/man3/Tcl_FindExecutable.3
+man/man3/Tcl_FindHashEntry.3
+man/man3/Tcl_FindNamespace.3
+man/man3/Tcl_FirstHashEntry.3
+man/man3/Tcl_Flush.3
+man/man3/Tcl_ForgetImport.3
+man/man3/Tcl_Format.3
+man/man3/Tcl_Free.3
+man/man3/Tcl_FreeEncoding.3
+man/man3/Tcl_FreeParse.3
+man/man3/Tcl_FreeResult.3
+man/man3/Tcl_GetAlias.3
+man/man3/Tcl_GetAliasObj.3
+man/man3/Tcl_GetAssocData.3
+man/man3/Tcl_GetBignumFromObj.3
+man/man3/Tcl_GetBoolean.3
+man/man3/Tcl_GetBooleanFromObj.3
+man/man3/Tcl_GetByteArrayFromObj.3
+man/man3/Tcl_GetChannel.3
+man/man3/Tcl_GetChannelBufferSize.3
+man/man3/Tcl_GetChannelError.3
+man/man3/Tcl_GetChannelErrorInterp.3
+man/man3/Tcl_GetChannelHandle.3
+man/man3/Tcl_GetChannelInstanceData.3
+man/man3/Tcl_GetChannelMode.3
+man/man3/Tcl_GetChannelName.3
+man/man3/Tcl_GetChannelNames.3
+man/man3/Tcl_GetChannelNamesEx.3
+man/man3/Tcl_GetChannelOption.3
+man/man3/Tcl_GetChannelThread.3
+man/man3/Tcl_GetChannelType.3
+man/man3/Tcl_GetCharLength.3
+man/man3/Tcl_GetCommandFromObj.3
+man/man3/Tcl_GetCommandFullName.3
+man/man3/Tcl_GetCommandInfo.3
+man/man3/Tcl_GetCommandInfoFromToken.3
+man/man3/Tcl_GetCommandName.3
+man/man3/Tcl_GetCurrentNamespace.3
+man/man3/Tcl_GetCurrentThread.3
+man/man3/Tcl_GetCwd.3
+man/man3/Tcl_GetDefaultEncodingDir.3
+man/man3/Tcl_GetDouble.3
+man/man3/Tcl_GetDoubleFromObj.3
+man/man3/Tcl_GetEncoding.3
+man/man3/Tcl_GetEncodingFromObj.3
+man/man3/Tcl_GetEncodingName.3
+man/man3/Tcl_GetEncodingNameFromEnvironment.3
+man/man3/Tcl_GetEncodingNames.3
+man/man3/Tcl_GetEncodingSearchPath.3
+man/man3/Tcl_GetEnsembleFlags.3
+man/man3/Tcl_GetEnsembleMappingDict.3
+man/man3/Tcl_GetEnsembleNamespace.3
+man/man3/Tcl_GetEnsembleSubcommandList.3
+man/man3/Tcl_GetEnsembleUnknownHandler.3
+man/man3/Tcl_GetErrno.3
+man/man3/Tcl_GetGlobalNamespace.3
+man/man3/Tcl_GetHashKey.3
+man/man3/Tcl_GetHashValue.3
+man/man3/Tcl_GetHostName.3
+man/man3/Tcl_GetIndexFromObj.3
+man/man3/Tcl_GetIndexFromObjStruct.3
+man/man3/Tcl_GetInt.3
+man/man3/Tcl_GetIntFromObj.3
+man/man3/Tcl_GetInterpPath.3
+man/man3/Tcl_GetLongFromObj.3
+man/man3/Tcl_GetMaster.3
+man/man3/Tcl_GetMathFuncInfo.3
+man/man3/Tcl_GetNameOfExecutable.3
+man/man3/Tcl_GetNamespaceUnknownHandler.3
+man/man3/Tcl_GetObjResult.3
+man/man3/Tcl_GetObjType.3
+man/man3/Tcl_GetOpenFile.3
+man/man3/Tcl_GetPathType.3
+man/man3/Tcl_GetRange.3
+man/man3/Tcl_GetRegExpFromObj.3
+man/man3/Tcl_GetReturnOptions.3
+man/man3/Tcl_GetServiceMode.3
+man/man3/Tcl_GetSlave.3
+man/man3/Tcl_GetStackedChannel.3
+man/man3/Tcl_GetStdChannel.3
+man/man3/Tcl_GetString.3
+man/man3/Tcl_GetStringFromObj.3
+man/man3/Tcl_GetStringResult.3
+man/man3/Tcl_GetThreadData.3
+man/man3/Tcl_GetTime.3
+man/man3/Tcl_GetTopChannel.3
+man/man3/Tcl_GetUniChar.3
+man/man3/Tcl_GetUnicode.3
+man/man3/Tcl_GetUnicodeFromObj.3
+man/man3/Tcl_GetVar.3
+man/man3/Tcl_GetVar2.3
+man/man3/Tcl_GetVar2Ex.3
+man/man3/Tcl_GetVersion.3
+man/man3/Tcl_GetWideIntFromObj.3
+man/man3/Tcl_Gets.3
+man/man3/Tcl_GetsObj.3
+man/man3/Tcl_GlobalEval.3
+man/man3/Tcl_GlobalEvalObj.3
+man/man3/Tcl_HashStats.3
+man/man3/Tcl_HideCommand.3
+man/man3/Tcl_Import.3
+man/man3/Tcl_IncrRefCount.3
+man/man3/Tcl_Init.3
+man/man3/Tcl_InitCustomHashTable.3
+man/man3/Tcl_InitHashTable.3
+man/man3/Tcl_InitMemory.3
+man/man3/Tcl_InitNotifier.3
+man/man3/Tcl_InitObjHashTable.3
+man/man3/Tcl_InitStubs.3
+man/man3/Tcl_InputBlocked.3
+man/man3/Tcl_InputBuffered.3
+man/man3/Tcl_Interp.3
+man/man3/Tcl_InterpDeleted.3
+man/man3/Tcl_InvalidateStringRep.3
+man/man3/Tcl_IsChannelExisting.3
+man/man3/Tcl_IsChannelRegistered.3
+man/man3/Tcl_IsChannelShared.3
+man/man3/Tcl_IsEnsemble.3
+man/man3/Tcl_IsSafe.3
+man/man3/Tcl_IsShared.3
+man/man3/Tcl_IsStandardChannel.3
+man/man3/Tcl_JoinPath.3
+man/man3/Tcl_JoinThread.3
+man/man3/Tcl_LimitAddHandler.3
+man/man3/Tcl_LimitCheck.3
+man/man3/Tcl_LimitExceeded.3
+man/man3/Tcl_LimitGetCommands.3
+man/man3/Tcl_LimitGetGranularity.3
+man/man3/Tcl_LimitGetTime.3
+man/man3/Tcl_LimitReady.3
+man/man3/Tcl_LimitRemoveHandler.3
+man/man3/Tcl_LimitSetCommands.3
+man/man3/Tcl_LimitSetGranularity.3
+man/man3/Tcl_LimitSetTime.3
+man/man3/Tcl_LimitTypeEnabled.3
+man/man3/Tcl_LimitTypeExceeded.3
+man/man3/Tcl_LimitTypeReset.3
+man/man3/Tcl_LimitTypeSet.3
+man/man3/Tcl_LinkVar.3
+man/man3/Tcl_ListMathFuncs.3
+man/man3/Tcl_ListObjAppendElement.3
+man/man3/Tcl_ListObjAppendList.3
+man/man3/Tcl_ListObjGetElements.3
+man/man3/Tcl_ListObjIndex.3
+man/man3/Tcl_ListObjLength.3
+man/man3/Tcl_ListObjReplace.3
+man/man3/Tcl_LogCommandInfo.3
+man/man3/Tcl_Main.3
+man/man3/Tcl_MakeFileChannel.3
+man/man3/Tcl_MakeSafe.3
+man/man3/Tcl_MakeTcpClientChannel.3
+man/man3/Tcl_Merge.3
+man/man3/Tcl_MutexFinalize.3
+man/man3/Tcl_MutexLock.3
+man/man3/Tcl_MutexUnlock.3
+man/man3/Tcl_NewBignumObj.3
+man/man3/Tcl_NewBooleanObj.3
+man/man3/Tcl_NewByteArrayObj.3
+man/man3/Tcl_NewDictObj.3
+man/man3/Tcl_NewDoubleObj.3
+man/man3/Tcl_NewIntObj.3
+man/man3/Tcl_NewListObj.3
+man/man3/Tcl_NewLongObj.3
+man/man3/Tcl_NewObj.3
+man/man3/Tcl_NewStringObj.3
+man/man3/Tcl_NewUnicodeObj.3
+man/man3/Tcl_NewWideIntObj.3
+man/man3/Tcl_NextHashEntry.3
+man/man3/Tcl_NotifyChannel.3
+man/man3/Tcl_NumUtfChars.3
+man/man3/Tcl_ObjGetVar2.3
+man/man3/Tcl_ObjPrintf.3
+man/man3/Tcl_ObjSetVar2.3
+man/man3/Tcl_OpenCommandChannel.3
+man/man3/Tcl_OpenFileChannel.3
+man/man3/Tcl_OpenTcpClient.3
+man/man3/Tcl_OpenTcpServer.3
+man/man3/Tcl_OutputBuffered.3
+man/man3/Tcl_Panic.3
+man/man3/Tcl_PanicVA.3
+man/man3/Tcl_ParseBraces.3
+man/man3/Tcl_ParseCommand.3
+man/man3/Tcl_ParseExpr.3
+man/man3/Tcl_ParseQuotedString.3
+man/man3/Tcl_ParseVar.3
+man/man3/Tcl_ParseVarName.3
+man/man3/Tcl_PkgPresent.3
+man/man3/Tcl_PkgPresentEx.3
+man/man3/Tcl_PkgProvide.3
+man/man3/Tcl_PkgProvideEx.3
+man/man3/Tcl_PkgRequire.3
+man/man3/Tcl_PkgRequireEx.3
+man/man3/Tcl_PkgRequireProc.3
+man/man3/Tcl_PosixError.3
+man/man3/Tcl_Preserve.3
+man/man3/Tcl_PrintDouble.3
+man/man3/Tcl_PutEnv.3
+man/man3/Tcl_QueryTimeProc.3
+man/man3/Tcl_QueueEvent.3
+man/man3/Tcl_Read.3
+man/man3/Tcl_ReadChars.3
+man/man3/Tcl_ReadRaw.3
+man/man3/Tcl_Realloc.3
+man/man3/Tcl_ReapDetachedProcs.3
+man/man3/Tcl_RecordAndEval.3
+man/man3/Tcl_RecordAndEvalObj.3
+man/man3/Tcl_RegExpCompile.3
+man/man3/Tcl_RegExpExec.3
+man/man3/Tcl_RegExpExecObj.3
+man/man3/Tcl_RegExpGetInfo.3
+man/man3/Tcl_RegExpMatch.3
+man/man3/Tcl_RegExpMatchObj.3
+man/man3/Tcl_RegExpRange.3
+man/man3/Tcl_RegisterChannel.3
+man/man3/Tcl_RegisterConfig.3
+man/man3/Tcl_RegisterObjType.3
+man/man3/Tcl_Release.3
+man/man3/Tcl_ResetResult.3
+man/man3/Tcl_RestoreInterpState.3
+man/man3/Tcl_RestoreResult.3
+man/man3/Tcl_SaveInterpState.3
+man/man3/Tcl_SaveResult.3
+man/man3/Tcl_ScanCountedElement.3
+man/man3/Tcl_ScanElement.3
+man/man3/Tcl_Seek.3
+man/man3/Tcl_ServiceAll.3
+man/man3/Tcl_ServiceEvent.3
+man/man3/Tcl_SetAssocData.3
+man/man3/Tcl_SetBignumObj.3
+man/man3/Tcl_SetBooleanObj.3
+man/man3/Tcl_SetByteArrayLength.3
+man/man3/Tcl_SetByteArrayObj.3
+man/man3/Tcl_SetChannelBufferSize.3
+man/man3/Tcl_SetChannelError.3
+man/man3/Tcl_SetChannelErrorInterp.3
+man/man3/Tcl_SetChannelOption.3
+man/man3/Tcl_SetCommandInfo.3
+man/man3/Tcl_SetCommandInfoFromToken.3
+man/man3/Tcl_SetDefaultEncodingDir.3
+man/man3/Tcl_SetDoubleObj.3
+man/man3/Tcl_SetEncodingSearchPath.3
+man/man3/Tcl_SetEnsembleFlags.3
+man/man3/Tcl_SetEnsembleMappingDict.3
+man/man3/Tcl_SetEnsembleSubcommandList.3
+man/man3/Tcl_SetEnsembleUnknownHandler.3
+man/man3/Tcl_SetErrno.3
+man/man3/Tcl_SetErrorCode.3
+man/man3/Tcl_SetErrorCodeVA.3
+man/man3/Tcl_SetExitProc.3
+man/man3/Tcl_SetHashValue.3
+man/man3/Tcl_SetIntObj.3
+man/man3/Tcl_SetListObj.3
+man/man3/Tcl_SetLongObj.3
+man/man3/Tcl_SetMainLoop.3
+man/man3/Tcl_SetMaxBlockTime.3
+man/man3/Tcl_SetNamespaceUnknownHandler.3
+man/man3/Tcl_SetObjErrorCode.3
+man/man3/Tcl_SetObjLength.3
+man/man3/Tcl_SetObjResult.3
+man/man3/Tcl_SetPanicProc.3
+man/man3/Tcl_SetRecursionLimit.3
+man/man3/Tcl_SetResult.3
+man/man3/Tcl_SetReturnOptions.3
+man/man3/Tcl_SetServiceMode.3
+man/man3/Tcl_SetStdChannel.3
+man/man3/Tcl_SetStringObj.3
+man/man3/Tcl_SetSystemEncoding.3
+man/man3/Tcl_SetTimeProc.3
+man/man3/Tcl_SetTimer.3
+man/man3/Tcl_SetUnicodeObj.3
+man/man3/Tcl_SetVar.3
+man/man3/Tcl_SetVar2.3
+man/man3/Tcl_SetVar2Ex.3
+man/man3/Tcl_SetWideIntObj.3
+man/man3/Tcl_SignalId.3
+man/man3/Tcl_SignalMsg.3
+man/man3/Tcl_Sleep.3
+man/man3/Tcl_SourceRCFile.3
+man/man3/Tcl_SpliceChannel.3
+man/man3/Tcl_SplitList.3
+man/man3/Tcl_SplitPath.3
+man/man3/Tcl_StackChannel.3
+man/man3/Tcl_StandardChannels.3
+man/man3/Tcl_Stat.3
+man/man3/Tcl_StaticPackage.3
+man/man3/Tcl_StringCaseMatch.3
+man/man3/Tcl_StringMatch.3
+man/man3/Tcl_SubstObj.3
+man/man3/Tcl_TakeBignumFromObj.3
+man/man3/Tcl_Tell.3
+man/man3/Tcl_ThreadAlert.3
+man/man3/Tcl_ThreadQueueEvent.3
+man/man3/Tcl_TraceCommand.3
+man/man3/Tcl_TraceVar.3
+man/man3/Tcl_TraceVar2.3
+man/man3/Tcl_TranslateFileName.3
+man/man3/Tcl_TruncateChannel.3
+man/man3/Tcl_Ungets.3
+man/man3/Tcl_UniChar.3
+man/man3/Tcl_UniCharAtIndex.3
+man/man3/Tcl_UniCharCaseMatch.3
+man/man3/Tcl_UniCharIsAlnum.3
+man/man3/Tcl_UniCharIsAlpha.3
+man/man3/Tcl_UniCharIsControl.3
+man/man3/Tcl_UniCharIsDigit.3
+man/man3/Tcl_UniCharIsGraph.3
+man/man3/Tcl_UniCharIsLower.3
+man/man3/Tcl_UniCharIsPrint.3
+man/man3/Tcl_UniCharIsPunct.3
+man/man3/Tcl_UniCharIsSpace.3
+man/man3/Tcl_UniCharIsUpper.3
+man/man3/Tcl_UniCharIsWordChar.3
+man/man3/Tcl_UniCharLen.3
+man/man3/Tcl_UniCharNcasecmp.3
+man/man3/Tcl_UniCharNcmp.3
+man/man3/Tcl_UniCharToLower.3
+man/man3/Tcl_UniCharToTitle.3
+man/man3/Tcl_UniCharToUpper.3
+man/man3/Tcl_UniCharToUtf.3
+man/man3/Tcl_UniCharToUtfDString.3
+man/man3/Tcl_UnlinkVar.3
+man/man3/Tcl_UnregisterChannel.3
+man/man3/Tcl_UnsetVar.3
+man/man3/Tcl_UnsetVar2.3
+man/man3/Tcl_UnstackChannel.3
+man/man3/Tcl_UntraceCommand.3
+man/man3/Tcl_UntraceVar.3
+man/man3/Tcl_UntraceVar2.3
+man/man3/Tcl_UpVar.3
+man/man3/Tcl_UpVar2.3
+man/man3/Tcl_UpdateLinkedVar.3
+man/man3/Tcl_UtfAtIndex.3
+man/man3/Tcl_UtfBackslash.3
+man/man3/Tcl_UtfCharComplete.3
+man/man3/Tcl_UtfFindFirst.3
+man/man3/Tcl_UtfFindLast.3
+man/man3/Tcl_UtfNext.3
+man/man3/Tcl_UtfPrev.3
+man/man3/Tcl_UtfToExternal.3
+man/man3/Tcl_UtfToExternalDString.3
+man/man3/Tcl_UtfToLower.3
+man/man3/Tcl_UtfToTitle.3
+man/man3/Tcl_UtfToUniChar.3
+man/man3/Tcl_UtfToUniCharDString.3
+man/man3/Tcl_UtfToUpper.3
+man/man3/Tcl_ValidateAllMemory.3
+man/man3/Tcl_VarEval.3
+man/man3/Tcl_VarEvalVA.3
+man/man3/Tcl_VarTraceInfo.3
+man/man3/Tcl_VarTraceInfo2.3
+man/man3/Tcl_WaitForEvent.3
+man/man3/Tcl_WaitPid.3
+man/man3/Tcl_WinTCharToUtf.3
+man/man3/Tcl_WinUtfToTChar.3
+man/man3/Tcl_Write.3
+man/man3/Tcl_WriteChars.3
+man/man3/Tcl_WriteObj.3
+man/man3/Tcl_WriteRaw.3
+man/man3/Tcl_WrongNumArgs.3
+man/man3/attemptckalloc.3
+man/man3/attemptckrealloc.3
+man/man3/ckalloc.3
+man/man3/ckfree.3
+man/man3/ckrealloc.3
+man/mann/SafeBase.n
+man/mann/Tcl.n
+man/mann/after.n
+man/mann/append.n
+man/mann/apply.n
+man/mann/array.n
+man/mann/auto_execok.n
+man/mann/auto_import.n
+man/mann/auto_load.n
+man/mann/auto_mkindex.n
+man/mann/auto_mkindex_old.n
+man/mann/auto_qualify.n
+man/mann/auto_reset.n
+man/mann/bgerror.n
+man/mann/binary.n
+man/mann/break.n
+man/mann/case.n
+man/mann/catch.n
+man/mann/cd.n
+man/mann/chan.n
+man/mann/clock.n
+man/mann/close.n
+man/mann/concat.n
+man/mann/continue.n
+man/mann/dde.n
+man/mann/dict.n
+man/mann/encoding.n
+man/mann/eof.n
+man/mann/error.n
+man/mann/eval.n
+man/mann/exec.n
+man/mann/exit.n
+man/mann/expr.n
+man/mann/fblocked.n
+man/mann/fconfigure.n
+man/mann/fcopy.n
+man/mann/file.n
+man/mann/fileevent.n
+man/mann/filename.n
+man/mann/flush.n
+man/mann/for.n
+man/mann/foreach.n
+man/mann/format.n
+man/mann/gets.n
+man/mann/glob.n
+man/mann/global.n
+man/mann/history.n
+man/mann/http.n
+man/mann/if.n
+man/mann/incr.n
+man/mann/info.n
+man/mann/interp.n
+man/mann/join.n
+man/mann/lappend.n
+man/mann/lassign.n
+man/mann/lindex.n
+man/mann/linsert.n
+man/mann/list.n
+man/mann/llength.n
+man/mann/load.n
+man/mann/lrange.n
+man/mann/lrepeat.n
+man/mann/lreplace.n
+man/mann/lreverse.n
+man/mann/lsearch.n
+man/mann/lset.n
+man/mann/lsort.n
+man/mann/mathfunc.n
+man/mann/mathop.n
+man/mann/memory.n
+man/mann/msgcat.n
+man/mann/namespace.n
+man/mann/open.n
+man/mann/package.n
+man/mann/parray.n
+man/mann/pid.n
+man/mann/pkg::create.n
+man/mann/pkg_mkIndex.n
+man/mann/platform.n
+man/mann/platform::shell.n
+man/mann/proc.n
+man/mann/puts.n
+man/mann/pwd.n
+man/mann/re_syntax.n
+man/mann/read.n
+man/mann/refchan.n
+man/mann/regexp.n
+man/mann/registry.n
+man/mann/regsub.n
+man/mann/rename.n
+man/mann/return.n
+man/mann/scan.n
+man/mann/seek.n
+man/mann/set.n
+man/mann/socket.n
+man/mann/source.n
+man/mann/split.n
+man/mann/string.n
+man/mann/subst.n
+man/mann/switch.n
+man/mann/tcl_endOfWord.n
+man/mann/tcl_findLibrary.n
+man/mann/tcl_startOfNextWord.n
+man/mann/tcl_startOfPreviousWord.n
+man/mann/tcl_wordBreakAfter.n
+man/mann/tcl_wordBreakBefore.n
+man/mann/tcltest.n
+man/mann/tclvars.n
+man/mann/tell.n
+man/mann/time.n
+man/mann/tm.n
+man/mann/trace.n
+man/mann/unknown.n
+man/mann/unload.n
+man/mann/unset.n
+man/mann/update.n
+man/mann/uplevel.n
+man/mann/upvar.n
+man/mann/variable.n
+man/mann/vwait.n
+man/mann/while.n
diff --git a/lang/tcl85/buildlink3.mk b/lang/tcl85/buildlink3.mk
new file mode 100644
index 00000000000..906056a6db9
--- /dev/null
+++ b/lang/tcl85/buildlink3.mk
@@ -0,0 +1,32 @@
+# $NetBSD: buildlink3.mk,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+BUILDLINK_TREE+= tcl
+
+.if !defined(TCL_BUILDLINK3_MK)
+TCL_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.tcl+= tcl>=8.5.7
+BUILDLINK_ABI_DEPENDS.tcl+= tcl>=8.5.7
+BUILDLINK_PKGSRCDIR.tcl?= ../../lang/tcl85
+
+BUILDLINK_FILES.tcl+= bin/tclsh*
+#
+# Make "-ltcl" and "-ltcl8.5" resolve into "-ltcl85", so that we don't
+# need to patch so many Makefiles.
+#
+BUILDLINK_TRANSFORM+= l:tcl:tcl85
+BUILDLINK_TRANSFORM+= l:tcl8.5:tcl85
+
+TCLCONFIG_SH?= ${BUILDLINK_PREFIX.tcl}/lib/tclConfig.sh
+
+_TOOLS_USE_PKGSRC.tclsh= yes
+
+FIND_PREFIX:= TOOLS_PREFIX.tclsh=tcl
+.include "../../mk/find-prefix.mk"
+TCLSH= ${TOOLS_PREFIX.tclsh}/bin/tclsh
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+.endif # TCL_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -tcl
diff --git a/lang/tcl85/distinfo b/lang/tcl85/distinfo
new file mode 100644
index 00000000000..5b1f9f1526c
--- /dev/null
+++ b/lang/tcl85/distinfo
@@ -0,0 +1,17 @@
+$NetBSD: distinfo,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+SHA1 (tcl8.5.15-src.tar.gz) = ff20698d7f77617ea179ec225300f4ea4a905299
+RMD160 (tcl8.5.15-src.tar.gz) = 17f570c0f44da5cb49b4b7c56273544bad7b5a76
+Size (tcl8.5.15-src.tar.gz) = 4536117 bytes
+SHA1 (patch-generic_tclInt.h) = 2e83a0345bc7f87b2a0196d2c2d8d2462b28fbd6
+SHA1 (patch-generic_tclPort.h) = 2b1d78456b23206e5431a696f271d5ecebac7b52
+SHA1 (patch-generic_tclPosixStr.c) = 8c252a4f3d8898fb48544d15123d6a8ddc3172f0
+SHA1 (patch-tests_load.test) = 438695ab76e01646e49aadc01c44344a5495eabb
+SHA1 (patch-tests_pkgMkIndex.test) = 3091cc124a4e7ae6a1140f83c9f43bee7edccf98
+SHA1 (patch-unix_Makefile.in) = 956490fe37e5f8b5564c2f3ef3c474c49ba9f73a
+SHA1 (patch-unix_configure) = 1ec17ce4dbb78cbf42f5ee39bc10a6840b360913
+SHA1 (patch-unix_tclConfig.sh.in) = 6d1c69065d7c4ed1a7462f041094e91e33d7d0f4
+SHA1 (patch-unix_tclUnixCompat.c) = 7ffa40a1a56345f5b86cd896e8e3b0d5748d8c5e
+SHA1 (patch-unix_tclUnixFCmd.c) = a56a12b8a0068e914d10336076347ca2b0ba9ac7
+SHA1 (patch-unix_tclUnixInit.c) = 4cbddb3e1a9ed4bbbf2d8de0df1a9032fc5b2629
+SHA1 (patch-unix_tclUnixPort.h) = fde3e497b9c94958aaac1b14a4f97916f17cf951
diff --git a/lang/tcl85/options.mk b/lang/tcl85/options.mk
new file mode 100644
index 00000000000..e73efe8fdba
--- /dev/null
+++ b/lang/tcl85/options.mk
@@ -0,0 +1,18 @@
+# $NetBSD: options.mk,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.tcl
+PKG_SUPPORTED_OPTIONS= threads debug
+PKG_SUGGESTED_OPTIONS= threads
+
+.include "../../mk/bsd.prefs.mk"
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mdebug)
+CONFIGURE_ARGS+= --enable-symbols=mem
+.endif
+
+.if !empty(PKG_OPTIONS:Mthreads)
+CONFIGURE_ARGS+= --enable-threads
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
diff --git a/lang/tcl85/patches/patch-generic_tclInt.h b/lang/tcl85/patches/patch-generic_tclInt.h
new file mode 100644
index 00000000000..482919b9d25
--- /dev/null
+++ b/lang/tcl85/patches/patch-generic_tclInt.h
@@ -0,0 +1,29 @@
+$NetBSD: patch-generic_tclInt.h,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Always use <stdilb.h> and <stddef.h>
+
+--- generic/tclInt.h.orig 2012-07-16 11:57:05.000000000 +0000
++++ generic/tclInt.h
+@@ -38,21 +38,9 @@
+ #include <stdio.h>
+
+ #include <ctype.h>
+-#ifdef NO_STDLIB_H
+-# include "../compat/stdlib.h"
+-#else
+-# include <stdlib.h>
+-#endif
+-#ifdef NO_STRING_H
+-#include "../compat/string.h"
+-#else
++#include <stdlib.h>
+ #include <string.h>
+-#endif
+-#ifdef STDC_HEADERS
+ #include <stddef.h>
+-#else
+-typedef int ptrdiff_t;
+-#endif
+
+ /*
+ * Ensure WORDS_BIGENDIAN is defined correctly:
diff --git a/lang/tcl85/patches/patch-generic_tclPort.h b/lang/tcl85/patches/patch-generic_tclPort.h
new file mode 100644
index 00000000000..ad743105395
--- /dev/null
+++ b/lang/tcl85/patches/patch-generic_tclPort.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-generic_tclPort.h,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Use relative path to include.
+
+--- generic/tclPort.h.orig 2013-03-21 12:57:40.000000000 +0000
++++ generic/tclPort.h
+@@ -20,7 +20,7 @@
+ #if defined(_WIN32)
+ # include "tclWinPort.h"
+ #else
+-# include "tclUnixPort.h"
++# include "../unix/tclUnixPort.h"
+ #endif
+ #include "tcl.h"
+
diff --git a/lang/tcl85/patches/patch-generic_tclPosixStr.c b/lang/tcl85/patches/patch-generic_tclPosixStr.c
new file mode 100644
index 00000000000..d2bb7dec4ee
--- /dev/null
+++ b/lang/tcl85/patches/patch-generic_tclPosixStr.c
@@ -0,0 +1,24 @@
+$NetBSD: patch-generic_tclPosixStr.c,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Carried over from TCL 8.4
+
+--- generic/tclPosixStr.c.orig 2012-07-16 11:57:05.000000000 +0000
++++ generic/tclPosixStr.c
+@@ -335,7 +335,7 @@ Tcl_ErrnoId(void)
+ #if defined(EOPNOTSUPP) && (!defined(ENOTSUP) || (ENOTSUP != EOPNOTSUPP))
+ case EOPNOTSUPP: return "EOPNOTSUPP";
+ #endif
+-#if defined(EOVERFLOW) && (!defined(EFBIG) || (EOVERFLOW != EFBIG)) && (!defined(EINVAL) || (EOVERFLOW != EINVAL))
++#if defined(EOVERFLOW) && (!defined(EFBIG) || (EOVERFLOW != EFBIG)) && (!defined(EINVAL) || (EOVERFLOW != EINVAL)) && (!defined(ERANGE) || (EOVERFLOW != ERANGE))
+ case EOVERFLOW: return "EOVERFLOW";
+ #endif
+ #ifdef EPERM
+@@ -783,7 +783,7 @@ Tcl_ErrnoMsg(
+ #if defined(EOPNOTSUPP) && (!defined(ENOTSUP) || (ENOTSUP != EOPNOTSUPP))
+ case EOPNOTSUPP: return "operation not supported on socket";
+ #endif
+-#if defined(EOVERFLOW) && (!defined(EFBIG) || (EOVERFLOW != EFBIG)) && (!defined(EINVAL) || (EOVERFLOW != EINVAL))
++#if defined(EOVERFLOW) && (!defined(EFBIG) || (EOVERFLOW != EFBIG)) && (!defined(EINVAL) || (EOVERFLOW != EINVAL)) && (!defined(ERANGE) || (EOVERFLOW != ERANGE))
+ case EOVERFLOW: return "file too big";
+ #endif
+ #ifdef EPERM
diff --git a/lang/tcl85/patches/patch-tests_load.test b/lang/tcl85/patches/patch-tests_load.test
new file mode 100644
index 00000000000..24648364a4e
--- /dev/null
+++ b/lang/tcl85/patches/patch-tests_load.test
@@ -0,0 +1,15 @@
+$NetBSD: patch-tests_load.test,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Carried over from TCL 8.4
+
+--- tests/load.test.orig 2012-07-16 11:57:06.000000000 +0000
++++ tests/load.test
+@@ -21,7 +21,7 @@ if {![info exists ext]} {
+ set ext [info sharedlibextension]
+ }
+ # Tests require the existence of one of the DLLs in the dltest directory.
+-set testDir [file join [file dirname [info nameofexecutable]] dltest]
++set testDir [file join [file dirname [info nameofexecutable]] .. dltest .libs ]
+ set x [file join $testDir pkga$ext]
+ set dll "[file tail $x]Required"
+ testConstraint $dll [file readable $x]
diff --git a/lang/tcl85/patches/patch-tests_pkgMkIndex.test b/lang/tcl85/patches/patch-tests_pkgMkIndex.test
new file mode 100644
index 00000000000..c5bec090dde
--- /dev/null
+++ b/lang/tcl85/patches/patch-tests_pkgMkIndex.test
@@ -0,0 +1,33 @@
+$NetBSD: patch-tests_pkgMkIndex.test,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Carried over from TCL 8.4
+
+--- tests/pkgMkIndex.test.orig 2013-08-30 15:58:40.000000000 +0000
++++ tests/pkgMkIndex.test
+@@ -555,7 +555,7 @@ removeFile [file join pkg circ2.tcl]
+ removeFile [file join pkg circ3.tcl]
+
+ # Some tests require the existence of one of the DLLs in the dltest directory
+-set x [file join [file dirname [info nameofexecutable]] dltest \
++set x [file join [file dirname [info nameofexecutable]] .. dltest .libs \
+ pkga[info sharedlibextension]]
+ set dll "[file tail $x]Required"
+ testConstraint $dll [file exists $x]
+@@ -568,7 +568,7 @@ proc pkga_neq { x } {
+ return [expr {! [pkgq_eq $x]}]
+ }
+ } [file join pkg pkga.tcl]
+- file copy -force $x $fullPkgPath
++ eval file copy -force [glob "$x*"] $fullPkgPath
+ }
+ testConstraint exec [llength [info commands ::exec]]
+
+@@ -594,7 +594,7 @@ test pkgMkIndex-10.2 {package in DLL hid
+ } {0 {}}
+
+ if {[testConstraint $dll]} {
+- file delete -force [file join $fullPkgPath [file tail $x]]
++ eval file delete -force [global [file join $fullPkgPath [file tail "$x*"] ] ]
+ removeFile [file join pkg pkga.tcl]
+ }
+
diff --git a/lang/tcl85/patches/patch-unix_Makefile.in b/lang/tcl85/patches/patch-unix_Makefile.in
new file mode 100644
index 00000000000..5968f8ead8c
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_Makefile.in
@@ -0,0 +1,153 @@
+$NetBSD: patch-unix_Makefile.in,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Shared library handling on pkgsrc.
+
+--- unix/Makefile.in.orig 2012-11-09 17:14:39.000000000 +0200
++++ unix/Makefile.in 2013-04-08 17:05:01.000000000 +0300
+@@ -8,6 +8,7 @@
+ MAJOR_VERSION = @TCL_MAJOR_VERSION@
+ MINOR_VERSION = @TCL_MINOR_VERSION@
+ PATCH_LEVEL = @TCL_PATCH_LEVEL@
++SHLIB_VERSION = @SHLIB_VERSION@
+
+ #--------------------------------------------------------------------------
+ # Things you can change to personalize the Makefile for your own site (you can
+@@ -54,6 +55,8 @@
+
+ # Directory in which to install the include file tcl.h:
+ INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir)
++UNIX_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/tcl/unix
++GENERIC_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/tcl/generic
+
+ # Path to the private tcl header dir:
+ PRIVATE_INCLUDE_DIR = @PRIVATE_INCLUDE_DIR@
+@@ -100,7 +103,7 @@
+ #CFLAGS = $(CFLAGS_DEBUG)
+ #CFLAGS = $(CFLAGS_OPTIMIZE)
+ #CFLAGS = $(CFLAGS_DEBUG) $(CFLAGS_OPTIMIZE)
+-CFLAGS = @CFLAGS_DEFAULT@ @CFLAGS@
++CFLAGS += @CFLAGS_DEFAULT@ @CFLAGS@
+
+ # Flags to pass to the linker
+ LDFLAGS_DEBUG = @LDFLAGS_DEBUG@
+@@ -194,6 +197,7 @@
+ #BUILD_DLTEST =
+
+ TCL_LIB_FILE = @TCL_LIB_FILE@
++TCL_LIB_A_FILE = ${TCL_LIB_FILE:@SHLIB_SUFFIX@=.a}
+ #TCL_LIB_FILE = libtcl.a
+
+ # Generic lib name used in rules that apply to tcl and tk
+@@ -542,7 +546,7 @@
+
+ all: binaries libraries doc
+
+-binaries: ${LIB_FILE} $(STUB_LIB_FILE) ${TCL_EXE}
++binaries: ${LIB_FILE} $(STUB_LIB_FILE) ${TCL_EXE} ${TCL_LIB_A_FILE}
+
+ libraries:
+
+@@ -558,6 +562,11 @@
+ rm -f $@
+ @MAKE_STUB_LIB@
+
++${TCL_LIB_A_FILE}: ${OBJS}
++ rm -rf $@
++ ar cr $@ ${OBJS}
++ $(RANLIB) $@
++
+ # Make target which outputs the list of the .o contained in the Tcl lib useful
+ # to build a single big shared library containing Tcl and other extensions.
+ # Used for the Tcl Plugin. -- dl
+@@ -719,9 +728,16 @@
+ done;
+ @echo "Installing $(LIB_FILE) to $(DLL_INSTALL_DIR)/"
+ @@INSTALL_LIB@
+- @chmod 555 "$(DLL_INSTALL_DIR)"/$(LIB_FILE)
++ @cd "$(DLL_INSTALL_DIR)" && if test "$(SHLIB_SUFFIX)" = ".dylib"; then \
++ ln -sf libtcl$(MAJOR_VERSION)$(MINOR_VERSION).$(SHLIB_VERSION)$(SHLIB_SUFFIX) $(LIB_FILE) ; \
++ else \
++ ln -sf libtcl$(MAJOR_VERSION)$(MINOR_VERSION)$(SHLIB_SUFFIX).$(SHLIB_VERSION) $(LIB_FILE) ; \
++ fi
++ @echo "Installing ${TCL_LIB_A_FILE} to $(DLL_INSTALL_DIR)/"
++ @$(INSTALL_DATA) ${TCL_LIB_A_FILE} $(DLL_INSTALL_DIR)/${TCL_LIB_A_FILE}
+ @echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(VERSION)@EXEEXT@"
+ @$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)"/tclsh$(VERSION)@EXEEXT@
++ @cd "$(BIN_INSTALL_DIR)" && ln -sf tclsh$(VERSION)@EXEEXT@ tclsh
+ @echo "Installing tclConfig.sh to $(CONFIG_INSTALL_DIR)/"
+ @$(INSTALL_DATA) tclConfig.sh "$(CONFIG_INSTALL_DIR)"/tclConfig.sh
+ @if test "$(STUB_LIB_FILE)" != "" ; then \
+@@ -731,7 +747,8 @@
+ @EXTRA_INSTALL_BINARIES@
+
+ install-libraries: libraries $(INSTALL_TZDATA) install-msgs
+- @for i in "$(INCLUDE_INSTALL_DIR)" "$(SCRIPT_INSTALL_DIR)"; \
++ @for i in "$(INCLUDE_INSTALL_DIR)" "$(SCRIPT_INSTALL_DIR)" \
++ "$(GENERIC_INCLUDE_INSTALL_DIR)" "$(UNIX_INCLUDE_INSTALL_DIR)"; \
+ do \
+ if [ ! -d "$$i" ] ; then \
+ echo "Making directory $$i"; \
+@@ -739,7 +756,7 @@
+ else true; \
+ fi; \
+ done;
+- @for i in opt0.4 http1.0 encoding ../tcl8 ../tcl8/8.4 ../tcl8/8.4/platform ../tcl8/8.5; \
++ @for i in opt0.4 http1.0 encoding; \
+ do \
+ if [ ! -d "$(SCRIPT_INSTALL_DIR)"/$$i ] ; then \
+ echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
+@@ -748,12 +765,17 @@
+ fi; \
+ done;
+ @echo "Installing header files to $(INCLUDE_INSTALL_DIR)/";
+- @for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h \
+- $(GENERIC_DIR)/tclPlatDecls.h \
+- $(GENERIC_DIR)/tclTomMath.h \
+- $(GENERIC_DIR)/tclTomMathDecls.h ; \
++ @for i in $(GENERIC_DIR)/*.h ; \
++ do \
++ $(INSTALL_DATA) $$i "$(GENERIC_INCLUDE_INSTALL_DIR)"; \
++ done;
++ @for i in $(UNIX_DIR)/*.h ; \
++ do \
++ $(INSTALL_DATA) $$i "$(UNIX_INCLUDE_INSTALL_DIR)"; \
++ done;
++ @for i in tcl.h tclDecls.h tclPlatDecls.h ; \
+ do \
+- $(INSTALL_DATA) $$i "$(INCLUDE_INSTALL_DIR)"; \
++ cd "$(INCLUDE_INSTALL_DIR)" && ln -sf tcl/generic/$$i $$i; \
+ done;
+ @echo "Installing library files to $(SCRIPT_INSTALL_DIR)/";
+ @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex \
+@@ -767,21 +789,26 @@
+ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/http1.0; \
+ done;
+ @echo "Installing package http 2.7.12 as a Tcl Module";
+- @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/http-2.7.12.tm;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/http/http.tcl;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/http/pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"/http/pkgIndex.tcl;
+ @echo "Installing package opt0.4 files to $(SCRIPT_INSTALL_DIR)/opt0.4/";
+ @for i in $(TOP_DIR)/library/opt/*.tcl ; \
+ do \
+ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/opt0.4; \
+ done;
+ @echo "Installing package msgcat 1.5.2 as a Tcl Module";
+- @$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/msgcat-1.5.2.tm;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)"/msgcat1.4/msgcat.tcl;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"/msgcat1.4/pkgIndex.tcl;
+ @echo "Installing package tcltest 2.3.5 as a Tcl Module";
+- @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/tcltest-2.3.5.tm;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/tcltest2.3/tcltest.tcl;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"/tcltest2.3/pkgIndex.tcl;
+
+ @echo "Installing package platform 1.0.12 as a Tcl Module";
+- @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform-1.0.12.tm;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/platform1.0/platform.tcl;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/platform/pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"/platform1.0/pkgIndex.tcl;
+ @echo "Installing package platform::shell 1.1.4 as a Tcl Module";
+- @$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform/shell-1.1.4.tm;
++ @$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/shell1.1/shell.tcl
++ @$(INSTALL_DATA) $(TOP_DIR)/library/platform/pkgIndex.tcl "$(SCRIPT_INSTALL_DIR)"/shell1.1/pkgIndex.tcl
+
+ @echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding/";
+ @for i in $(TOP_DIR)/library/encoding/*.enc ; do \
diff --git a/lang/tcl85/patches/patch-unix_configure b/lang/tcl85/patches/patch-unix_configure
new file mode 100644
index 00000000000..599ffc5f7ba
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_configure
@@ -0,0 +1,178 @@
+$NetBSD: patch-unix_configure,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Add MirBSD and DragonFly support.
+
+--- unix/configure.orig 2013-09-13 16:07:56.000000000 +0000
++++ unix/configure
+@@ -7560,7 +7560,7 @@ fi
+ CC_SEARCH_FLAGS=""
+ LD_SEARCH_FLAGS=""
+ ;;
+- OpenBSD-*)
++ OpenBSD-*|MirBSD-*)
+ arch=`arch -s`
+ case "$arch" in
+ vax)
+@@ -7642,11 +7642,10 @@ fi
+ ;;
+ esac
+ ;;
+- FreeBSD-*)
++ FreeBSD-*|DragonFly-*)
+ # This configuration from FreeBSD Ports.
+ SHLIB_CFLAGS="-fPIC"
+ SHLIB_LD="${CC} -shared"
+- TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\$@"
+ SHLIB_SUFFIX=".so"
+ DL_OBJS="tclLoadDl.o"
+ DL_LIBS=""
+@@ -7672,7 +7671,6 @@ fi
+ TCL_LIB_VERSIONS_OK=nodots
+ ;;
+ Darwin-*)
+- CFLAGS_OPTIMIZE="-Os"
+ SHLIB_CFLAGS="-fno-common"
+ # To avoid discrepancies between what headers configure sees during
+ # preprocessing tests and compiling tests, move any -isysroot and
+@@ -8846,7 +8844,7 @@ fi
+ BSD/OS*) ;;
+ CYGWIN_*|MINGW32_*) ;;
+ IRIX*) ;;
+- NetBSD-*|FreeBSD-*|OpenBSD-*) ;;
++ NetBSD-*|FreeBSD-*|OpenBSD-*|DragonFly-*|MirBSD-*) ;;
+ Darwin-*) ;;
+ SCO_SV-3.2*) ;;
+ *) SHLIB_CFLAGS="-fPIC" ;;
+@@ -8877,7 +8875,11 @@ fi
+
+ else
+
+- INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) "$(LIB_INSTALL_DIR)/$(LIB_FILE)"'
++ if test "${SHLIB_SUFFIX}" = ".dylib" ; then
++ INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) "$(LIB_INSTALL_DIR)/libtcl$(MAJOR_VERSION)$(MINOR_VERSION).$(SHLIB_VERSION)$(SHLIB_SUFFIX)"'
++ else
++ INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) "$(LIB_INSTALL_DIR)/$(LIB_FILE).$(SHLIB_VERSION)"'
++ fi
+
+ fi
+
+@@ -8911,7 +8913,7 @@ fi
+ else
+
+ MAKE_STUB_LIB='${STLIB_LD} $@ ${STUB_LIB_OBJS} ; ${RANLIB} $@'
+- INSTALL_STUB_LIB='$(INSTALL_LIBRARY) $(STUB_LIB_FILE) "$(LIB_INSTALL_DIR)/$(STUB_LIB_FILE)" ; (cd "$(LIB_INSTALL_DIR)" ; $(RANLIB) $(STUB_LIB_FILE))'
++ INSTALL_STUB_LIB='$(INSTALL_DATA) $(STUB_LIB_FILE) "$(LIB_INSTALL_DIR)/$(STUB_LIB_FILE)" ; (cd "$(LIB_INSTALL_DIR)" ; $(RANLIB) $(STUB_LIB_FILE))'
+
+ fi
+
+@@ -18684,9 +18686,9 @@ fi
+ # building libtcl as a shared library instead of a static library.
+ #--------------------------------------------------------------------
+
+-TCL_UNSHARED_LIB_SUFFIX=${UNSHARED_LIB_SUFFIX}
+-TCL_SHARED_LIB_SUFFIX=${SHARED_LIB_SUFFIX}
+-eval "TCL_LIB_FILE=libtcl${LIB_SUFFIX}"
++TCL_UNSHARED_LIB_SUFFIX=${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}.a
++TCL_SHARED_LIB_SUFFIX=${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${SHLIB_SUFFIX}
++eval "TCL_LIB_FILE=libtcl${TCL_SHARED_LIB_SUFFIX}"
+
+ # tclConfig.sh needs a version of the _LIB_SUFFIX that has been eval'ed
+ # since on some platforms TCL_LIB_FILE contains shell escapes.
+@@ -18791,13 +18793,10 @@ _ACEOF
+ else
+ # libdir must be a fully qualified path and not ${exec_prefix}/lib
+ eval libdir="$libdir"
+- if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
+- TCL_LIB_FLAG="-ltcl${TCL_VERSION}"
+- else
+- TCL_LIB_FLAG="-ltcl`echo ${TCL_VERSION} | tr -d .`"
+- fi
++ TCL_LIB_FLAG="-ltcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
+ TCL_BUILD_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_LIB_FLAG}"
+- TCL_LIB_SPEC="-L${libdir} ${TCL_LIB_FLAG}"
++ TCL_LIB_SPEC_RPATH="${COMPILER_RPATH_FLAG}${libdir}"
++ TCL_LIB_SPEC="${TCL_LIB_SPEC_RPATH} -L${libdir} ${TCL_LIB_FLAG}"
+ fi
+ VERSION='${VERSION}'
+ eval "CFG_TCL_SHARED_LIB_SUFFIX=${TCL_SHARED_LIB_SUFFIX}"
+@@ -18816,12 +18815,11 @@ if test "$FRAMEWORK_BUILD" = "1" ; then
+ TCL_PACKAGE_PATH="~/Library/Tcl /Library/Tcl /System/Library/Tcl ~/Library/Frameworks /Library/Frameworks /System/Library/Frameworks"
+ test -z "$TCL_MODULE_PATH" && \
+ TCL_MODULE_PATH="~/Library/Tcl /Library/Tcl /System/Library/Tcl"
+-elif test "$prefix/lib" != "$libdir"; then
+- TCL_PACKAGE_PATH="${libdir} ${prefix}/lib ${TCL_PACKAGE_PATH}"
+ else
+- TCL_PACKAGE_PATH="${prefix}/lib ${TCL_PACKAGE_PATH}"
++ TCL_PACKAGE_PATH="${prefix}/lib/tcl ${prefix}/lib"
+ fi
+
++
+ #--------------------------------------------------------------------
+ # The statements below define various symbols relating to Tcl
+ # stub support.
+@@ -18834,12 +18832,7 @@ eval "TCL_STUB_LIB_FILE=libtclstub${TCL_
+ eval "TCL_STUB_LIB_FILE=\"${TCL_STUB_LIB_FILE}\""
+ eval "TCL_STUB_LIB_DIR=${libdir}"
+
+-if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
+- TCL_STUB_LIB_FLAG="-ltclstub${TCL_VERSION}"
+-else
+- TCL_STUB_LIB_FLAG="-ltclstub`echo ${TCL_VERSION} | tr -d .`"
+-fi
+-
++TCL_STUB_LIB_FLAG="-ltclstub${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
+ TCL_BUILD_STUB_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_STUB_LIB_FLAG}"
+ TCL_STUB_LIB_SPEC="-L${TCL_STUB_LIB_DIR} ${TCL_STUB_LIB_FLAG}"
+ TCL_BUILD_STUB_LIB_PATH="`pwd`/${TCL_STUB_LIB_FILE}"
+@@ -18991,34 +18984,15 @@ fi
+ # Transform confdefs.h into DEFS.
+ # Protect against shell expansion while executing Makefile rules.
+ # Protect against Makefile macro expansion.
+-#
+-# If the first sed substitution is executed (which looks for macros that
+-# take arguments), then we branch to the quote section. Otherwise,
+-# look for a macro that doesn't take arguments.
+-cat >confdef2opt.sed <<\_ACEOF
+-t clear
+-: clear
+-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
+-t quote
+-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
+-t quote
+-d
+-: quote
+-s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
+-s,\[,\\&,g
+-s,\],\\&,g
+-s,\$,$$,g
+-p
+-_ACEOF
+-# We use echo to avoid assuming a particular line-breaking character.
+-# The extra dot is to prevent the shell from consuming trailing
+-# line-breaks from the sub-command output. A line-break within
+-# single-quotes doesn't work because, if this script is created in a
+-# platform that uses two characters for line-breaks (e.g., DOS), tr
+-# would break.
+-ac_LF_and_DOT=`echo; echo .`
+-DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
+-rm -f confdef2opt.sed
++cat > conftest.defs <<\EOF
++s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
++s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
++s%\[%\\&%g
++s%\]%\\&%g
++s%\$%$$%g
++EOF
++DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
++rm -f conftest.defs
+
+
+
+@@ -19639,6 +19613,7 @@ s,@EXTRA_BUILD_HTML@,$EXTRA_BUILD_HTML,;
+ s,@EXTRA_TCLSH_LIBS@,$EXTRA_TCLSH_LIBS,;t t
+ s,@DLTEST_LD@,$DLTEST_LD,;t t
+ s,@DLTEST_SUFFIX@,$DLTEST_SUFFIX,;t t
++s,@SHLIB_VERSION@,$SHLIB_VERSION,;t t
+ CEOF
+
+ _ACEOF
diff --git a/lang/tcl85/patches/patch-unix_tclConfig.sh.in b/lang/tcl85/patches/patch-unix_tclConfig.sh.in
new file mode 100644
index 00000000000..646c27c55e7
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_tclConfig.sh.in
@@ -0,0 +1,25 @@
+$NetBSD: patch-unix_tclConfig.sh.in,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+* Handling of thread PKG_OPTIONS.
+
+--- unix/tclConfig.sh.in.orig 2012-07-25 16:45:05.000000000 +0000
++++ unix/tclConfig.sh.in
+@@ -9,6 +9,8 @@
+ #
+ # The information in this file is specific to a single platform.
+
++if [ -z "${_TCL_NOTHREAD}" ]; then
++
+ # Tcl's version number.
+ TCL_VERSION='@TCL_VERSION@'
+ TCL_MAJOR_VERSION='@TCL_MAJOR_VERSION@'
+@@ -167,3 +169,9 @@ TCL_STUB_LIB_PATH='@TCL_STUB_LIB_PATH@'
+
+ # Flag, 1: we built Tcl with threads enables, 0 we didn't
+ TCL_THREADS=@TCL_THREADS@
++
++else
++
++. @prefix@/lib/tclConfig-nothread.sh
++
++fi
diff --git a/lang/tcl85/patches/patch-unix_tclUnixCompat.c b/lang/tcl85/patches/patch-unix_tclUnixCompat.c
new file mode 100644
index 00000000000..cadde57e945
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_tclUnixCompat.c
@@ -0,0 +1,67 @@
+$NetBSD: patch-unix_tclUnixCompat.c,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+This is needed on MirBSD, which does not have the required sysconf
+constants.
+
+--- unix/tclUnixCompat.c.orig Thu Dec 13 16:53:10 2012
++++ unix/tclUnixCompat.c
+@@ -197,10 +197,14 @@ TclpGetPwNam(
+ */
+
+ if (tsdPtr->pbuf == NULL) {
++#ifdef _SC_GETPW_R_SIZE_MAX
+ tsdPtr->pbuflen = (int) sysconf(_SC_GETPW_R_SIZE_MAX);
+ if (tsdPtr->pbuflen < 1) {
++#endif
+ tsdPtr->pbuflen = 1024;
++#ifdef _SC_GETPW_R_SIZE_MAX
+ }
++#endif
+ tsdPtr->pbuf = ckalloc(tsdPtr->pbuflen);
+ Tcl_CreateThreadExitHandler(FreePwBuf, NULL);
+ }
+@@ -277,10 +281,14 @@ TclpGetPwUid(
+ */
+
+ if (tsdPtr->pbuf == NULL) {
++#ifdef _SC_GETPW_R_SIZE_MAX
+ tsdPtr->pbuflen = (int) sysconf(_SC_GETPW_R_SIZE_MAX);
+ if (tsdPtr->pbuflen < 1) {
++#endif
+ tsdPtr->pbuflen = 1024;
++#ifdef _SC_GETPW_R_SIZE_MAX
+ }
++#endif
+ tsdPtr->pbuf = ckalloc(tsdPtr->pbuflen);
+ Tcl_CreateThreadExitHandler(FreePwBuf, NULL);
+ }
+@@ -380,10 +388,14 @@ TclpGetGrNam(
+ */
+
+ if (tsdPtr->gbuf == NULL) {
++#ifdef _SC_GETGR_R_SIZE_MAX
+ tsdPtr->gbuflen = (int) sysconf(_SC_GETGR_R_SIZE_MAX);
+ if (tsdPtr->gbuflen < 1) {
++#endif
+ tsdPtr->gbuflen = 1024;
++#ifdef _SC_GETGR_R_SIZE_MAX
+ }
++#endif
+ tsdPtr->gbuf = ckalloc(tsdPtr->gbuflen);
+ Tcl_CreateThreadExitHandler(FreeGrBuf, NULL);
+ }
+@@ -460,10 +472,14 @@ TclpGetGrGid(
+ */
+
+ if (tsdPtr->gbuf == NULL) {
++#ifdef _SC_GETGR_R_SIZE_MAX
+ tsdPtr->gbuflen = (int) sysconf(_SC_GETGR_R_SIZE_MAX);
+ if (tsdPtr->gbuflen < 1) {
++#endif
+ tsdPtr->gbuflen = 1024;
++#ifdef _SC_GETGR_R_SIZE_MAX
+ }
++#endif
+ tsdPtr->gbuf = ckalloc(tsdPtr->gbuflen);
+ Tcl_CreateThreadExitHandler(FreeGrBuf, NULL);
+ }
diff --git a/lang/tcl85/patches/patch-unix_tclUnixFCmd.c b/lang/tcl85/patches/patch-unix_tclUnixFCmd.c
new file mode 100644
index 00000000000..e539e01cc49
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_tclUnixFCmd.c
@@ -0,0 +1,21 @@
+$NetBSD: patch-unix_tclUnixFCmd.c,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Carried over from TCL 8.4
+
+--- unix/tclUnixFCmd.c.orig 2012-07-16 11:57:06.000000000 +0000
++++ unix/tclUnixFCmd.c
+@@ -660,6 +660,14 @@ TclpDeleteFile(
+ *---------------------------------------------------------------------------
+ */
+
++/* Reintroduced here for the benefit of scotty */
++int
++TclpCreateDirectory(path)
++ CONST char *path;
++{
++ return DoCreateDirectory(path);
++}
++
+ int
+ TclpObjCreateDirectory(
+ Tcl_Obj *pathPtr)
diff --git a/lang/tcl85/patches/patch-unix_tclUnixInit.c b/lang/tcl85/patches/patch-unix_tclUnixInit.c
new file mode 100644
index 00000000000..e7185ff428c
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_tclUnixInit.c
@@ -0,0 +1,65 @@
+$NetBSD: patch-unix_tclUnixInit.c,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Carried over from TCL 8.4
+
+--- unix/tclUnixInit.c.orig 2012-07-16 11:57:06.000000000 +0000
++++ unix/tclUnixInit.c
+@@ -22,7 +22,7 @@
+ # endif
+ #endif
+ #include <sys/resource.h>
+-#if defined(__FreeBSD__) && defined(__GNUC__)
++#if (defined(__FreeBSD__) || defined(__DragonFly__)) && defined(__GNUC__)
+ # include <floatingpoint.h>
+ #endif
+ #if defined(__bsdi__)
+@@ -31,6 +31,12 @@
+ # include <dlfcn.h>
+ # endif
+ #endif
++#if defined(__NetBSD__)
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#include <sys/utsname.h>
++#endif
++
+
+ #ifdef __CYGWIN__
+ DLLIMPORT extern __stdcall unsigned char GetVersionExA(void *);
+@@ -448,7 +454,7 @@ TclpInitPlatform(void)
+ (void) signal(SIGPIPE, SIG_IGN);
+ #endif /* SIGPIPE */
+
+-#if defined(__FreeBSD__) && defined(__GNUC__)
++#if (defined(__FreeBSD__) || defined(__DragonFly__)) && defined(__GNUC__)
+ /*
+ * Adjust the rounding mode to be more conventional. Note that FreeBSD
+ * only provides the __fpsetreg() used by the following two for the GNU
+@@ -818,6 +824,11 @@ TclpSetVariables(
+ #endif
+ int unameOK;
+ Tcl_DString ds;
++#if defined(__NetBSD__)
++ char machine_arch[SYS_NMLN];
++ int mib[2] = { CTL_HW, HW_MACHINE_ARCH };
++ size_t len = sizeof(machine_arch);
++#endif
+
+ #ifdef HAVE_COREFOUNDATION
+ char tclLibPath[MAXPATHLEN + 1];
+@@ -986,8 +997,15 @@ TclpSetVariables(
+
+ #endif /* DJGPP */
+ }
++#if defined(__NetBSD__)
++ if (sysctl(mib, sizeof(mib) / sizeof(int), machine_arch, &len, NULL, 0) < 0)
++ unameOK = 0;
++ else
++ Tcl_SetVar2(interp, "tcl_platform", "machine", machine_arch, TCL_GLOBAL_ONLY);
++#else
+ Tcl_SetVar2(interp, "tcl_platform", "machine", name.machine,
+ TCL_GLOBAL_ONLY);
++#endif /* __NetBSD__ */
+ }
+ #endif /* !NO_UNAME */
+ if (!unameOK) {
diff --git a/lang/tcl85/patches/patch-unix_tclUnixPort.h b/lang/tcl85/patches/patch-unix_tclUnixPort.h
new file mode 100644
index 00000000000..f72ff07d27e
--- /dev/null
+++ b/lang/tcl85/patches/patch-unix_tclUnixPort.h
@@ -0,0 +1,28 @@
+$NetBSD: patch-unix_tclUnixPort.h,v 1.1 2014/03/10 14:20:44 taca Exp $
+
+Always use <libmits.h> and <unistd.h>.
+
+--- unix/tclUnixPort.h.orig 2013-08-30 15:58:40.000000000 +0000
++++ unix/tclUnixPort.h
+@@ -131,19 +131,11 @@ typedef off_t Tcl_SeekOffset;
+ #if HAVE_INTTYPES_H
+ # include <inttypes.h>
+ #endif
+-#ifdef NO_LIMITS_H
+-# include "../compat/limits.h"
+-#else
+-# include <limits.h>
+-#endif
++#include <limits.h>
+ #if HAVE_STDINT_H
+ # include <stdint.h>
+ #endif
+-#ifdef HAVE_UNISTD_H
+-# include <unistd.h>
+-#else
+-# include "../compat/unistd.h"
+-#endif
++#include <unistd.h>
+
+ extern int TclUnixSetBlockingMode(int fd, int mode);
+