[pypy-commit] pypy windowsinstaller: Further hackery.

andr...@siemens.com pypy.commits at gmail.com
Tue Feb 5 05:58:01 EST 2019


Author: andrew.lawrence at siemens.com
Branch: windowsinstaller
Changeset: r95802:1e97dbe9c397
Date: 2018-12-24 21:06 +0000
http://bitbucket.org/pypy/pypy/changeset/1e97dbe9c397/

Log:	Further hackery.

diff --git a/pypy/tool/release/windowsinstaller/bundle/bootstrap/pythonba.vcxproj b/pypy/tool/release/windowsinstaller/bundle/bootstrap/pythonba.vcxproj
--- a/pypy/tool/release/windowsinstaller/bundle/bootstrap/pythonba.vcxproj
+++ b/pypy/tool/release/windowsinstaller/bundle/bootstrap/pythonba.vcxproj
@@ -21,6 +21,7 @@
   <PropertyGroup Label="Globals">
     <Configuration Condition="'$(Configuration)' == ''">Release</Configuration>
     <Platform Condition="'$(Platform)' == ''">Win32</Platform>
+    <PlatformToolset Condition="'$(PlatformToolset)' == '' and ('$(MSBuildToolsVersion)' == '15.0' or '$(VisualStudioVersion)' == '15.0')">v141</PlatformToolset>
     <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath14)' != ''">v140</PlatformToolset>
     <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath12)' != ''">v120</PlatformToolset>
     <ProjectGuid>{7A09B132-B3EE-499B-A700-A4B2157FEA3D}</ProjectGuid>
@@ -40,18 +41,18 @@
   <ItemDefinitionGroup>
     <ClCompile>
       <PreprocessorDefinitions>_CRT_STDIO_LEGACY_WIDE_SPECIFIERS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v150'">$(WixInstallPath)sdk\vs2017\inc</AdditionalIncludeDirectories>
-	  <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v140'">$(WixInstallPath)sdk\vs2015\inc</AdditionalIncludeDirectories>
-	  <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v120'">$(WixInstallPath)sdk\vs2013\inc</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v141'">$(WixRootPath)sdk\vs2017\inc</AdditionalIncludeDirectories>
+	  <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v140'">$(WixRootPath)sdk\vs2015\inc</AdditionalIncludeDirectories>
+	  <AdditionalIncludeDirectories Condition="'$(PlatformToolset)' == 'v120'">$(WixRootPath)sdk\vs2013\inc</AdditionalIncludeDirectories>
       <PrecompiledHeader>Use</PrecompiledHeader>
       <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
     </ClCompile>
     <Link>
       <AdditionalDependencies>comctl32.lib;gdiplus.lib;msimg32.lib;shlwapi.lib;wininet.lib;dutil.lib;balutil.lib;version.lib;uxtheme.lib;%(AdditionalDependencies)</AdditionalDependencies>
-	  <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v150'">$(WixInstallPath)sdk\vs2017\lib\x86</AdditionalLibraryDirectories>
-      <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v140'">$(WixInstallPath)sdk\vs2015\lib\x86</AdditionalLibraryDirectories>
-      <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v120'">$(WixInstallPath)sdk\vs2013\lib\x86</AdditionalLibraryDirectories>
+	  <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v141'">$(WixRootPath)sdk\vs2017\lib\x86</AdditionalLibraryDirectories>
+      <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v140'">$(WixRootPath)sdk\vs2015\lib\x86</AdditionalLibraryDirectories>
+      <AdditionalLibraryDirectories Condition="'$(PlatformToolset)' == 'v120'">$(WixRootPath)sdk\vs2013\lib\x86</AdditionalLibraryDirectories>
       <ModuleDefinitionFile>pythonba.def</ModuleDefinitionFile>
       <GenerateDebugInformation Condition="'$(Configuration)'=='Debug'">true</GenerateDebugInformation>
     </Link>
