Skip to content

gh-124111: Only set TCLSH_NATIVE for AMD64/ARM64 - #149443

Merged
zware merged 1 commit into
python:mainfrom
zware:fix_windows_tcl9_build
May 6, 2026
Merged

gh-124111: Only set TCLSH_NATIVE for AMD64/ARM64#149443
zware merged 1 commit into
python:mainfrom
zware:fix_windows_tcl9_build

Conversation

@zware

@zwarezware commented May 6, 2026

Copy link
Copy Markdown
Member

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.

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.
@zware

zware commented May 6, 2026

Copy link
Copy Markdown
MemberAuthor

I think this should be enough to allow the tcltk Azure build to actually build 9.0.3.

@zware
zware requested a review from zoobaMay 6, 2026 04:54
@zware
zware merged commit d13fc36 into python:mainMay 6, 2026
53 checks passed
@zware
zware deleted the fix_windows_tcl9_build branch May 6, 2026 16:04
@zware

zware commented May 6, 2026

Copy link
Copy Markdown
MemberAuthor

Enough for the win32 build, but amd64 is still broken. Looking into fixes.

@zooba

zooba commented May 6, 2026

Copy link
Copy Markdown
Member

Looking into fixes.

At a glance, it's expecting a packaged ZIP that we're clearly not packaging.

If you can skip the "install" step and just copy out the files we use, that would be an improvement. Only Tix really needed complex install steps, as I recall.

@zware

zware commented May 6, 2026

Copy link
Copy Markdown
MemberAuthor

Actually, it's still the tclsh that it's not finding in order to produce the ZIP, due to TclVersion (and things derived from it) still being 8.6.15.0 from tcltk.props, and thus looking for tclsh86t.exe instead of tclsh90.exe. I think our best bet might be to extract TclVersion from TclSourceTag (and likewise TkVersion from TkSourceTag just for good measure) and pass that into msbuild in the tcltk-build.yml workflow, but I'm not sure the best way to go about that.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@zware@zooba