]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Revert "bpo-35402: Update macOS installer to use Tcl 8.6.9 / Tk 8.6.9.1 (GH-11101)"
authorNed Deily <nad@python.org>
Mon, 24 Dec 2018 06:49:16 +0000 (01:49 -0500)
committerNed Deily <nad@python.org>
Mon, 24 Dec 2018 07:06:19 +0000 (02:06 -0500)
This reverts commit 37607f26697351751165a042f91f04530ce333f7.

Due to regressions found with using Tk 8.6.9.1, the python.org macOS
installers for 3.6.8 and 3.7.2 are shipping with Tcl/Tk 8.6.8 as used
in previous releases.

Mac/BuildScript/build-installer.py
Mac/BuildScript/tk868_on_10_8_10_9.patch [new file with mode: 0644]
Misc/NEWS.d/3.6.8rc1.rst

index 6fc07ad3d3d1b160aa5225c165f37250a1fe0101..74d1e84f4a9bfe5639477ddf65767eb70ec36888 100755 (executable)
@@ -225,9 +225,9 @@ def library_recipes():
     if internalTk():
         result.extend([
           dict(
-              name="Tcl 8.6.9",
-              url="ftp://ftp.tcl.tk/pub/tcl//tcl8_6/tcl8.6.9-src.tar.gz",
-              checksum='aa0a121d95a0e7b73a036f26028538d4',
+              name="Tcl 8.6.8",
+              url="ftp://ftp.tcl.tk/pub/tcl//tcl8_6/tcl8.6.8-src.tar.gz",
+              checksum='81656d3367af032e0ae6157eff134f89',
               buildDir="unix",
               configure_pre=[
                     '--enable-shared',
@@ -241,9 +241,12 @@ def library_recipes():
                   },
               ),
           dict(
-              name="Tk 8.6.9.1",
-              url="ftp://ftp.tcl.tk/pub/tcl//tcl8_6/tk8.6.9.1-src.tar.gz",
-              checksum='9efe3976468352dc894dae0c4e785a8e',
+              name="Tk 8.6.8",
+              url="ftp://ftp.tcl.tk/pub/tcl//tcl8_6/tk8.6.8-src.tar.gz",
+              checksum='5e0faecba458ee1386078fb228d008ba',
+              patches=[
+                  "tk868_on_10_8_10_9.patch",
+                   ],
               buildDir="unix",
               configure_pre=[
                     '--enable-aqua',
@@ -705,7 +708,6 @@ def extractArchive(builddir, archiveName):
     work for current Tcl and Tk source releases where the basename of
     the archive ends with "-src" but the uncompressed directory does not.
     For now, just special case Tcl and Tk tar.gz downloads.
-    Another special case: the tk8.6.9.1 tarball extracts to tk8.6.9.
     """
     curdir = os.getcwd()
     try:
@@ -715,8 +717,6 @@ def extractArchive(builddir, archiveName):
             if ((retval.startswith('tcl') or retval.startswith('tk'))
                     and retval.endswith('-src')):
                 retval = retval[:-4]
-                if retval == 'tk8.6.9.1':
-                    retval = 'tk8.6.9'
             if os.path.exists(retval):
                 shutil.rmtree(retval)
             fp = os.popen("tar zxf %s 2>&1"%(shellQuote(archiveName),), 'r')
diff --git a/Mac/BuildScript/tk868_on_10_8_10_9.patch b/Mac/BuildScript/tk868_on_10_8_10_9.patch
new file mode 100644 (file)
index 0000000..8fe1060
--- /dev/null
@@ -0,0 +1,18 @@
+Fix build failure with +quartz variant on OS X 10.8 and 10.9.
+Even though Gestalt was deprecated in OS X 10.8, it should work fine
+through OS X 10.9, and its replacement NSOperatingSystemVersion was
+not introduced until OS X 10.10.
+
+Patch from MacPorts project and reported upstream:
+https://trac.macports.org/ticket/55649
+--- tk8.6.8/macosx/tkMacOSXXStubs.c.orig       2017-12-06 09:25:08.000000000 -0600
++++ tk8.6.8-patched/macosx/tkMacOSXXStubs.c    2018-01-06 19:34:17.000000000 -0600
+@@ -175,7 +175,7 @@
+     {
+       int major, minor, patch;
+-#if MAC_OS_X_VERSION_MIN_REQUIRED < 1080
++#if MAC_OS_X_VERSION_MIN_REQUIRED < 101000
+       Gestalt(gestaltSystemVersionMajor, (SInt32*)&major);
+       Gestalt(gestaltSystemVersionMinor, (SInt32*)&minor);
+       Gestalt(gestaltSystemVersionBugFix, (SInt32*)&patch);
index 48d55a0d027d136cfecdd4735d2c54236ae4fddc..fca18f1c62fa888aa5dbd7c84537e4651830237e 100644 (file)
@@ -728,7 +728,10 @@ the 10.9+ installer does.
 .. nonce: xzn8qJ
 .. section: macOS
 
-Update macOS installer to use Tcl/Tk 8.6.9.1.
+Update macOS installer to use Tcl/Tk 8.6.9.1.  [NOTE: This change was
+reverted for the released python.org 3.6.8 macOS installers due to
+regressions found in Tk 8.6.9.1.  For now, the installers provide
+Tcl/Tk 8.6.8.]
 
 ..