• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="UTF-8"?>
2<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
3    <Fragment>
4        <Property Id="ROOTREGISTRYKEY" Value="Software\Python\PythonCore" />
5    </Fragment>
6
7    <Fragment>
8        <Property Id="REGISTRYKEY" Value="Software\Python\PythonCore\$(var.ShortVersion)$(var.PyArchExt)$(var.PyTestExt)" />
9    </Fragment>
10
11    <Fragment>
12        <Component Id="OptionalFeature" Guid="*" Directory="InstallDirectory">
13            <Condition>OPTIONALFEATURESREGISTRYKEY</Condition>
14            <RegistryKey Root="HKMU" Key="[OPTIONALFEATURESREGISTRYKEY]">
15                <RegistryValue Type="string" Name="$(var.OptionalFeatureName)" Value="$(var.Version)" KeyPath="yes" />
16            </RegistryKey>
17        </Component>
18    </Fragment>
19
20    <Fragment>
21        <Property Id="UpgradeTable" Value="1" />
22
23        <?ifndef SuppressUpgradeTable ?>
24        <Upgrade Id="$(var.UpgradeCode)">
25            <UpgradeVersion Property="DOWNGRADE" Minimum="$(var.Version)" IncludeMinimum="no" OnlyDetect="yes" />
26            <UpgradeVersion Property="UPGRADE" Minimum="$(var.UpgradeMinimumVersion)" IncludeMinimum="yes" Maximum="$(var.Version)" IncludeMaximum="no" />
27        </Upgrade>
28        <?endif ?>
29
30        <?ifdef CoreUpgradeCode ?>
31        <?if $(var.UpgradeCode)!=$(var.CoreUpgradeCode) ?>
32        <Upgrade Id="$(var.CoreUpgradeCode)">
33            <UpgradeVersion Property="MISSING_CORE" Minimum="$(var.Version)" IncludeMinimum="yes" Maximum="$(var.Version)" IncludeMaximum="yes" OnlyDetect="yes" />
34        </Upgrade>
35        <Condition Message="!(loc.IncorrectCore)">Installed OR NOT MISSING_CORE</Condition>
36        <?endif ?>
37        <?endif ?>
38
39        <Condition Message="!(loc.NoDowngrade)">Installed OR NOT DOWNGRADE</Condition>
40        <Condition Message="!(loc.NoTargetDir)">Installed OR TARGETDIR OR Suppress_TARGETDIR_Check</Condition>
41
42        <InstallExecuteSequence>
43            <RemoveExistingProducts After="InstallInitialize" Overridable="yes">UPGRADE</RemoveExistingProducts>
44        </InstallExecuteSequence>
45    </Fragment>
46
47    <Fragment>
48        <!-- Include an icon for the Programs and Features dialog -->
49        <Icon Id="ARPIcon" SourceFile="!(bindpath.src)PC\icons\python.ico" />
50        <Property Id="ARPPRODUCTICON" Value="ARPIcon" />
51        <Property Id="ARPNOMODIFY" Value="1" />
52        <Property Id="DISABLEADVTSHORTCUTS" Value="1" />
53    </Fragment>
54
55    <Fragment>
56    <?ifdef InstallDirectoryGuidSeed ?>
57        <Directory Id="TARGETDIR" Name="SourceDir">
58            <Directory Id="InstallDirectory" ComponentGuidGenerationSeed="$(var.InstallDirectoryGuidSeed)" />
59        </Directory>
60    <?endif ?>
61    </Fragment>
62
63    <!-- Top-level directories -->
64    <Fragment>
65        <DirectoryRef Id="InstallDirectory">
66            <Directory Id="DLLs" Name="DLLs">
67                <Directory Id="Catalogs" />
68            </Directory>
69        </DirectoryRef>
70    </Fragment>
71
72    <Fragment>
73        <DirectoryRef Id="InstallDirectory">
74            <Directory Id="Doc" Name="Doc" />
75        </DirectoryRef>
76    </Fragment>
77
78    <Fragment>
79        <DirectoryRef Id="InstallDirectory">
80            <Directory Id="include" Name="include" />
81        </DirectoryRef>
82    </Fragment>
83
84    <Fragment>
85        <DirectoryRef Id="InstallDirectory">
86            <Directory Id="Lib" Name="Lib" />
87        </DirectoryRef>
88    </Fragment>
89
90    <Fragment>
91        <DirectoryRef Id="InstallDirectory">
92            <Directory Id="libs" Name="libs" />
93        </DirectoryRef>
94    </Fragment>
95
96    <Fragment>
97        <DirectoryRef Id="InstallDirectory">
98            <Directory Id="Scripts" Name="Scripts" />
99        </DirectoryRef>
100    </Fragment>
101
102    <Fragment>
103        <DirectoryRef Id="InstallDirectory">
104            <Directory Id="tcl" Name="tcl" />
105        </DirectoryRef>
106    </Fragment>
107
108    <Fragment>
109        <DirectoryRef Id="InstallDirectory">
110            <Directory Id="Tools" Name="Tools" />
111        </DirectoryRef>
112    </Fragment>
113
114    <!-- Start Menu folder -->
115    <Fragment>
116        <DirectoryRef Id="TARGETDIR">
117            <Directory Id="ProgramMenuFolder">
118                <Directory Id="MenuDir" Name="!(loc.ProductName)" />
119            </Directory>
120        </DirectoryRef>
121    </Fragment>
122</Wix>
123