Issue #27610: Adds PEP 514 metadata to Windows installer

This commit is contained in:
Steve Dower 2016-07-24 18:04:29 -07:00
parent 95f7b9fcac
commit 05338267ab
10 changed files with 24 additions and 1 deletions

View File

@ -61,6 +61,8 @@ Tests
Windows Windows
------- -------
- Issue #27610: Adds PEP 514 metadata to Windows installer
- Issue #27469: Adds a shell extension to the launcher so that drag and drop - Issue #27469: Adds a shell extension to the launcher so that drag and drop
works correctly. works correctly.

View File

@ -1,5 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<Property Id="ROOTREGISTRYKEY" Value="Software\Python\PythonCore" />
</Fragment>
<Fragment> <Fragment>
<Property Id="REGISTRYKEY" Value="Software\Python\PythonCore\$(var.ShortVersion)$(var.PyArchExt)$(var.PyTestExt)" /> <Property Id="REGISTRYKEY" Value="Software\Python\PythonCore\$(var.ShortVersion)$(var.PyArchExt)$(var.PyTestExt)" />
</Fragment> </Fragment>

View File

@ -14,4 +14,5 @@
<String Id="NoDowngrade">A newer version of !(loc.ProductName) is already installed.</String> <String Id="NoDowngrade">A newer version of !(loc.ProductName) is already installed.</String>
<String Id="IncorrectCore">An incorrect version of a prerequisite package is installed. Please uninstall any other versions of !(loc.ProductName) and try installing this again.</String> <String Id="IncorrectCore">An incorrect version of a prerequisite package is installed. Please uninstall any other versions of !(loc.ProductName) and try installing this again.</String>
<String Id="NoTargetDir">The TARGETDIR variable must be provided when invoking this installer.</String> <String Id="NoTargetDir">The TARGETDIR variable must be provided when invoking this installer.</String>
<String Id="ManufacturerSupportUrl">http://www.python.org/</String>
</WixLocalization> </WixLocalization>

View File

@ -14,6 +14,7 @@
<ItemGroup> <ItemGroup>
<Compile Include="exe.wxs" /> <Compile Include="exe.wxs" />
<Compile Include="exe_files.wxs" /> <Compile Include="exe_files.wxs" />
<Compile Include="exe_reg.wxs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="*.wxl" /> <EmbeddedResource Include="*.wxl" />

View File

@ -9,6 +9,7 @@
<Feature Id="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)"> <Feature Id="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
<ComponentGroupRef Id="exe_python" Primary="yes" /> <ComponentGroupRef Id="exe_python" Primary="yes" />
<ComponentGroupRef Id="exe_reg" Primary="yes" />
<ComponentGroupRef Id="exe_txt" /> <ComponentGroupRef Id="exe_txt" />
<ComponentGroupRef Id="exe_icons" /> <ComponentGroupRef Id="exe_icons" />
<ComponentRef Id="OptionalFeature" /> <ComponentRef Id="OptionalFeature" />
@ -24,7 +25,6 @@
WorkingDirectory="InstallDirectory" /> WorkingDirectory="InstallDirectory" />
<RemoveFolder Id="Remove_MenuDir" Directory="MenuDir" On="uninstall" /> <RemoveFolder Id="Remove_MenuDir" Directory="MenuDir" On="uninstall" />
<RegistryKey Root="HKMU" Key="[REGISTRYKEY]"> <RegistryKey Root="HKMU" Key="[REGISTRYKEY]">
<RegistryValue Key="InstallPath\InstallGroup" Type="string" Value="!(loc.ProductName)" KeyPath="yes" />
<RegistryValue Key="InstalledFeatures" Name="Shortcuts" Type="string" Value="$(var.Version)" /> <RegistryValue Key="InstalledFeatures" Name="Shortcuts" Type="string" Value="$(var.Version)" />
</RegistryKey> </RegistryKey>
</Component> </Component>

View File

@ -10,6 +10,7 @@
<ItemGroup> <ItemGroup>
<Compile Include="exe_d.wxs" /> <Compile Include="exe_d.wxs" />
<Compile Include="exe_files.wxs" /> <Compile Include="exe_files.wxs" />
<Compile Include="exe_reg.wxs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="*.wxl" /> <EmbeddedResource Include="*.wxl" />

View File

