From: Zachary Ware Date: Wed, 6 May 2026 16:04:42 +0000 (-0500) Subject: gh-124111: Only set TCLSH_NATIVE for AMD64/ARM64 (GH-149443) X-Git-Tag: v3.15.0b1~14 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d13fc36f7319dca8d11d8e69c69adcfe919814e4;p=thirdparty%2FPython%2Fcpython.git 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. --- diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj index ab68db9210fb..2233559dfc8f 100644 --- a/PCbuild/tcl.vcxproj +++ b/PCbuild/tcl.vcxproj @@ -63,8 +63,8 @@ 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" @@ -74,4 +74,4 @@ copy /Y ..\license.terms "$(OutDir)\tcllicense.terms" - \ No newline at end of file + diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props index 55f98be1eb7e..a1da1155b881 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -17,8 +17,7 @@ $(ExternalsDir)tcltk-$(TclVersion)\$(ArchName)\ t tcl9 - $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe - $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe + TCLSH_NATIVE="$(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)$(tcltkSuffix).exe" TCL_WITH_EXTERNAL_TOMMATH; diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj index b111969ca5de..204244db0d3e 100644 --- a/PCbuild/tk.vcxproj +++ b/PCbuild/tk.vcxproj @@ -64,8 +64,8 @@ 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" @@ -80,4 +80,4 @@ copy /Y ..\license.terms "$(OutDir)\tklicense.terms" - \ No newline at end of file +