diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml
index 638625540e44c3e..25cc726504b376e 100644
--- a/.azure-pipelines/ci.yml
+++ b/.azure-pipelines/ci.yml
@@ -98,7 +98,7 @@ jobs:
condition: and(succeeded(), eq(dependencies.Prebuild.outputs['tests.run'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
strategy:
matrix:
diff --git a/.azure-pipelines/pr.yml b/.azure-pipelines/pr.yml
index 8b065e6caea5381..e2aae324f211bec 100644
--- a/.azure-pipelines/pr.yml
+++ b/.azure-pipelines/pr.yml
@@ -98,7 +98,7 @@ jobs:
condition: and(succeeded(), eq(dependencies.Prebuild.outputs['tests.run'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
strategy:
matrix:
diff --git a/.azure-pipelines/tcltk-build.yml b/.azure-pipelines/tcltk-build.yml
index 27968e886cc140d..f9e50d3711a4607 100644
--- a/.azure-pipelines/tcltk-build.yml
+++ b/.azure-pipelines/tcltk-build.yml
@@ -60,6 +60,12 @@ jobs:
& "$(msbuild)" PCbuild\tix.vcxproj "@msbuild.rsp" /p:Platform=x64 /p:tcltkDir="$(OutDir)\amd64"
displayName: 'Build for amd64'
+ - powershell: |
+ & "$(msbuild)" PCbuild\tcl.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
+ & "$(msbuild)" PCbuild\tk.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
+ & "$(msbuild)" PCbuild\tix.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
+ displayName: 'Build for arm64'
+
- publish: '$(OutDir)'
artifact: 'tcltk'
displayName: 'Publishing tcltk'
diff --git a/.azure-pipelines/windows-release/msi-steps.yml b/.azure-pipelines/windows-release/msi-steps.yml
index ef98d56c78363cf..3c08a0660abe9de 100644
--- a/.azure-pipelines/windows-release/msi-steps.yml
+++ b/.azure-pipelines/windows-release/msi-steps.yml
@@ -71,6 +71,13 @@ steps:
artifactName: tcltk_lib_amd64
targetPath: $(Build.BinariesDirectory)\tcltk_lib_amd64
+ - task: DownloadPipelineArtifact@1
+ displayName: 'Download artifact: tcltk_lib_arm64'
+ condition: and(succeeded(), eq(variables['PublishARM64'], 'true'))
+ inputs:
+ artifactName: tcltk_lib_arm64
+ targetPath: $(Build.BinariesDirectory)\tcltk_lib_arm64
+
- powershell: |
copy $(Build.BinariesDirectory)\amd64\Activate.ps1 Lib\venv\scripts\common\Activate.ps1 -Force
displayName: 'Copy signed files into sources'
@@ -107,7 +114,6 @@ steps:
PYTHONHOME: $(Build.SourcesDirectory)
TclTkLibraryDir: $(Build.BinariesDirectory)\tcltk_lib_win32
BuildForRelease: true
- SuppressMinGWLib: true
- script: |
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true
@@ -120,7 +126,6 @@ steps:
PYTHONHOME: $(Build.SourcesDirectory)
TclTkLibraryDir: $(Build.BinariesDirectory)\tcltk_lib_amd64
BuildForRelease: true
- SuppressMinGWLib: true
- script: |
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true
@@ -132,8 +137,8 @@ steps:
PYTHON: $(Build.BinariesDirectory)\win32\python.exe
PythonForBuild: $(Build.BinariesDirectory)\win32\python.exe
PYTHONHOME: $(Build.SourcesDirectory)
+ TclTkLibraryDir: $(Build.BinariesDirectory)\tcltk_lib_arm64
BuildForRelease: true
- SuppressMinGWLib: true
- task: CopyFiles@2
displayName: 'Assemble artifact: msi (win32)'
diff --git a/.azure-pipelines/windows-release/stage-build.yml b/.azure-pipelines/windows-release/stage-build.yml
index f70414ba211452b..a0504c25703db18 100644
--- a/.azure-pipelines/windows-release/stage-build.yml
+++ b/.azure-pipelines/windows-release/stage-build.yml
@@ -3,7 +3,7 @@ jobs:
displayName: Docs build
pool:
#name: 'Windows Release'
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
@@ -45,7 +45,7 @@ jobs:
displayName: Python build
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
@@ -91,7 +91,7 @@ jobs:
condition: and(succeeded(), ne(variables['DoPGO'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
@@ -166,6 +166,13 @@ jobs:
platform: x64
msbuildArguments: /t:CopyTclTkLib /p:OutDir="$(Build.ArtifactStagingDirectory)\tcl_amd64"
+ - task: MSBuild@1
+ displayName: 'Copy Tcl/Tk lib for publish'
+ inputs:
+ solution: PCbuild\tcltk.props
+ platform: ARM64
+ msbuildArguments: /t:CopyTclTkLib /p:OutDir="$(Build.ArtifactStagingDirectory)\tcl_arm64"
+
- task: PublishPipelineArtifact@0
displayName: 'Publish artifact: tcltk_lib_win32'
inputs:
@@ -177,3 +184,9 @@ jobs:
inputs:
targetPath: '$(Build.ArtifactStagingDirectory)\tcl_amd64'
artifactName: tcltk_lib_amd64
+
+ - task: PublishPipelineArtifact@0
+ displayName: 'Publish artifact: tcltk_lib_arm64'
+ inputs:
+ targetPath: '$(Build.ArtifactStagingDirectory)\tcl_arm64'
+ artifactName: tcltk_lib_arm64
diff --git a/.azure-pipelines/windows-release/stage-layout-embed.yml b/.azure-pipelines/windows-release/stage-layout-embed.yml
index c8b23d308d81e95..dbccdead143b214 100644
--- a/.azure-pipelines/windows-release/stage-layout-embed.yml
+++ b/.azure-pipelines/windows-release/stage-layout-embed.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoEmbed'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-layout-full.yml b/.azure-pipelines/windows-release/stage-layout-full.yml
index 0ba2fc017d987a4..4631ba96b37574c 100644
--- a/.azure-pipelines/windows-release/stage-layout-full.yml
+++ b/.azure-pipelines/windows-release/stage-layout-full.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoLayout'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
@@ -26,6 +26,7 @@ jobs:
HostArch: amd64
Python: $(Build.BinariesDirectory)\bin_amd64\python.exe
PYTHONHOME: $(Build.SourcesDirectory)
+ TclLibrary: $(Build.BinariesDirectory)\tcltk_lib\tcl8
steps:
- template: ./checkout.yml
diff --git a/.azure-pipelines/windows-release/stage-layout-msix.yml b/.azure-pipelines/windows-release/stage-layout-msix.yml
index 6efd327bdb32e52..2eeba1f764d53b5 100644
--- a/.azure-pipelines/windows-release/stage-layout-msix.yml
+++ b/.azure-pipelines/windows-release/stage-layout-msix.yml
@@ -3,7 +3,7 @@ jobs:
displayName: Make MSIX layout
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
@@ -25,6 +25,7 @@ jobs:
HostArch: amd64
Python: $(Build.BinariesDirectory)\bin_amd64\python.exe
PYTHONHOME: $(Build.SourcesDirectory)
+ TclLibrary: $(Build.BinariesDirectory)\tcltk_lib\tcl8
steps:
- template: ./checkout.yml
diff --git a/.azure-pipelines/windows-release/stage-layout-nuget.yml b/.azure-pipelines/windows-release/stage-layout-nuget.yml
index b60a324dd90e3d0..41cdff850e83be3 100644
--- a/.azure-pipelines/windows-release/stage-layout-nuget.yml
+++ b/.azure-pipelines/windows-release/stage-layout-nuget.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoNuget'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-msi.yml b/.azure-pipelines/windows-release/stage-msi.yml
index f14bc9a45ae3818..9b965b09c147481 100644
--- a/.azure-pipelines/windows-release/stage-msi.yml
+++ b/.azure-pipelines/windows-release/stage-msi.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), not(variables['SigningCertificate']))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
variables:
ReleaseUri: http://www.python.org/{arch}
diff --git a/.azure-pipelines/windows-release/stage-pack-msix.yml b/.azure-pipelines/windows-release/stage-pack-msix.yml
index 95988151a03db7e..9f7919ee64706b4 100644
--- a/.azure-pipelines/windows-release/stage-pack-msix.yml
+++ b/.azure-pipelines/windows-release/stage-pack-msix.yml
@@ -3,7 +3,7 @@ jobs:
displayName: Pack MSIX bundles
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-publish-nugetorg.yml b/.azure-pipelines/windows-release/stage-publish-nugetorg.yml
index a8855f0ace8f592..5503e2bd45477e3 100644
--- a/.azure-pipelines/windows-release/stage-publish-nugetorg.yml
+++ b/.azure-pipelines/windows-release/stage-publish-nugetorg.yml
@@ -7,7 +7,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoNuget'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-publish-pythonorg.yml b/.azure-pipelines/windows-release/stage-publish-pythonorg.yml
index be4ef9e0cca891e..965e2b41f5ce4db 100644
--- a/.azure-pipelines/windows-release/stage-publish-pythonorg.yml
+++ b/.azure-pipelines/windows-release/stage-publish-pythonorg.yml
@@ -7,7 +7,7 @@ jobs:
condition: and(succeeded(), and(eq(variables['DoMSI'], 'true'), eq(variables['DoEmbed'], 'true')))
pool:
- #vmImage: windows-2022
+ #vmImage: windows-2019
name: 'Windows Release'
workspace:
diff --git a/.azure-pipelines/windows-release/stage-publish-store.yml b/.azure-pipelines/windows-release/stage-publish-store.yml
index f3d4c80be91384d..9f8d67b0a339375 100644
--- a/.azure-pipelines/windows-release/stage-publish-store.yml
+++ b/.azure-pipelines/windows-release/stage-publish-store.yml
@@ -7,7 +7,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoMSIX'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-sign.yml b/.azure-pipelines/windows-release/stage-sign.yml
index 4481aa86edc2ccf..d43e077186c42c7 100644
--- a/.azure-pipelines/windows-release/stage-sign.yml
+++ b/.azure-pipelines/windows-release/stage-sign.yml
@@ -120,7 +120,7 @@ jobs:
condition: and(succeeded(), not(variables['SigningCertificate']))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
steps:
- checkout: none
diff --git a/.azure-pipelines/windows-release/stage-test-embed.yml b/.azure-pipelines/windows-release/stage-test-embed.yml
index 252db959930f2f8..d99bd74722bacb5 100644
--- a/.azure-pipelines/windows-release/stage-test-embed.yml
+++ b/.azure-pipelines/windows-release/stage-test-embed.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoEmbed'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-test-msi.yml b/.azure-pipelines/windows-release/stage-test-msi.yml
index a471d05bc6a4a21..af29dfa727ffda6 100644
--- a/.azure-pipelines/windows-release/stage-test-msi.yml
+++ b/.azure-pipelines/windows-release/stage-test-msi.yml
@@ -3,7 +3,7 @@ jobs:
displayName: Test MSI
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/.azure-pipelines/windows-release/stage-test-nuget.yml b/.azure-pipelines/windows-release/stage-test-nuget.yml
index c500baf29b4571a..94d815e95226ef3 100644
--- a/.azure-pipelines/windows-release/stage-test-nuget.yml
+++ b/.azure-pipelines/windows-release/stage-test-nuget.yml
@@ -4,7 +4,7 @@ jobs:
condition: and(succeeded(), eq(variables['DoNuget'], 'true'))
pool:
- vmImage: windows-2022
+ vmImage: windows-2019
workspace:
clean: all
diff --git a/Misc/NEWS.d/next/Windows/2022-02-25-01-22-31.bpo-46567.37WEue.rst b/Misc/NEWS.d/next/Windows/2022-02-25-01-22-31.bpo-46567.37WEue.rst
new file mode 100644
index 000000000000000..10a2b764b7fce07
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2022-02-25-01-22-31.bpo-46567.37WEue.rst
@@ -0,0 +1,2 @@
+Adds Tcl and Tk support for Windows ARM64. This also adds IDLE to the
+installation.
diff --git a/PCbuild/build.bat b/PCbuild/build.bat
index d333ceabd2e53a8..b2f83d11f01f0c9 100644
--- a/PCbuild/build.bat
+++ b/PCbuild/build.bat
@@ -95,9 +95,10 @@ if "%~1"=="--no-tkinter" (set IncludeTkinter=false) & shift & goto CheckOpts
if "%IncludeExternals%"=="" set IncludeExternals=true
if "%IncludeCTypes%"=="" set IncludeCTypes=true
if "%IncludeSSL%"=="" set IncludeSSL=true
-if "%IncludeTkinter%"=="" set IncludeTkinter=true
+set IncludeTkinter=true
if "%IncludeExternals%"=="true" call "%dir%get_externals.bat"
+call "%dir%prepare_tcltk.bat"
if "%do_pgo%" EQU "true" if "%platf%" EQU "x64" (
if "%PROCESSOR_ARCHITEW6432%" NEQ "AMD64" if "%PROCESSOR_ARCHITECTURE%" NEQ "AMD64" (
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 5b0fe640eb84e15..d4e052ef32c8248 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -55,8 +55,8 @@ set libraries=%libraries% bzip2-1.0.6
if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.2
if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-1.1.1m
set libraries=%libraries% sqlite-3.37.2.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.12.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.12.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.12.1
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.12.1
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tix-8.4.3.6
set libraries=%libraries% xz-5.2.2
set libraries=%libraries% zlib-1.2.11
@@ -78,7 +78,7 @@ echo.Fetching external binaries...
set binaries=
if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.2
if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-1.1.1m
-if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.12.0
+if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.12.1
if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06
for %%b in (%binaries%) do (
diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj
index f32422a0acf44a0..2ba0627b8336952 100644
--- a/PCbuild/pcbuild.proj
+++ b/PCbuild/pcbuild.proj
@@ -73,7 +73,7 @@
-
+
diff --git a/PCbuild/prepare_tcltk.bat b/PCbuild/prepare_tcltk.bat
index 77075af94f2c695..4a43ed1582ce33a 100644
--- a/PCbuild/prepare_tcltk.bat
+++ b/PCbuild/prepare_tcltk.bat
@@ -53,3 +53,7 @@ call "%PCBUILD%\get_externals.bat" --tkinter-src %ORG_SETTING%
%MSBUILD% "%PCBUILD%\tcl.vcxproj" /p:Configuration=Release /p:Platform=x64
%MSBUILD% "%PCBUILD%\tk.vcxproj" /p:Configuration=Release /p:Platform=x64
%MSBUILD% "%PCBUILD%\tix.vcxproj" /p:Configuration=Release /p:Platform=x64
+
+%MSBUILD% "%PCBUILD%\tcl.vcxproj" /p:Configuration=Release /p:Platform=ARM64
+%MSBUILD% "%PCBUILD%\tk.vcxproj" /p:Configuration=Release /p:Platform=ARM64
+%MSBUILD% "%PCBUILD%\tix.vcxproj" /p:Configuration=Release /p:Platform=ARM64
diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj
index 4536cbc925bd967..ab68db9210fbe40 100644
--- a/PCbuild/tcl.vcxproj
+++ b/PCbuild/tcl.vcxproj
@@ -33,6 +33,10 @@
Release
x64
+
+ Release
+ ARM64
+
{B5FD6F1D-129E-4BFF-9340-03606FAC7283}
@@ -59,8 +63,8 @@
setlocal
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tclDir)win"
-nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) $(WarningsFlags) core shell dlls
-nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) $(WarningsFlags) install-binaries install-libraries
+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
copy /Y ..\license.terms "$(OutDir)\tcllicense.terms"
diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props
index 72cffc3ea1da6d1..7fd43e8279e8e4e 100644
--- a/PCbuild/tcltk.props
+++ b/PCbuild/tcltk.props
@@ -5,7 +5,7 @@
8
6
12
- 0
+ 1
$(TclMajorVersion)
$(TclMinorVersion)
$(TclPatchLevel)
@@ -18,6 +18,9 @@
$(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\
$(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\
$(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\
+ $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe
+ $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe
+
tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll
tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib
diff --git a/PCbuild/tix.vcxproj b/PCbuild/tix.vcxproj
index 51682094cb8444b..48abcd27c87759a 100644
--- a/PCbuild/tix.vcxproj
+++ b/PCbuild/tix.vcxproj
@@ -33,6 +33,10 @@
Release
x64
+
+ Release
+ ARM64
+
{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}
@@ -53,7 +57,7 @@
- BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"
+ BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))" TCLSH_EXE="$(tclWin32Exe)"
DEBUG=1 NODEBUG=0 TCL_DBGX=g TK_DBGX=g
DEBUG=0 NODEBUG=1
-c -W3 -nologo -MD -wd4028 -wd4090 -wd4244 -wd4267 -wd4312
diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj
index 70b5459a081c226..b111969ca5de6c7 100644
--- a/PCbuild/tk.vcxproj
+++ b/PCbuild/tk.vcxproj
@@ -32,6 +32,10 @@
Release
x64
+
+
+ Release
+ ARM64
@@ -60,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) all
-nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) $(WarningsFlags) install-binaries install-libraries
+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
copy /Y ..\license.terms "$(OutDir)\tklicense.terms"
diff --git a/Tools/msi/bundle/Default.ARM64.xsl b/Tools/msi/bundle/Default.ARM64.xsl
index 0dd1c9e6a3d5219..f63da4e7274cbef 100644
--- a/Tools/msi/bundle/Default.ARM64.xsl
+++ b/Tools/msi/bundle/Default.ARM64.xsl
@@ -13,14 +13,11 @@
[TargetDir]
-Includes pip and documentation
+Includes IDLE, pip and documentation
Creates shortcuts but no file associations
(The 'py' launcher is currently unavailable on ARM64.)
-
- (tcl/tk and IDLE are currently unavailable on ARM64.)
-
\ No newline at end of file
diff --git a/Tools/msi/bundle/bundle.targets b/Tools/msi/bundle/bundle.targets
index 4f4306f7b61f017..89a5960a50efe11 100644
--- a/Tools/msi/bundle/bundle.targets
+++ b/Tools/msi/bundle/bundle.targets
@@ -69,7 +69,7 @@
-
+
diff --git a/Tools/msi/bundle/bundle.wxs b/Tools/msi/bundle/bundle.wxs
index 5c9fd6dca394c58..340c72acf408be6 100644
--- a/Tools/msi/bundle/bundle.wxs
+++ b/Tools/msi/bundle/bundle.wxs
@@ -77,12 +77,7 @@
-
-
-
-
-
@@ -122,8 +117,8 @@
-
+