diff --git a/pypy/tool/release/windowsinstaller/include/include.wixproj b/pypy/tool/release/windowsinstaller/include/include.wixproj
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/include/include.wixproj
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+    <PropertyGroup>
+        <ProjectGuid>{93912B72-A2D0-49C4-84DC-5B5B490B60AC}</ProjectGuid>
+        <SchemaVersion>2.0</SchemaVersion>
+        <OutputName Condition="'$(OutputName)' == ''">dev</OutputName>
+        <OutputType>Package</OutputType>
+    </PropertyGroup>
+    <Import Project="..\msi.props" />
+    <ItemGroup>
+        <Compile Include="include.wxs" />
+    </ItemGroup>
+    <ItemGroup>
+        <EmbeddedResource Include="*.wxl" />
+    </ItemGroup>
+    <ItemGroup>
+        <InstallFiles Include="$(PySourcePath)include\*.h">
+            <SourceBase>$(PySourcePath)</SourceBase>
+            <Source>!(bindpath.src)</Source>
+            <TargetBase>$(PySourcePath)</TargetBase>
+            <Target_></Target_>
+            <Group>include</Group>
+        </InstallFiles>
+    </ItemGroup>
+    <Import Project="..\msi.targets" />
+</Project>
\ No newline at end of file
diff --git a/pypy/tool/release/windowsinstaller/include/include.wxs b/pypy/tool/release/windowsinstaller/include/include.wxs
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/include/include.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)" 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="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
+            <ComponentGroupRef Id="include" />
+            <ComponentRef Id="OptionalFeature" />
+        </Feature>
+    </Product>
+</Wix>
diff --git a/pypy/tool/release/windowsinstaller/include/include_en-US.wxl b/pypy/tool/release/windowsinstaller/include/include_en-US.wxl
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/include/include_en-US.wxl
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<WixLocalization Culture="en-us" xmlns="http://schemas.microsoft.com/wix/2006/localization">
+    <String Id="Descriptor">Header Files</String>
+    <String Id="ShortDescriptor">include</String>
+</WixLocalization>
diff --git a/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wixproj b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wixproj
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wixproj
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+    <PropertyGroup>
+        <ProjectGuid>{8B49F535-E206-4149-8D88-752929BCEB87}</ProjectGuid>
+        <SchemaVersion>2.0</SchemaVersion>
+        <OutputName Condition="'$(OutputName)' == ''">lib_pypy</OutputName>
+        <OutputType>Package</OutputType>
+    </PropertyGroup>
+    <Import Project="..\msi.props" />
+    <ItemGroup>
+        <Compile Include="lib_pypy.wxs" />
+    </ItemGroup>
+    <ItemGroup>
+        <EmbeddedResource Include="*.wxl" />
+    </ItemGroup>
+    <Import Project="..\msi.targets" />
+</Project>
\ No newline at end of file
diff --git a/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wxs b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wxs
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy.wxs
@@ -0,0 +1,30 @@
+<?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="200" Compressed="yes" InstallScope="perMachine" />
+
+		<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
+		<MediaTemplate />
+
+		<Feature Id="ProductFeature" Title="lib_pypy" Level="1">
+			<ComponentGroupRef Id="ProductComponents" />
+		</Feature>
+	</Product>
+
+	<Fragment>
+		<Directory Id="TARGETDIR" Name="SourceDir">
+			<Directory Id="ProgramFilesFolder">
+				<Directory Id="INSTALLFOLDER" Name="lib_pypy" />
+			</Directory>
+		</Directory>
+	</Fragment>
+
+	<Fragment>
+		<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
+			<!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. -->
+			<!-- <Component Id="ProductComponent"> -->
+				<!-- TODO: Insert files, registry keys, and other resources here. -->
+			<!-- </Component> -->
+		</ComponentGroup>
+	</Fragment>
+</Wix>
diff --git a/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy_en-US.wxl b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy_en-US.wxl
new file mode 100644
--- /dev/null
+++ b/pypy/tool/release/windowsinstaller/lib_pypy/lib_pypy_en-US.wxl
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<WixLocalization Culture="en-us" xmlns="http://schemas.microsoft.com/wix/2006/localization">
+    <String Id="Descriptor">Header Files</String>
+    <String Id="ShortDescriptor">include</String>
+</WixLocalization>
diff --git a/pypy/tool/release/windowsinstaller/wix.props b/pypy/tool/release/windowsinstaller/wix.props
--- a/pypy/tool/release/windowsinstaller/wix.props
+++ b/pypy/tool/release/windowsinstaller/wix.props
@@ -5,9 +5,10 @@
   <PropertyGroup>
     <WixMSBuildPath Condition="'$(WixMSBuildPath)' == '' and Exists('$(MSBuildThisFileDirectory)\Wix')">$(MSBuildThisFileDirectory)\Wix\</WixMSBuildPath>
 	<WixMSBuildPath Condition="'$(WixMSBuildPath)' == '' and Exists('$(MSBuildExtensionsPath32)')">$(MSBuildExtensionsPath32)\Microsoft\Wix\v3.x\</WixMSBuildPath>
-    <WixInstallPath Condition="'$(WixInstallPath)' == '' and Exists('$(ExternalsDir)\windows-installer\wix')">$(ExternalsDir)\windows-installer\wix\</WixInstallPath>
     <WixInstallPath Condition="'$(WixInstallPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Installer XML\3.11 at InstallRoot)</WixInstallPath>
     <WixInstallPath Condition="'$(WixInstallPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows Installer XML\3.11 at InstallRoot)</WixInstallPath>
+	<WixRootPath Condition="'$(WixRootPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Installer XML\3.11 at InstallFolder)</WixRootPath>
+    <WixRootPath Condition="'$(WixRootPath)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows Installer XML\3.11 at InstallFolder)</WixRootPath>
     <WixTargetsPath>$(WixMSBuildPath)\Wix.targets</WixTargetsPath>
   </PropertyGroup>
 </Project>
\ No newline at end of file


More information about the pypy-commit mailing list