]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Make PL/Tcl require Tcl 8.6 or later
authorPeter Eisentraut <peter@eisentraut.org>
Thu, 16 Jul 2026 09:47:41 +0000 (11:47 +0200)
committerPeter Eisentraut <peter@eisentraut.org>
Thu, 16 Jul 2026 10:03:05 +0000 (12:03 +0200)
Support for Tcl 8.5 and 8.4 is removed.  Since we no longer support
RHEL 7, we don't need to support these old versions anymore.  This
allows some small amount of code cleanup.

Reviewed-by: Jelte Fennema-Nio <postgres@jeltef.nl>
Discussion: https://www.postgresql.org/message-id/flat/CA+hUKGL7trhWiJ4qxpksBztMMTWDyPnP1QN+Lq341V7QL775DA@mail.gmail.com

config/tcl.m4
configure
doc/src/sgml/installation.sgml
src/pl/tcl/pltcl.c

index 9de31a5715648fa43180d332aac477a924997525..d226ef99d05b9ddd4a860bcf709017f8cc642976 100644 (file)
@@ -4,7 +4,7 @@
 
 
 AC_DEFUN([PGAC_PATH_TCLSH],
-[PGAC_PATH_PROGS(TCLSH, [tclsh tcl tclsh8.6 tclsh86 tclsh8.5 tclsh85 tclsh8.4 tclsh84])
+[PGAC_PATH_PROGS(TCLSH, [tclsh tcl tclsh8.6 tclsh86])
 AC_ARG_VAR(TCLSH, [Tcl interpreter program (tclsh)])dnl
 if test x"$TCLSH" = x""; then
   AC_MSG_ERROR([Tcl shell not found])
index 5fc85a245194a2740c20d3fb3d507ea93cf78fdf..83609ac988c0551dbe96862074e2eeaafdf1842e 100755 (executable)
--- a/configure
+++ b/configure
@@ -19003,7 +19003,7 @@ fi
 # Check for Tcl configuration script tclConfig.sh
 if test "$with_tcl" = yes; then
     if test -z "$TCLSH"; then
-  for ac_prog in tclsh tcl tclsh8.6 tclsh86 tclsh8.5 tclsh85 tclsh8.4 tclsh84
+  for ac_prog in tclsh tcl tclsh8.6 tclsh86
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
index 37a0473d03e03533c83142098616ecbf6d2bf304..8b98938d2a144b1d2b62c0f244810d9f26c19a96 100644 (file)
       To build the <application>PL/Tcl</application>
       procedural language, you of course need a <productname>Tcl</productname>
       installation.  The minimum required version is
-      <productname>Tcl</productname> 8.4.
+      <productname>Tcl</productname> 8.6.
      </para>
     </listitem>
 
@@ -1936,8 +1936,7 @@ build-postgresql:
          Tcl interpreter program.  This will be used to
          determine the dependencies for building PL/Tcl.
          If this is not set, the following are probed in this
-         order: <literal>tclsh tcl tclsh8.6 tclsh86 tclsh8.5 tclsh85
-         tclsh8.4 tclsh84</literal>.
+         order: <literal>tclsh tcl tclsh8.6 tclsh86</literal>.
         </para>
        </listitem>
       </varlistentry>
index 85e83bbf1e34d087513db15020e60e15d82f040f..c8a9363aaa1affdcaf20a0a029227886964cbe16 100644 (file)
@@ -50,14 +50,9 @@ PG_MODULE_MAGIC_EXT(
        ((TCL_MAJOR_VERSION > maj) || \
         (TCL_MAJOR_VERSION == maj && TCL_MINOR_VERSION >= min))
 
-/* Insist on Tcl >= 8.4 */
-#if !HAVE_TCL_VERSION(8,4)
-#error PostgreSQL only supports Tcl 8.4 or later.
-#endif
-
-/* Hack to deal with Tcl 8.6 const-ification without losing compatibility */
-#ifndef CONST86
-#define CONST86
+/* Insist on Tcl >= 8.6 */
+#if !HAVE_TCL_VERSION(8,6)
+#error PostgreSQL only supports Tcl 8.6 or later.
 #endif
 
 #if !HAVE_TCL_VERSION(8,7)
@@ -366,7 +361,7 @@ pltcl_FinalizeNotifier(ClientData clientData)
 }
 
 static void
-pltcl_SetTimer(CONST86 Tcl_Time *timePtr)
+pltcl_SetTimer(const Tcl_Time *timePtr)
 {
 }
 
@@ -392,7 +387,7 @@ pltcl_ServiceModeHook(int mode)
 }
 
 static int
-pltcl_WaitForEvent(CONST86 Tcl_Time *timePtr)
+pltcl_WaitForEvent(const Tcl_Time *timePtr)
 {
        return 0;
 }