summaryrefslogtreecommitdiff
path: root/Tools/msi/tcltk
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/msi/tcltk')
-rw-r--r--Tools/msi/tcltk/tcltk.wixproj50
-rw-r--r--Tools/msi/tcltk/tcltk.wxs64
-rw-r--r--Tools/msi/tcltk/tcltk_d.wixproj28
-rw-r--r--Tools/msi/tcltk/tcltk_d.wxs14
-rw-r--r--Tools/msi/tcltk/tcltk_en-US.wxl_template12
-rw-r--r--Tools/msi/tcltk/tcltk_files.wxs35
-rw-r--r--Tools/msi/tcltk/tcltk_pdb.wixproj19
-rw-r--r--Tools/msi/tcltk/tcltk_pdb.wxs13
-rw-r--r--Tools/msi/tcltk/tcltk_reg.wxs48
9 files changed, 283 insertions, 0 deletions
diff --git a/Tools/msi/tcltk/tcltk.wixproj b/Tools/msi/tcltk/tcltk.wixproj
new file mode 100644
index 0000000000..f66fc14988
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk.wixproj
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{DB350600-186C-4E52-BA98-26A7CECB067F}</ProjectGuid>
+ <SchemaVersion>2.0</SchemaVersion>
+ <OutputName>tcltk</OutputName>
+ <OutputType>Package</OutputType>
+ </PropertyGroup>
+ <PropertyGroup>
+ <!-- Shortcut validation is not necessary -->
+ <SuppressICEs>ICE43</SuppressICEs>
+ </PropertyGroup>
+ <Import Project="..\msi.props" />
+ <ItemGroup>
+ <Compile Include="tcltk.wxs" />
+ <Compile Include="tcltk_files.wxs" />
+ <Compile Include="tcltk_reg.wxs" />
+ </ItemGroup>
+ <ItemGroup>
+ <WxlTemplate Include="*.wxl_template" />
+ </ItemGroup>
+ <ItemGroup>
+ <InstallFiles Include="$(tcltkDir)bin\*.dll" Exclude="$(tcltkDir)bin\*g.dll">
+ <SourceBase>$(tcltkDir)</SourceBase>
+ <Source>!(bindpath.tcltk)</Source>
+ <TargetBase>$(tcltkDir)bin</TargetBase>
+ <Target_>DLLs\</Target_>
+ <Group>tcltk_dlls</Group>
+ </InstallFiles>
+
+ <InstallFiles Include="$(tcltkDir)lib\**\*">
+ <SourceBase>$(tcltkDir)</SourceBase>
+ <Source>!(bindpath.tcltk)</Source>
+ <TargetBase>$(tcltkDir)lib</TargetBase>
+ <Target_>tcl\</Target_>
+ <Group>tcltk_lib</Group>
+ </InstallFiles>
+
+ <InstallFiles Include="$(PySourcePath)Lib\tkinter\**\*;$(PySourcePath)Lib\idlelib\**\*;$(PySourcePath)Lib\turtledemo\**\*"
+ Exclude="$(PySourcePath)Lib\**\*.pyc;$(PySourcePath)Lib\**\*.pyo">
+ <SourceBase>$(PySourcePath)</SourceBase>
+ <Source>!(bindpath.src)</Source>
+ <TargetBase>$(PySourcePath)</TargetBase>
+ <Target_></Target_>
+ <Group>tkinter_lib</Group>
+ </InstallFiles>
+ </ItemGroup>
+
+ <Import Project="..\msi.targets" />
+</Project> \ No newline at end of file
diff --git a/Tools/msi/tcltk/tcltk.wxs b/Tools/msi/tcltk/tcltk.wxs
new file mode 100644
index 0000000000..0b83c5cb5c
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk.wxs
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+ <Product Id="*" Language="!(loc.LCID)" Name="!(loc.Title)" Version="$(var.Version)" Manufacturer="!(loc.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
+ <Package InstallerVersion="300" Compressed="yes" InstallScope="perUser" Platform="$(var.Platform)" />
+ <MediaTemplate EmbedCab="yes" CompressionLevel="high" />
+
+ <PropertyRef Id="UpgradeTable" />
+ <PropertyRef Id="REGISTRYKEY" />
+
+ <Property Id="PYTHON_EXE" Secure="yes">
+ <ComponentSearch Id="PythonExe" Guid="$(var.PythonExeComponentGuid)">
+ <FileSearch Name="python.exe" />
+ </ComponentSearch>
+ </Property>
+
+ <Property Id="PYTHONW_EXE" Secure="yes">
+ <ComponentSearch Id="PythonwExe" Guid="$(var.PythonwExeComponentGuid)">
+ <FileSearch Name="pythonw.exe" />
+ </ComponentSearch>
+ </Property>
+
+ <Condition Message="!(loc.NoPython)">PYTHON_EXE and PYTHONW_EXE</Condition>
+
+ <Feature Id="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
+ <ComponentGroupRef Id="tkinter_extension" />
+ <ComponentGroupRef Id="tcltk_dlls" />
+ <ComponentGroupRef Id="tcltk_lib" />
+ <ComponentGroupRef Id="tkinter_lib" Primary="yes" />
+
+ <Component Id="idle_reg" Directory="InstallDirectory">
+ <RegistryValue KeyPath="yes" Root="HKMU" Key="[REGISTRYKEY]\Idle" Type="string" Value="[#Lib_idlelib_idle.pyw]" />
+ </Component>
+ <ComponentRef Id="OptionalFeature" />
+ </Feature>
+ <Feature Id="AssociateFiles" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
+ <ComponentGroupRef Id="tkinter_lib" />
+ <ComponentGroupRef Id="idle_reg" />
+ </Feature>
+ <Feature Id="Shortcuts" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
+ <ComponentGroupRef Id="tkinter_lib" />
+
+ <Component Id="idle_shortcut" Directory="MenuDir">
+ <RegistryValue Root="HKMU" Key="[REGISTRYKEY]\IdleShortcuts" Type="integer" Value="1" KeyPath="yes" />
+ <RemoveFolder Id="Remove_MenuDir" On="uninstall" />
+
+ <Shortcut Id="IDLE"
+ Directory="MenuDir"
+ Name="!(loc.ShortcutName)"
+ Description="!(loc.ShortcutDescription)"
+ Target="[PYTHONW_EXE]"
+ Arguments='"[#Lib_idlelib_idle.pyw]"'
+ Icon="idle.exe">
+ <Icon Id="idle.exe" SourceFile="!(bindpath.src)Lib\idlelib\Icons\idle.ico" />
+ </Shortcut>
+ <Shortcut Id="pydoc.py"
+ Target="[PYTHON_EXE]"
+ Arguments='-m pydoc -b'
+ Name="!(loc.PyDocShortcutName)"
+ Description="!(loc.PyDocShortcutDescription)"
+ Icon="idle.exe" />
+ </Component>
+ </Feature>
+ </Product>
+</Wix>
diff --git a/Tools/msi/tcltk/tcltk_d.wixproj b/Tools/msi/tcltk/tcltk_d.wixproj
new file mode 100644
index 0000000000..3266190da0
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_d.wixproj
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{EDA1FA5A-E2AA-4EAF-B49B-87D981CD0F16}</ProjectGuid>
+ <SchemaVersion>2.0</SchemaVersion>
+ <OutputName>tcltk_d</OutputName>
+ <OutputType>Package</OutputType>
+ </PropertyGroup>
+ <Import Project="..\msi.props" />
+ <ItemGroup>
+ <Compile Include="tcltk_d.wxs" />
+ <Compile Include="tcltk_files.wxs" />
+ </ItemGroup>
+ <ItemGroup>
+ <WxlTemplate Include="*.wxl_template" />
+ </ItemGroup>
+ <ItemGroup>
+ <InstallFiles Include="$(tcltkDir)bin\*g.dll">
+ <SourceBase>$(tcltkDir)</SourceBase>
+ <Source>!(bindpath.tcltk)</Source>
+ <TargetBase>$(tcltkDir)bin</TargetBase>
+ <Target_>DLLs\</Target_>
+ <Group>tcltk_dlls_d</Group>
+ </InstallFiles>
+ </ItemGroup>
+
+ <Import Project="..\msi.targets" />
+</Project> \ No newline at end of file
diff --git a/Tools/msi/tcltk/tcltk_d.wxs b/Tools/msi/tcltk/tcltk_d.wxs
new file mode 100644
index 0000000000..01d0d2439d
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_d.wxs
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+ <Product Id="*" Language="!(loc.LCID)" Name="!(loc.Title_d)" Version="$(var.Version)" Manufacturer="!(loc.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
+ <Package InstallerVersion="300" Compressed="yes" InstallScope="perUser" Platform="$(var.Platform)" />
+ <MediaTemplate EmbedCab="yes" CompressionLevel="high" />
+
+ <PropertyRef Id="UpgradeTable" />
+
+ <Feature Id="DebugBinaries" AllowAdvertise="no" Title="!(loc.Title_d)" Description="!(loc.Description_d)">
+ <ComponentGroupRef Id="tkinter_extension_d" />
+ <ComponentGroupRef Id="tcltk_dlls_d" />
+ </Feature>
+ </Product>
+</Wix>
diff --git a/Tools/msi/tcltk/tcltk_en-US.wxl_template b/Tools/msi/tcltk/tcltk_en-US.wxl_template
new file mode 100644
index 0000000000..f40fd6239d
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_en-US.wxl_template
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<WixLocalization Culture="en-us" xmlns="http://schemas.microsoft.com/wix/2006/localization">
+ <String Id="Descriptor">Tcl/Tk Support</String>
+ <String Id="ShortDescriptor">tcltk</String>
+ <String Id="NoPython">No !(loc.ProductName) installation was detected.</String>
+ <String Id="ShortcutName">IDLE (Python {{ShortVersion}} {{Bitness}})</String>
+ <String Id="ShortcutDescription">Launches IDLE, the interactive environment for !(loc.ProductName).</String>
+ <String Id="PyDocShortcutName">Python {{ShortVersion}} Module Docs ({{Bitness}})</String>
+ <String Id="PyDocShortcutDescription">Start the !(loc.ProductName) documentation server.</String>
+ <String Id="EditMenu">&amp;Edit with IDLE</String>
+ <String Id="EditSubMenu">Edit with IDLE {{ShortVersion}} ({{Bitness}})</String>
+</WixLocalization>
diff --git a/Tools/msi/tcltk/tcltk_files.wxs b/Tools/msi/tcltk/tcltk_files.wxs
new file mode 100644
index 0000000000..0d1b4a93a3
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_files.wxs
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+ <Fragment>
+ <ComponentGroup Id="tkinter_extension">
+ <Component Id="_tkinter.pyd" Directory="DLLs" Guid="*">
+ <File Name="_tkinter.pyd" KeyPath="yes" />
+ </Component>
+ <Component Id="_tkinter.lib" Directory="libs" Guid="*">
+ <File Name="_tkinter.lib" KeyPath="yes" />
+ </Component>
+ </ComponentGroup>
+ </Fragment>
+
+ <Fragment>
+ <ComponentGroup Id="tkinter_extension_symbols">
+ <Component Id="_tkinter.pdb" Directory="DLLs" Guid="*">
+ <File Name="_tkinter.pdb" />
+ </Component>
+ </ComponentGroup>
+ </Fragment>
+
+ <Fragment>
+ <ComponentGroup Id="tkinter_extension_d">
+ <Component Id="_tkinter_d.pyd" Directory="DLLs" Guid="*">
+ <File Name="_tkinter_d.pyd" />
+ </Component>
+ <Component Id="_tkinter_d.lib" Directory="DLLs" Guid="*">
+ <File Name="_tkinter_d.lib" />
+ </Component>
+ <Component Id="_tkinter_d.pdb" Directory="DLLs" Guid="*">
+ <File Name="_tkinter_d.pdb" />
+ </Component>
+ </ComponentGroup>
+ </Fragment>
+</Wix>
diff --git a/Tools/msi/tcltk/tcltk_pdb.wixproj b/Tools/msi/tcltk/tcltk_pdb.wixproj
new file mode 100644
index 0000000000..3370798a05
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_pdb.wixproj
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ProjectGuid>{02053AFA-1831-499A-B3EA-D8B223D3C40D}</ProjectGuid>
+ <SchemaVersion>2.0</SchemaVersion>
+ <OutputName>tcltk_pdb</OutputName>
+ <OutputType>Package</OutputType>
+ </PropertyGroup>
+ <Import Project="..\msi.props" />
+ <ItemGroup>
+ <Compile Include="tcltk_pdb.wxs" />
+ <Compile Include="tcltk_files.wxs" />
+ </ItemGroup>
+ <ItemGroup>
+ <WxlTemplate Include="*.wxl_template" />
+ </ItemGroup>
+
+ <Import Project="..\msi.targets" />
+</Project> \ No newline at end of file
diff --git a/Tools/msi/tcltk/tcltk_pdb.wxs b/Tools/msi/tcltk/tcltk_pdb.wxs
new file mode 100644
index 0000000000..04454f3849
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_pdb.wxs
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+ <Product Id="*" Language="!(loc.LCID)" Name="!(loc.TitlePdb)" Version="$(var.Version)" Manufacturer="!(loc.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
+ <Package InstallerVersion="300" Compressed="yes" InstallScope="perUser" Platform="$(var.Platform)" />
+ <MediaTemplate EmbedCab="yes" CompressionLevel="high" />
+
+ <PropertyRef Id="UpgradeTable" />
+
+ <Feature Id="Symbols" AllowAdvertise="no" Title="!(loc.TitlePdb)" Description="!(loc.DescriptionPdb)">
+ <ComponentGroupRef Id="tkinter_extension_symbols" />
+ </Feature>
+ </Product>
+</Wix>
diff --git a/Tools/msi/tcltk/tcltk_reg.wxs b/Tools/msi/tcltk/tcltk_reg.wxs
new file mode 100644
index 0000000000..e09892747e
--- /dev/null
+++ b/Tools/msi/tcltk/tcltk_reg.wxs
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+ <Fragment>
+ <ComponentGroup Id="idle_reg">
+ <!-- We fix the guid of the Subcommands key so that it is correctly reference counted -->
+ <Component Id="assoc_subcommands" Directory="InstallDirectory" Guid="{57D47B4C-96E6-40A0-A958-57083D74423F}">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" />
+ </Component>
+ <Component Id="assoc_subcommands_nocon" Directory="InstallDirectory" Guid="{07061D85-9151-4FC4-BB78-13628020D026}">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" />
+ </Component>
+
+ <Component Id="assoc_editwithidle" Directory="InstallDirectory">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+ <Component Id="assoc_editwithidle_nocon" Directory="InstallDirectory">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+
+ <Component Id="assoc_editwithidle_vista" Directory="InstallDirectory">
+ <Condition>VersionNT = 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+ <Component Id="assoc_editwithidle_nocon_vista" Directory="InstallDirectory">
+ <Condition>VersionNT = 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+ </ComponentGroup>
+ </Fragment>
+</Wix>