@ -4,4 +4,5 @@
<String Id="ShortDescriptor">executable</String> <String Id="ShortDescriptor">executable</String>
<String Id="ShortcutName">Python {{ShortVersion}} ({{Bitness}})</String> <String Id="ShortcutName">Python {{ShortVersion}} ({{Bitness}})</String>
<String Id="ShortcutDescription">Launches the !(loc.ProductName) interpreter.</String> <String Id="ShortcutDescription">Launches the !(loc.ProductName) interpreter.</String>
<String Id="SupportUrl">http://www.python.org/</String>
</WixLocalization> </WixLocalization>

View File

@ -28,6 +28,9 @@
</Component> </Component>
<Component Id="pythonw.exe" Directory="InstallDirectory" Guid="$(var.PythonwExeComponentGuid)"> <Component Id="pythonw.exe" Directory="InstallDirectory" Guid="$(var.PythonwExeComponentGuid)">
<File Name="pythonw.exe" KeyPath="yes" /> <File Name="pythonw.exe" KeyPath="yes" />
<RegistryKey Root="HKMU" Key="[REGISTRYKEY]">
<RegistryValue Key="InstallPath" Name="WindowedExecutablePath" Type="string" Value="[#pythonw.exe]" KeyPath="no" />
</RegistryKey>
</Component> </Component>
<Component Id="vcruntime140.dll" Directory="InstallDirectory" Guid="*"> <Component Id="vcruntime140.dll" Directory="InstallDirectory" Guid="*">
<File Name="vcruntime140.dll" Source="!(bindpath.redist)vcruntime140.dll" KeyPath="yes" /> <File Name="vcruntime140.dll" Source="!(bindpath.redist)vcruntime140.dll" KeyPath="yes" />

View File

@ -10,6 +10,7 @@
<ItemGroup> <ItemGroup>
<Compile Include="exe_pdb.wxs" /> <Compile Include="exe_pdb.wxs" />
<Compile Include="exe_files.wxs" /> <Compile Include="exe_files.wxs" />
<Compile Include="exe_reg.wxs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="*.wxl" /> <EmbeddedResource Include="*.wxl" />

View File

@ -69,6 +69,8 @@
<PropertyGroup> <PropertyGroup>
<Bitness>32-bit</Bitness> <Bitness>32-bit</Bitness>
<Bitness Condition="$(Platform) == 'x64'">64-bit</Bitness> <Bitness Condition="$(Platform) == 'x64'">64-bit</Bitness>
<PlatformArchitecture>32bit</PlatformArchitecture>
<PlatformArchitecture Condition="$(Platform) == 'x64'">64bit</PlatformArchitecture>
<DefineConstants> <DefineConstants>
$(DefineConstants); $(DefineConstants);
Version=$(InstallerVersion); Version=$(InstallerVersion);
@ -79,6 +81,7 @@
UpgradeMinimumVersion=$(MajorVersionNumber).$(MinorVersionNumber).0.0; UpgradeMinimumVersion=$(MajorVersionNumber).$(MinorVersionNumber).0.0;
NextMajorVersionNumber=$(MajorVersionNumber).$([msbuild]::Add($(MinorVersionNumber), 1)).0.0; NextMajorVersionNumber=$(MajorVersionNumber).$([msbuild]::Add($(MinorVersionNumber), 1)).0.0;
Bitness=$(Bitness); Bitness=$(Bitness);
PlatformArchitecture=$(PlatformArchitecture);
PyDebugExt=$(PyDebugExt); PyDebugExt=$(PyDebugExt);
PyArchExt=$(PyArchExt); PyArchExt=$(PyArchExt);
PyTestExt=$(PyTestExt); PyTestExt=$(PyTestExt);
@ -155,6 +158,12 @@
<_Uuid Include="RemoveLib2to3PickleComponentGuid"> <_Uuid Include="RemoveLib2to3PickleComponentGuid">
<Uri>lib2to3/pickles</Uri> <Uri>lib2to3/pickles</Uri>
</_Uuid> </_Uuid>
<_Uuid Include="CommonPythonRegComponentGuid">
<Uri>registry</Uri>
</_Uuid>
<_Uuid Include="PythonRegComponentGuid">
<Uri>registry/$(OutputName)</Uri>
</_Uuid>
</ItemGroup> </ItemGroup>
<Target Name="_GenerateGuids" AfterTargets="PrepareForBuild" Condition="$(TargetName) != 'launcher'"> <Target Name="_GenerateGuids" AfterTargets="PrepareForBuild" Condition="$(TargetName) != 'launcher'">
<PropertyGroup> <PropertyGroup>