summaryrefslogtreecommitdiff
path: root/Mac
diff options
context:
space:
mode:
authorNed Deily <nad@python.org>2018-09-25 23:38:11 -0400
committerNed Deily <nad@python.org>2018-09-26 01:06:13 -0400
commitd9cfe5ed2c2c61eeae915b76f5e10aadbbb28da6 (patch)
treedf262a9049f7a1fbf3e81cf2e805e100076bf10c /Mac
parent22a56958e72957e2ee6fb84ac5376c4ba642f4ce (diff)
downloadcpython-git-d9cfe5ed2c2c61eeae915b76f5e10aadbbb28da6.tar.gz
bpo-34370: Update Tk 8.6 used with macOS installers
Have macOS 10.9+ installer builds for 3.7.1rc and 3.6.7rc use a development snapshot of Tk 8.6 (post-8.6.8) to mitigate certain scroller issues seen with IDLE and tkinter apps.
Diffstat (limited to 'Mac')
-rwxr-xr-xMac/BuildScript/build-installer.py76
1 files changed, 55 insertions, 21 deletions
diff --git a/Mac/BuildScript/build-installer.py b/Mac/BuildScript/build-installer.py
index 1548878032..7d3bed2f64 100755
--- a/Mac/BuildScript/build-installer.py
+++ b/Mac/BuildScript/build-installer.py
@@ -242,29 +242,63 @@ def library_recipes():
"TCL_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tcl8.6'%(getVersion())),
},
),
- dict(
- 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',
- '--enable-shared',
- '--enable-threads',
- '--libdir=/Library/Frameworks/Python.framework/Versions/%s/lib'%(getVersion(),),
- ],
- useLDFlags=False,
- install='make TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s && make install TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s DESTDIR=%(DESTDIR)s'%{
- "DESTDIR": shellQuote(os.path.join(WORKDIR, 'libraries')),
- "TCL_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tcl8.6'%(getVersion())),
- "TK_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tk8.6'%(getVersion())),
- },
- ),
])
+ # temporary workaround in 3.7.1 for addressing bpo-34370:
+ # use development snapshot of Tk 8.6 branch (post 8.6.8) to pick up
+ # potential fixes for various scrolling problems seen with 8.6.8.
+ # However, the snapshot fails to build on 10.6. For the moment,
+ # continue to build the 3.7.x 10.6 variant with the standard
+ # 8.6.6 branch.
+ if getDeptargetTuple() < (10, 9):
+ result.extend([
+ dict(
+ 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',
+ '--enable-shared',
+ '--enable-threads',
+ '--libdir=/Library/Frameworks/Python.framework/Versions/%s/lib'%(getVersion(),),
+ ],
+ useLDFlags=False,
+ install='make TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s && make install TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s DESTDIR=%(DESTDIR)s'%{
+ "DESTDIR": shellQuote(os.path.join(WORKDIR, 'libraries')),
+ "TCL_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tcl8.6'%(getVersion())),
+ "TK_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tk8.6'%(getVersion())),
+ },
+ ),
+ ])
+ else:
+ result.extend([
+ dict(
+ name="Tk 8.6.8+",
+ url="http://core.tcl.tk/tk/tarball/16fdad9d/tk-16fdad9d.tar.gz",
+ checksum='b8e0df69021924e8392f03d506252bdb',
+ patches=[
+ "tk868_on_10_8_10_9.patch",
+ ],
+ buildDir="unix",
+ configure_pre=[
+ '--enable-aqua',
+ '--enable-shared',
+ '--enable-threads',
+ '--libdir=/Library/Frameworks/Python.framework/Versions/%s/lib'%(getVersion(),),
+ ],
+ useLDFlags=False,
+ install='make TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s && make install TCL_LIBRARY=%(TCL_LIBRARY)s TK_LIBRARY=%(TK_LIBRARY)s DESTDIR=%(DESTDIR)s'%{
+ "DESTDIR": shellQuote(os.path.join(WORKDIR, 'libraries')),
+ "TCL_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tcl8.6'%(getVersion())),
+ "TK_LIBRARY": shellQuote('/Library/Frameworks/Python.framework/Versions/%s/lib/tk8.6'%(getVersion())),
+ },
+ ),
+ ])
+
if PYTHON_3:
result.extend([
dict(