Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Doc/using/windows.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ As specified in :pep:`11`, a Python release only supports a Windows platform
while Microsoft considers the platform under extended support. This means that
Python |version| supports Windows 10 and newer. If you require Windows 7
support, please install Python 3.8. If you require Windows 8.1 support,
please install Python 3.12.
please install Python 3.13.

There are a number of different installers available for Windows, each with
certain benefits and downsides.
Expand Down
5 changes: 0 additions & 5 deletions PCbuild/pyproject.props
Original file line number Diff line number Diff line change
Expand Up @@ -217,11 +217,6 @@ public override bool Execute() {


<Target Name="FindVCRedistDir">
<!-- Hard coded path for VS 2015 -->
<PropertyGroup Condition="$(PlatformToolset) == 'v140'">
<VCRedistDir>$(VCInstallDir)\redist\</VCRedistDir>
</PropertyGroup>

<!-- Search for version number in some broken Build Tools installs -->
<ItemGroup Condition="$(VCRedistDir) == '' and $(VCToolsRedistVersion) == ''">
<_RedistFiles Include="$(VCInstallDir)\Redist\MSVC\*\*.*" />
Expand Down
20 changes: 11 additions & 9 deletions Tools/msi/README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,18 +61,20 @@ the initial download size by separating them into their own MSIs.
Building the Installer
======================

Before building the installer, download extra build dependencies using
Tools\msi\get_externals.bat. (Note that this is in addition to the
Before building the installer, download the extra build dependencies
using Tools\msi\get_externals.bat. (Note that this is in addition to the
similarly named file in PCbuild.)

One of the dependencies used in builds is WiX, a toolset that lets developers
create installers for Windows Installer, the Windows installation engine.
One of the dependencies used in the build process is WiX, a toolset that
allows developers to create installers for Windows Installer, the
Windows installation engine. If you're not using the copy of WiX
installed by Tools\msi\get_externals.bat, you'll need to set the
"WixInstallPath" environment variable before building.

Additionally, make sure "MSVC v14x - VS 20xx C++ ARM64 build tools" are
selected under "Desktop Development with C++" in "Visual Studio installer",
even if you are not building on ARM64. This is required because we have
upgraded to WiX-3.14, which requires these tools for Python 3.11 and later
versions.
Additionally, ensure that "MSVC v14x - VS 20xx C++ ARM64/ARM64EC build tools"
is selected under "Desktop Development with C++" in the "Visual Studio Installer",
even if you're not building on ARM64. This is required because we've upgraded
to WiX 3.14, which requires these tools for Python 3.10 and later versions.

For testing, the installer should be built with the Tools/msi/build.bat
script:
Expand Down
2 changes: 0 additions & 2 deletions Tools/msi/wix.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
<PropertyGroup>
<WixInstallPath Condition="'$(WixInstallPath)' == '' and Exists('$(MSBuildThisFileDirectory)\Wix')">$(MSBuildThisFileDirectory)\Wix\</WixInstallPath>
<WixInstallPath Condition="'$(WixInstallPath)' == '' and Exists('$(ExternalsDir)\windows-installer\wix-314')">$(ExternalsDir)\windows-installer\wix-314\</WixInstallPath>
<WixInstallPath Condition="'$(WixInstallPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Installer XML\3.10@InstallRoot)</WixInstallPath>
<WixInstallPath Condition="'$(WixInstallPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows Installer XML\3.10@InstallRoot)</WixInstallPath>
<WixTargetsPath>$(WixInstallPath)\Wix.targets</WixTargetsPath>
</PropertyGroup>
</Project>
Loading