git: 4fa290bfbb91 - main - lang/tcl86, x11-toolkits/tk86: update to 8.6.12

From: Pietro Cerutti <gahr_at_FreeBSD.org>
Date: Mon, 08 Nov 2021 07:47:47 UTC
The branch main has been updated by gahr:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4fa290bfbb9187c2daeebf93d111eb0a0bb36dae

commit 4fa290bfbb9187c2daeebf93d111eb0a0bb36dae
Author:     Pietro Cerutti <gahr@FreeBSD.org>
AuthorDate: 2021-11-08 07:43:28 +0000
Commit:     Pietro Cerutti <gahr@FreeBSD.org>
CommitDate: 2021-11-08 07:47:20 +0000

    lang/tcl86, x11-toolkits/tk86: update to 8.6.12
    
    Announcement: https://sourceforge.net/p/tcl/mailman/message/37380142/
---
 lang/tcl86/Makefile                     |   4 +-
 lang/tcl86/distinfo                     |   6 +-
 lang/tcl86/files/patch-generic_tclIO.c  |  21 ------
 lang/tcl86/files/patch-unix-Makefile.in | 119 +++++++++++++++-----------------
 lang/tcl86/files/patch-unix-configure   |  28 ++++----
 lang/tcl86/pkg-plist                    |   8 ++-
 x11-toolkits/tk86/Makefile              |  10 +--
 x11-toolkits/tk86/distinfo              |   6 +-
 x11-toolkits/tk86/files/patch-configure |  26 +++----
 x11-toolkits/tk86/files/patch-utils.tcl |  11 ---
 10 files changed, 100 insertions(+), 139 deletions(-)

diff --git a/lang/tcl86/Makefile b/lang/tcl86/Makefile
index aec0324bafc7..5ab81f5d1c28 100644
--- a/lang/tcl86/Makefile
+++ b/lang/tcl86/Makefile
@@ -2,7 +2,7 @@
 
 PORTNAME=	tcl
 DISTVERSION=	${TCL_VERSION}${TCL_RC}
-PORTREVISION=	2
+PORTREVISION=	0
 CATEGORIES=	lang
 MASTER_SITES=	SF/tcl/Tcl/${TCL_VERSION}
 PKGNAMESUFFIX=	${SHORT_TCL_VER}
@@ -48,7 +48,7 @@ ALL_TARGET=	all
 INSTALL_TARGET=	install-strip install-libraries install-private-headers
 TEST_TARGET=	test-tcl
 
