https://github.com/python/cpython/commit/d13fc36f7319dca8d11d8e69c69adcfe919814e4
commit: d13fc36f7319dca8d11d8e69c69adcfe919814e4
branch: main
author: Zachary Ware <[email protected]>
committer: zware <[email protected]>
date: 2026-05-06T11:04:42-05:00
summary:
gh-124111: Only set TCLSH_NATIVE for AMD64/ARM64 (GH-149443)
The Tcl 9 makefile.vc now uses TCLSH_NATIVE during the build process,
not just the installation. We had been setting it to the installed
location of the x86 tclsh.exe, which does not yet exist when the x86
build process needs it. That build doesn't actually need TCLSH_NATIVE,
though (there's a check specifically allowing TCLSH to be used if
MACHINE is IX86 and TCLSH_NATIVE is undefined), so don't set it.
files:
M PCbuild/tcl.vcxproj
M PCbuild/tcltk.props
M PCbuild/tk.vcxproj
diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj
index ab68db9210fbe4..2233559dfc8f5a 100644
--- a/PCbuild/tcl.vcxproj
+++ b/PCbuild/tcl.vcxproj
@@ -63,8 +63,8 @@
<NMakeBuildCommandLine>setlocal
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tclDir)win"
-nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs)
$(DebugFlags) $(WarningsFlags) TCLSH_NATIVE="$(tclWin32Exe)" core shell dlls
-nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs)
$(DebugFlags) $(WarningsFlags) TCLSH_NATIVE="$(tclWin32Exe)" install-binaries
install-libraries
+nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs)
$(DebugFlags) $(WarningsFlags) $(TclshNativeFlag) core shell dlls
+nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs)
$(DebugFlags) $(WarningsFlags) $(TclshNativeFlag) install-binaries
install-libraries
copy /Y ..\license.terms "$(OutDir)\tcllicense.terms"
</NMakeBuildCommandLine>
</PropertyGroup>
@@ -74,4 +74,4 @@ copy /Y ..\license.terms "$(OutDir)\tcllicense.terms"
<Target Name="Clean" />
<Target Name="ResolveAssemblyReferences" />
-</Project>
\ No newline at end of file
+</Project>
diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props
index 55f98be1eb7eeb..a1da1155b881fd 100644
--- a/PCbuild/tcltk.props
+++ b/PCbuild/tcltk.props
@@ -17,8 +17,7 @@
<tcltkDir Condition="$(tcltkDir) ==
''">$(ExternalsDir)tcltk-$(TclVersion)\$(ArchName)\</tcltkDir>
<tcltkSuffix Condition="'$(TclMajorVersion)' == '8'">t</tcltkSuffix>
<tkPrefix Condition="'$(TclMajorVersion)' == '9'">tcl9</tkPrefix>
- <tclWin32Exe Condition="$(Platform) ==
'Win32'">$(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe</tclWin32Exe>
- <tclWin32Exe Condition="$(Platform) !=
'Win32'">$(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe</tclWin32Exe>
+ <TclshNativeFlag Condition="$(Platform) !=
'Win32'">TCLSH_NATIVE="$(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe"</TclshNativeFlag>
<tclExternalTommath Condition="$(TclMajorVersion) ==
'9'">TCL_WITH_EXTERNAL_TOMMATH;</tclExternalTommath>
<!--<TclDebugExt Condition="'$(Configuration)' ==
'Debug'">g</TclDebugExt>-->
diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj
index b111969ca5de6c..204244db0d3e4b 100644
--- a/PCbuild/tk.vcxproj
+++ b/PCbuild/tk.vcxproj
@@ -64,8 +64,8 @@
<NMakeBuildCommandLine>setlocal
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tkDir)win"
-nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts)
$(TkDirs) $(DebugFlags) $(WarningsFlags) TCLSH_NATIVE="$(tclWin32Exe)" all
-nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts)
$(TkDirs) $(DebugFlags) $(WarningsFlags) TCLSH_NATIVE="$(tclWin32Exe)"
install-binaries install-libraries
+nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts)
$(TkDirs) $(DebugFlags) $(WarningsFlags) $(TclshNativeFlag) all
+nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts)
$(TkDirs) $(DebugFlags) $(WarningsFlags) $(TclshNativeFlag) install-binaries
install-libraries
copy /Y ..\license.terms "$(OutDir)\tklicense.terms"
</NMakeBuildCommandLine>
</PropertyGroup>
@@ -80,4 +80,4 @@ copy /Y ..\license.terms "$(OutDir)\tklicense.terms"
<Target Name="Clean" />
<Target Name="ResolveAssemblyReferences" />
-</Project>
\ No newline at end of file
+</Project>
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]