-TCL_VERSION=	8.6.11
+TCL_VERSION=	8.6.12
 TCL_VER=	${TCL_VERSION:R}
 TCL_RC=
 SHORT_TCL_VER=	${TCL_VER:S/.//}
diff --git a/lang/tcl86/distinfo b/lang/tcl86/distinfo
index 03082cab9cd8..623e6426fb8d 100644
--- a/lang/tcl86/distinfo
+++ b/lang/tcl86/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1610351286
-SHA256 (tcl8.6.11-src.tar.gz) = 8c0486668586672c5693d7d95817cb05a18c5ecca2f40e2836b9578064088258
-SIZE (tcl8.6.11-src.tar.gz) = 10259009
+TIMESTAMP = 1636356651
+SHA256 (tcl8.6.12-src.tar.gz) = 26c995dd0f167e48b11961d891ee555f680c175f7173ff8cb829f4ebcde4c1a6
+SIZE (tcl8.6.12-src.tar.gz) = 10353486
diff --git a/lang/tcl86/files/patch-generic_tclIO.c b/lang/tcl86/files/patch-generic_tclIO.c
deleted file mode 100644
index a64bf3945b26..000000000000
--- a/lang/tcl86/files/patch-generic_tclIO.c
+++ /dev/null
@@ -1,21 +0,0 @@
-https://core.tcl-lang.org/tcl/info/24b9181478
-
---- generic/tclIO.c.orig	2020-12-11 17:46:22 UTC
-+++ generic/tclIO.c
-@@ -4277,6 +4277,7 @@ Write(
- 				/* State info for channel */
-     char *nextNewLine = NULL;
-     int endEncoding, saved = 0, total = 0, flushed = 0, needNlFlush = 0;
-+    char safe[BUFFER_PADDING];
- 
-     if (srcLen) {
-         WillWrite(chanPtr);
-@@ -4295,7 +4296,7 @@ Write(
- 
-     while (srcLen + saved + endEncoding > 0) {
- 	ChannelBuffer *bufPtr;
--	char *dst, safe[BUFFER_PADDING];
-+	char *dst;
- 	int result, srcRead, dstLen, dstWrote, srcLimit = srcLen;
- 
- 	if (nextNewLine) {
diff --git a/lang/tcl86/files/patch-unix-Makefile.in b/lang/tcl86/files/patch-unix-Makefile.in
index 8964f2e314c8..c753356406aa 100644
--- a/lang/tcl86/files/patch-unix-Makefile.in
+++ b/lang/tcl86/files/patch-unix-Makefile.in
@@ -1,11 +1,11 @@
---- unix/Makefile.in.orig	2020-12-21 20:59:29 UTC
+--- unix/Makefile.in.orig	2021-10-29 17:08:08 UTC
 +++ unix/Makefile.in
 @@ -58,6 +58,8 @@ MODULE_INSTALL_DIR	= $(SCRIPT_INSTALL_DIR)/../tcl8
  
  # Directory in which to install the include file tcl.h:
  INCLUDE_INSTALL_DIR	= $(INSTALL_ROOT)$(includedir)
-+GENERIC_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/generic
-+UNIX_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/unix
++GENERIC_INCLUDE_INSTALL_DIR	= $(INCLUDE_INSTALL_DIR)/generic
++UNIX_INCLUDE_INSTALL_DIR	= $(INCLUDE_INSTALL_DIR)/unix
  
  # Path to the private tcl header dir:
  PRIVATE_INCLUDE_DIR	= @PRIVATE_INCLUDE_DIR@
@@ -17,12 +17,12 @@
 +CONFIG_INSTALL_DIR	= $(SCRIPT_INSTALL_DIR)
  
  # Directory in which to install bundled packages:
--PACKAGE_DIR             = @PACKAGE_DIR@
-+PACKAGE_DIR             = $(SCRIPT_INSTALL_DIR)
+-PACKAGE_DIR		= @PACKAGE_DIR@
++PACKAGE_DIR		= $(SCRIPT_INSTALL_DIR)
  
  # Package search path.
  TCL_PACKAGE_PATH	= @TCL_PACKAGE_PATH@
-@@ -708,9 +710,9 @@ SRCS = $(GENERIC_SRCS) $(TOMMATH_SRCS) $(UNIX_SRCS) $(
+@@ -709,9 +711,9 @@ SRCS = $(GENERIC_SRCS) $(TOMMATH_SRCS) $(UNIX_SRCS) $(
  # Start of rules
  #--------------------------------------------------------------------------
  
@@ -34,7 +34,7 @@
  
  libraries:
  
-@@ -721,7 +723,13 @@ doc:
+@@ -722,7 +724,13 @@ doc:
  ${LIB_FILE}: ${STUB_LIB_FILE} ${OBJS}
  	rm -f $@
  	@MAKE_LIB@
@@ -48,7 +48,7 @@
  ${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
  	@if test "x${LIB_FILE}" = "xlibtcl${MAJOR_VERSION}.${MINOR_VERSION}.dll"; then \
  	    (cd ${TOP_DIR}/win; ${MAKE} winextensions); \
-@@ -864,13 +872,13 @@ trace-test: ${TCLTEST_EXE}
+@@ -868,13 +876,13 @@ trace-test: ${TCLTEST_EXE}
  # Installation rules
  #--------------------------------------------------------------------------
  
@@ -65,7 +65,7 @@
  
  install: $(INSTALL_TARGETS)
  
-@@ -892,6 +900,11 @@ install-binaries: binaries
+@@ -894,6 +902,11 @@ install-binaries: binaries
  	@echo "Installing $(LIB_FILE) to $(DLL_INSTALL_DIR)/"
  	@@INSTALL_LIB@
  	@chmod 555 "$(DLL_INSTALL_DIR)/$(LIB_FILE)"
@@ -77,7 +77,7 @@
  	@echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
  	@$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
  	@echo "Installing tclConfig.sh to $(CONFIG_INSTALL_DIR)/"
-@@ -904,35 +917,19 @@ install-binaries: binaries
+@@ -906,35 +919,19 @@ install-binaries: binaries
  	    @INSTALL_STUB_LIB@ ; \
  	fi
  	@EXTRA_INSTALL_BINARIES@
@@ -106,7 +106,7 @@
  		else true; \
  		fi; \
  	    done;
--	@for i in 8.4  8.4/platform 8.5 8.6; \
+-	@for i in 8.4 8.4/platform 8.5 8.6; \
 -	    do \
 -	    if [ ! -d "$(MODULE_INSTALL_DIR)/$$i" ] ; then \
 -		echo "Making directory $(MODULE_INSTALL_DIR)/$$i"; \
@@ -117,38 +117,38 @@
  	@echo "Installing library files to $(SCRIPT_INSTALL_DIR)/";
  	@for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex \
  		$(UNIX_DIR)/tclAppInit.c @LDAIX_SRC@ @DTRACE_SRC@; \
-@@ -945,31 +942,29 @@ install-libraries: libraries
+@@ -947,32 +944,32 @@ install-libraries: libraries
  	    $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)/http1.0"; \
- 	    done;
+ 	    done
  	@echo "Installing package http 2.9.5 as a Tcl Module";
--	@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(MODULE_INSTALL_DIR)/8.6/http-2.9.5.tm";
-+	@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)/http-2.9.5.tm";
+-	@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(MODULE_INSTALL_DIR)/8.6/http-2.9.5.tm"
++	@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)/http-2.9.5.tm"
  	@echo "Installing package opt0.4 files to $(SCRIPT_INSTALL_DIR)/opt0.4/";
- 	@for i in $(TOP_DIR)/library/opt/*.tcl ; \
- 	    do \
+ 	@for i in $(TOP_DIR)/library/opt/*.tcl; do \
  	    $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)/opt0.4"; \
- 	    done;
- 	@echo "Installing package msgcat 1.6.1 as a Tcl Module";
--	@$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(MODULE_INSTALL_DIR)/8.5/msgcat-1.6.1.tm";
-+	@$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)/msgcat-1.6.1.tm";
- 	@echo "Installing package tcltest 2.5.3 as a Tcl Module";
--	@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(MODULE_INSTALL_DIR)/8.5/tcltest-2.5.3.tm";
--
-+	@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)/tcltest-2.5.3.tm";
- 	@echo "Installing package platform 1.0.15 as a Tcl Module";
--	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(MODULE_INSTALL_DIR)/8.4/platform-1.0.15.tm";
-+	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)/platform-1.0.15.tm";
- 	@echo "Installing package platform::shell 1.1.4 as a Tcl Module";
--	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(MODULE_INSTALL_DIR)/8.4/platform/shell-1.1.4.tm";
--
--	@echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding/";
-+	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)/platform/shell-1.1.4.tm";
-+	@echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding";
- 	@for i in $(TOP_DIR)/library/encoding/*.enc ; do \
--		$(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)/encoding"; \
-+	    	$(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/encoding; \
- 	done;
--	@if [ -n "$(TCL_MODULE_PATH)" -a -f $(TOP_DIR)/library/tm.tcl ]; then \
+ 	done
+ 	@echo "Installing package msgcat 1.6.1 as a Tcl Module"
+ 	@$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl \
+-		"$(MODULE_INSTALL_DIR)/8.5/msgcat-1.6.1.tm"
++		"$(SCRIPT_INSTALL_DIR)/msgcat-1.6.1.tm"
+ 	@echo "Installing package tcltest 2.5.3 as a Tcl Module"
+ 	@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl \
+-		"$(MODULE_INSTALL_DIR)/8.5/tcltest-2.5.3.tm"
++		"$(SCRIPT_INSTALL_DIR)/tcltest-2.5.3.tm"
+ 	@echo "Installing package platform 1.0.18 as a Tcl Module"
+ 	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl \
+-		"$(MODULE_INSTALL_DIR)/8.4/platform-1.0.18.tm"
++		"$(SCRIPT_INSTALL_DIR)/platform-1.0.18.tm"
+ 	@echo "Installing package platform::shell 1.1.4 as a Tcl Module"
+ 	@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl \
+-		"$(MODULE_INSTALL_DIR)/8.4/platform/shell-1.1.4.tm"
+-	@echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding/"
++		"$(SCRIPT_INSTALL_DIR)/platform/shell-1.1.4.tm"
++	@echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding"
+ 	@for i in $(TOP_DIR)/library/encoding/*.enc; do \
+ 		$(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)/encoding"; \
+ 	done
+-	@if [ -n "$(TCL_MODULE_PATH)" -a -f $(TOP_DIR)/library/tm.tcl ] ; then \
 -	    echo "Customizing tcl module path"; \
 -	    echo "if {![interp issafe]} { ::tcl::tm::roots {$(TCL_MODULE_PATH)} }" >> \
 -	        "$(SCRIPT_INSTALL_DIR)/tm.tcl"; \
@@ -160,49 +160,44 @@
 +	    "$(SCRIPT_INSTALL_DIR)"/tm.tcl;
  
  install-tzdata:
- 	@for i in tzdata; \
-@@ -1044,7 +1039,7 @@ install-doc: doc
+ 	@for i in tzdata; do \
+@@ -1039,7 +1036,7 @@ install-doc: doc
  	done
  
  install-headers:
--	@for i in "$(INCLUDE_INSTALL_DIR)"; \
-+	@for i in "$(INCLUDE_INSTALL_DIR)" "$(GENERIC_INCLUDE_INSTALL_DIR)"; \
- 	    do \
+-	@for i in "$(INCLUDE_INSTALL_DIR)"; do \
++	@for i in "$(INCLUDE_INSTALL_DIR)" "$(GENERIC_INCLUDE_INSTALL_DIR)"; do \
  	    if [ ! -d "$$i" ] ; then \
  		echo "Making directory $$i"; \
-@@ -1061,10 +1056,13 @@ install-headers:
+ 		$(INSTALL_DATA_DIR) "$$i"; \
+@@ -1054,23 +1051,22 @@ install-headers:
  	    do \
  	    $(INSTALL_DATA) $$i "$(INCLUDE_INSTALL_DIR)"; \
- 	    done;
+ 	done
 +	@for i in $(GENERIC_DIR)/*.h; do \
 +	    $(INSTALL_DATA) $$i "$(GENERIC_INCLUDE_INSTALL_DIR)"/; \
 +	    done;
  
  # Optional target to install private headers
  install-private-headers:
--	@for i in "$(PRIVATE_INCLUDE_INSTALL_DIR)"; \
-+	@for i in "$(GENERIC_INCLUDE_INSTALL_DIR)" "$(UNIX_INCLUDE_INSTALL_DIR)"; \
- 	    do \
+-	@for i in "$(PRIVATE_INCLUDE_INSTALL_DIR)"; do \
++	@for i in "$(GENERIC_INCLUDE_INSTALL_DIR)" "$(UNIX_INCLUDE_INSTALL_DIR)"; do \
  	    if [ ! -d "$$i" ] ; then \
  		echo "Making directory $$i"; \
-@@ -1072,13 +1070,16 @@ install-private-headers:
- 		else true; \
- 		fi; \
- 	    done;
+ 		$(INSTALL_DATA_DIR) "$$i"; \
+ 	    fi; \
+ 	done
 -	@echo "Installing private header files to $(PRIVATE_INCLUDE_INSTALL_DIR)/";
-+	@echo "Installing private header files to $(INCLUDE_INSTALL_DIR)/";
- 	@for i in $(GENERIC_DIR)/tclInt.h $(GENERIC_DIR)/tclIntDecls.h \
- 		$(GENERIC_DIR)/tclIntPlatDecls.h $(GENERIC_DIR)/tclPort.h \
+-	@for i in $(GENERIC_DIR)/tclInt.h $(GENERIC_DIR)/tclIntDecls.h \
+-		$(GENERIC_DIR)/tclIntPlatDecls.h $(GENERIC_DIR)/tclPort.h \
 -		$(GENERIC_DIR)/tclOOInt.h $(GENERIC_DIR)/tclOOIntDecls.h \
 -		$(UNIX_DIR)/tclUnixPort.h; \
-+		$(GENERIC_DIR)/tclOOInt.h $(GENERIC_DIR)/tclOOIntDecls.h; \
++	@for i in $(UNIX_DIR)/tclUnixPort.h $(UNIX_DIR)/tclUnixThrd.h @DTRACE_HDR@; \
  	    do \
 -	    $(INSTALL_DATA) $$i "$(PRIVATE_INCLUDE_INSTALL_DIR)"; \
-+	    $(INSTALL_DATA) $$i "$(GENERIC_INCLUDE_INSTALL_DIR)"; \
-+	    done;
-+	@for i in $(UNIX_DIR)/tclUnixPort.h $(UNIX_DIR)/tclUnixThrd.h @DTRACE_HDR@; \
-+	    do \
+-	done
 +	    $(INSTALL_DATA) $$i "$(UNIX_INCLUDE_INSTALL_DIR)"; \
- 	    done;
++	    done;
  	@if test -f tclConfig.h; then\
  	    $(INSTALL_DATA) tclConfig.h "$(PRIVATE_INCLUDE_INSTALL_DIR)"; \
+ 	fi
diff --git a/lang/tcl86/files/patch-unix-configure b/lang/tcl86/files/patch-unix-configure
index 502214cc6134..d6c3b2f17009 100644
--- a/lang/tcl86/files/patch-unix-configure
+++ b/lang/tcl86/files/patch-unix-configure
@@ -1,19 +1,15 @@
---- unix/configure.orig	2020-12-11 19:22:34 UTC
-+++ unix/configure
-@@ -7528,15 +7528,11 @@ fi
- 		LDFLAGS="$LDFLAGS $PTHREAD_LIBS"
+--- unix/configure.orig	2021-11-04 15:04:06.000000000 +0000
++++ unix/configure	2021-11-05 08:32:29.535316000 +0000
+@@ -7327,8 +7327,12 @@
+ 
+ 		    # The -pthread needs to go in the LDFLAGS, not LIBS
+ 		    LIBS=`echo $LIBS | sed s/-pthread//`
++		    SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -Wl,-soname,\$@"
+ 		    CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ 		    LDFLAGS="$LDFLAGS $PTHREAD_LIBS"
++		    UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
++		    SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1'
++		    TCL_LIB_VERSIONS_OK=nodots
  fi
  
--	    case $system in
--	    FreeBSD-3.*)
- 		# Version numbers are dot-stripped by system policy.
- 		TCL_TRIM_DOTS=`echo ${VERSION} | tr -d .`
- 		UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
--		SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so'
-+		SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1'
- 		TCL_LIB_VERSIONS_OK=nodots
--		;;
--	    esac
  	    ;;
- 	Darwin-*)
- 	    CFLAGS_OPTIMIZE="-Os"
diff --git a/lang/tcl86/pkg-plist b/lang/tcl86/pkg-plist
index 3d7712250985..d70f2c933843 100644
--- a/lang/tcl86/pkg-plist
+++ b/lang/tcl86/pkg-plist
@@ -45,13 +45,14 @@ lib/tcl%%TCL_VER%%/http1.0/pkgIndex.tcl
 lib/tcl%%TCL_VER%%/msgcat-1.6.1.tm
 lib/tcl%%TCL_VER%%/opt0.4/optparse.tcl
 lib/tcl%%TCL_VER%%/opt0.4/pkgIndex.tcl
-lib/tcl%%TCL_VER%%/platform-1.0.15.tm
+lib/tcl%%TCL_VER%%/platform-1.0.18.tm
 lib/tcl%%TCL_VER%%/platform/shell-1.1.4.tm
 lib/tcl%%TCL_VER%%/tcltest-2.5.3.tm
 lib/tcl%%TCL_VER%%/auto.tcl
 lib/tcl%%TCL_VER%%/clock.tcl
 lib/tcl%%TCL_VER%%/encoding/ascii.enc
 lib/tcl%%TCL_VER%%/encoding/big5.enc
+lib/tcl%%TCL_VER%%/encoding/cns11643.enc
 lib/tcl%%TCL_VER%%/encoding/cp1250.enc
 lib/tcl%%TCL_VER%%/encoding/cp1251.enc
 lib/tcl%%TCL_VER%%/encoding/cp1252.enc
@@ -95,6 +96,7 @@ lib/tcl%%TCL_VER%%/encoding/iso2022-kr.enc
 lib/tcl%%TCL_VER%%/encoding/iso2022.enc
 lib/tcl%%TCL_VER%%/encoding/iso8859-1.enc
 lib/tcl%%TCL_VER%%/encoding/iso8859-10.enc
+lib/tcl%%TCL_VER%%/encoding/iso8859-11.enc
 lib/tcl%%TCL_VER%%/encoding/iso8859-13.enc
 lib/tcl%%TCL_VER%%/encoding/iso8859-14.enc
 lib/tcl%%TCL_VER%%/encoding/iso8859-15.enc
@@ -574,6 +576,7 @@ lib/tcl%%TCL_VER%%/word.tcl
 %%TCLMAN%%man/man3/Tcl_GetLongFromObj.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_GetMaster.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_GetMathFuncInfo.tcl86.3.gz
+%%TCLMAN%%man/man3/Tcl_GetMemoryInfo.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_GetModeFromStat.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_GetModificationTimeFromStat.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_GetNameOfExecutable.tcl86.3.gz
@@ -668,6 +671,8 @@ lib/tcl%%TCL_VER%%/word.tcl
 %%TCLMAN%%man/man3/Tcl_LoadFile.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_LogCommandInfo.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_Main.tcl86.3.gz
+%%TCLMAN%%man/man3/Tcl_MainEx.tcl86.3.gz
+%%TCLMAN%%man/man3/Tcl_MainExW.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_MakeFileChannel.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_MakeSafe.tcl86.3.gz
 %%TCLMAN%%man/man3/Tcl_MakeTcpClientChannel.tcl86.3.gz
@@ -1630,6 +1635,7 @@ lib/tcl%%TCL_VER%%/word.tcl
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Guam
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Honolulu
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Johnston
+%%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Kanton
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Kiritimati
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Kosrae
 %%TZDATA%%lib/tcl%%TCL_VER%%/tzdata/Pacific/Kwajalein
diff --git a/x11-toolkits/tk86/Makefile b/x11-toolkits/tk86/Makefile
index c5fd6ab33b54..f1e4874f67a0 100644
--- a/x11-toolkits/tk86/Makefile
+++ b/x11-toolkits/tk86/Makefile
@@ -2,11 +2,11 @@
 
 PORTNAME=	tk
 DISTVERSION=	${TK_VERSION}${TK_RC}
-PORTREVISION=	2
+PORTREVISION=	0
 CATEGORIES=	x11-toolkits
 MASTER_SITES=	SF/tcl/Tcl/${TK_VERSION}
 PKGNAMESUFFIX=	${SHORT_TK_VER}
-DISTNAME=	${PORTNAME}${PORTVERSION}-src
+DISTNAME=	${PORTNAME}${DISTVERSION}-src
 
 MAINTAINER=	tcltk@FreeBSD.org
 COMMENT=	Graphical toolkit for Tcl
@@ -25,7 +25,7 @@ OPTIONS_SUB=	yes
 TKMAN_DESC=	Install Tk function manpages
 DEMOS_DESC=	Install demos
 
-WRKSRC=		${WRKDIR}/${PORTNAME}${PORTVERSION}/unix
+WRKSRC=		${WRKDIR}/${PORTNAME}${TK_VERSION}/unix
 
 ALL_TARGET=	all
 INSTALL_TARGET=	install-strip
@@ -44,9 +44,9 @@ CONFIGURE_ENV=	PORTSDIR=${PORTSDIR}
 CFLAGS+=	-I${TCL_INCLUDEDIR} \
 		-I${LOCALBASE}/include
 
-TK_VERSION=	8.6.11
+TK_VERSION=	8.6.12
 TK_VER=		${TK_VERSION:R}
-TK_RC=		# Nothing
+TK_RC=
 SHORT_TK_VER=	${TK_VER:S/.//}
 MAN_SUFFIX=	${PKGBASE}
 
diff --git a/x11-toolkits/tk86/distinfo b/x11-toolkits/tk86/distinfo
index 1b2b5103846a..bd9107ce1cca 100644
--- a/x11-toolkits/tk86/distinfo
+++ b/x11-toolkits/tk86/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1610356453
-SHA256 (tk8.6.11-src.tar.gz) = 5228a8187a7f70fa0791ef0f975270f068ba9557f57456f51eb02d9d4ea31282
-SIZE (tk8.6.11-src.tar.gz) = 4496914
+TIMESTAMP = 1636356842
+SHA256 (tk8.6.12-src.tar.gz) = 12395c1f3fcb6bed2938689f797ea3cdf41ed5cb6c4766eec8ac949560310630
+SIZE (tk8.6.12-src.tar.gz) = 4515393
diff --git a/x11-toolkits/tk86/files/patch-configure b/x11-toolkits/tk86/files/patch-configure
index 38f6cf6a130d..69c42924d889 100644
--- a/x11-toolkits/tk86/files/patch-configure
+++ b/x11-toolkits/tk86/files/patch-configure
@@ -1,19 +1,15 @@
---- configure.orig	2020-12-31 01:55:50 UTC
+--- configure.orig	2021-11-04 15:06:24 UTC
 +++ configure
-@@ -5425,15 +5425,11 @@ fi
- 		LDFLAGS="$LDFLAGS $PTHREAD_LIBS"
+@@ -5223,8 +5223,12 @@ fi
+ 
+ 		    # The -pthread needs to go in the LDFLAGS, not LIBS
+ 		    LIBS=`echo $LIBS | sed s/-pthread//`
++		    SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -Wl,-soname,\$@"
+ 		    CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ 		    LDFLAGS="$LDFLAGS $PTHREAD_LIBS"
++		    UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
++		    SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1'
++		    TCL_LIB_VERSIONS_OK=nodots
  fi
  
--	    case $system in
--	    FreeBSD-3.*)
- 		# Version numbers are dot-stripped by system policy.
- 		TCL_TRIM_DOTS=`echo ${VERSION} | tr -d .`
- 		UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
--		SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so'
-+		SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1'
- 		TCL_LIB_VERSIONS_OK=nodots
--		;;
--	    esac
  	    ;;
- 	Darwin-*)
- 	    CFLAGS_OPTIMIZE="-Os"
diff --git a/x11-toolkits/tk86/files/patch-utils.tcl b/x11-toolkits/tk86/files/patch-utils.tcl
deleted file mode 100644
index 6067f3cac922..000000000000
--- a/x11-toolkits/tk86/files/patch-utils.tcl
+++ /dev/null
@@ -1,11 +0,0 @@
---- ../library/ttk/utils.tcl.orig	2021-01-15 08:02:56.539276000 +0000
-+++ ../library/ttk/utils.tcl	2021-01-15 08:03:38.228900000 +0000
-@@ -305,7 +305,7 @@
- 	bind $bindtag <MouseWheel> "$callback \[expr {-%D}\]"
- 	bind $bindtag <Option-MouseWheel> "$callback \[expr {-10*%D}\]"
-     } else {
--	bind $bindtag <MouseWheel> "$callback \[expr {-%D/120)}\]"
-+	bind $bindtag <MouseWheel> "$callback \[expr {-%D/120}\]"
-     }
- }
-