diff deploy/win32/easyhg.wxs @ 680:21e03596dd93

Towards Win32 deployment
author Chris Cannam
date Fri, 07 Dec 2018 13:41:32 +0000
parents easyhg.wxs@4d39a93cab9e
children 1add6167eb3c
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win32/easyhg.wxs	Fri Dec 07 13:41:32 2018 +0000
@@ -0,0 +1,389 @@
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+
+  <Product
+      Name="EasyMercurial" 
+      Id="*"
+      Language="1033"
+      Codepage="1252" 
+      Version="1.3.0" 
+      UpgradeCode="B82DFDA9-B9DE-49BC-93E5-0B96F9DEB04B"
+      Manufacturer="Queen Mary, University of London">
+    
+    <Package
+        Id="*"
+        Keywords="Installer"
+        Description="EasyMercurial Installer" 
+        Comments="Copyright (c) 2012 Queen Mary, University of London and others." 
+        Manufacturer="Queen Mary, University of London" 
+        InstallerVersion="100" 
+        Languages="1033" 
+        Compressed="yes" 
+        SummaryCodepage="1252"/>
+
+    <MajorUpgrade DowngradeErrorMessage="A later version of EasyMercurial is already installed. Setup will now exit."/>
+
+    <Media Id="1" Cabinet="easyhg.cab" EmbedCab="yes" DiskPrompt="CD-ROM #1"/>
+    <Property Id="DiskPrompt" Value="EasyMercurial Installation [1]"/>
+
+    <Directory Id="TARGETDIR" Name="SourceDir">
+      <Directory Id="ProgramFilesFolder" Name="PFiles">
+        <Directory Id="INSTALLDIR" Name="EasyMercurial">
+            
+            <Component
+                Id="MainExecutable"
+                Guid="DC128BA9-25A8-431E-8A88-7E0445E850B9">
+
+              <File
+                  Id="EasyHg"
+                  Name="EasyMercurial.exe"
+                  DiskId="1"
+                  Source="release\EasyMercurial.exe"
+                  KeyPath="yes">
+
+                <Shortcut
+                    Id="EasyHgStartEntry"
+                    Directory="ProgramMenuDir"
+                    Name="EasyMercurial"
+                    WorkingDirectory="INSTALLDIR"
+                    Icon="easyhg.ico"
+                    IconIndex="0"
+                    Advertise="yes"/>
+
+                <Shortcut
+                    Id="EasyHgDesktop"
+                    Directory="DesktopFolder"
+                    Name="EasyMercurial"
+                    WorkingDirectory="INSTALLDIR"
+                    Icon="easyhg.ico"
+                    IconIndex="0"
+                    Advertise="yes"/>
+              </File>
+
+              <File
+                  Id="COPYING"
+                  Name="COPYING"
+                  DiskId="1"
+                  Source="COPYING"/>
+
+              <File
+                  Id="easyhg.ico"
+                  Name="easyhg.ico"
+                  DiskId="1"
+                  Source="easyhg.ico"/>
+            </Component>
+
+            <Component
+                Id="HelperScripts"
+                Guid="971EA788-347E-4CDE-9899-69EEBE117BDD">
+
+              <File
+                  Id="mergebat"
+                  Name="easyhg-merge.bat"
+                  DiskId="1"
+                  Source="easyhg-merge.bat"
+                  KeyPath="yes"/>
+            </Component>		  
+
+            <Component
+                Id="VCLIBS"
+                Guid="2566C8F0-A2AD-40E9-A356-94E887CC1222">
+              <File
+                  Id="MSVCP100"
+                  Name="MSVCP100.dll"
+                  DiskId="1"
+                  Source="c:\windows\system32\MSVCP100.DLL"
+                  KeyPath="yes"/>
+              <File
+                  Id="MSVCR100"
+                  Name="MSVCR100.dll"
+                  DiskId="1"
+                  Source="c:\windows\system32\MSVCR100.DLL"/>
+            </Component>
+
+            <Component
+                Id="Qt4"
+                Guid="04F730AC-B361-45A2-B1CC-9CEB55256117">
+              <File
+                  Id="QtCore"
+                  Name="QtCore4.dll"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\QtCore4.dll"
+		  KeyPath="yes"/>
+              <File
+                  Id="QtGui"
+                  Name="QtGui4.dll"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\QtGui4.dll"/>
+              <File
+                  Id="QtNetwork"
+                  Name="QtNetwork4.dll"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\QtNetwork4.dll"/>
+            </Component>
+
+            <Component
+                Id="hg"
+                Guid="5BBC4080-2EDF-4616-A8CB-F96B9C942C1A">
+
+              <File
+                  Id="hg"
+                  Name="hg.exe"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\hg.exe"
+                  KeyPath="yes"/>
+              <File
+                  Id="pydll"
+                  Name="python27.dll"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\python27.dll"/>
+              <File
+                  Id="hglib"
+                  Name="library.zip"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\library.zip"/>
+              <File
+                  Id="plink"
+                  Name="TortoisePlink.exe"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\TortoisePlink.exe"/>
+              <File
+                  Id="ctypes"
+                  Name="_ctypes.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_ctypes.pyd"/>
+              <File
+                  Id="ctypestest"
+                  Name="_ctypes_test.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_ctypes_test.pyd"/>
+              <File
+                  Id="elementtree"
+                  Name="_elementtree.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_elementtree.pyd"/>
+              <File
+                  Id="hashlib"
+                  Name="_hashlib.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_hashlib.pyd"/>
+              <File
+                  Id="socket"
+                  Name="_socket.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_socket.pyd"/>
+              <File
+                  Id="ssl"
+                  Name="_ssl.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_ssl.pyd"/>
+              <File
+                  Id="winsysloader"
+                  Name="_win32sysloader.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\_win32sysloader.pyd"/>
+              <File
+                  Id="bz"
+                  Name="bz2.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\bz2.pyd"/>
+              <File
+                  Id="dulwichobjects"
+                  Name="dulwich._objects.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\dulwich._objects.pyd"/>
+              <File
+                  Id="dulwichpack"
+                  Name="dulwich._pack.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\dulwich._pack.pyd"/>
+              <File
+                  Id="libsvncore"
+                  Name="libsvn._core.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\libsvn._core.pyd"/>
+              <File
+                  Id="libsvnclient"
+                  Name="libsvn._client.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\libsvn._client.pyd"/>
+              <File
+                  Id="libsvndelta"
+                  Name="libsvn._delta.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\libsvn._delta.pyd"/>
+              <File
+                  Id="libsvnra"
+                  Name="libsvn._ra.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\libsvn._ra.pyd"/>
+              <File
+                  Id="libsvnwc"
+                  Name="libsvn._wc.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\libsvn._wc.pyd"/>
+              <File
+                  Id="mercurialbase"
+                  Name="mercurial.base85.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.base85.pyd"/>
+              <File
+                  Id="mercurialbdiff"
+                  Name="mercurial.bdiff.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.bdiff.pyd"/>
+              <File
+                  Id="mercurialdiffhelpers"
+                  Name="mercurial.diffhelpers.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.diffhelpers.pyd"/>
+              <File
+                  Id="mercurialmpatch"
+                  Name="mercurial.mpatch.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.mpatch.pyd"/>
+              <File
+                  Id="mercurialosutil"
+                  Name="mercurial.osutil.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.osutil.pyd"/>
+              <File
+                  Id="mercurialparsers"
+                  Name="mercurial.parsers.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\mercurial.parsers.pyd"/>
+              <File
+                  Id="pyexpat"
+                  Name="pyexpat.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\pyexpat.pyd"/>
+              <File
+                  Id="unicodedata"
+                  Name="unicodedata.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\unicodedata.pyd"/>
+              <File
+                  Id="QtCorepy"
+                  Name="PyQt4.QtCore.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\PyQt4.QtCore.pyd" />
+              <File
+                  Id="QtGuipy"
+                  Name="PyQt4.QtGui.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\PyQt4.QtGui.pyd" />
+            </Component>		  
+
+            <Component
+                Id="sip"
+                Guid="DCCE0979-A0A6-475D-B6CD-3173740593F9">
+              <File
+                  Id="sip"
+                  Name="sip.pyd"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\sip.pyd" />
+            </Component>
+
+            <Component
+                Id="kdiff3"
+                Guid="6BA0CB20-F426-42AB-A95A-615A4FF87752">
+              <File
+                  Id="kdiff3"
+                  Name="kdiff3.exe"
+                  DiskId="1"
+                  Source="d:\easyhg-bundle-dependencies\kdiff3.exe"
+                  KeyPath="yes"/>
+            </Component>		  
+
+	    <Directory Id="Crypto" Name="Crypto">
+	      <Directory Id="Cipher" Name="Cipher">
+		<Component
+		    Id="cryptocipher"
+		    Guid="FB7C7C7E-FC62-4024-9E7E-47034B416286">
+		  <File
+		      Id="cipherinit"
+		      Name="__init__.py"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Cipher\__init__.py" />
+		  <File
+		      Id="cipheraesd"
+		      Name="_AES.pyd"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Cipher\_AES.pyd" />
+		  <File
+		      Id="cipheraes"
+		      Name="AES.py"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Cipher\AES.py" />
+		  <File
+		      Id="cipherblockalgo"
+		      Name="blockalgo.py"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Cipher\blockalgo.py" />
+		</Component>
+	      </Directory>
+	      <Directory Id="Util" Name="Util">
+		
+		<Component
+		    Id="cryptoutil"
+		    Guid="9B5FB64F-B5B3-4E36-A4E6-1EC648470557">
+		  <File
+		      Id="utilinit"
+		      Name="__init__.py"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Util\__init__.py" />
+		  <File
+		      Id="utilpy3compat"
+		      Name="py3compat.py"
+		      DiskId="1"
+		      Source="d:\easyhg-bundle-dependencies\Crypto\Util\py3compat.py" />
+		</Component>
+	      </Directory>
+	      
+	      <Component
+		  Id="crypto"
+		  Guid="AB5D6864-6D47-4C51-A132-5E0EC5BE1EF8">
+		<File
+		    Id="cryptoinit"
+		    Name="__init__.py"
+		    DiskId="1"
+		    Source="d:\easyhg-bundle-dependencies\Crypto\__init__.py" />
+	      </Component>
+
+	    </Directory>
+
+        </Directory>
+      </Directory>
+
+      <Directory Id="ProgramMenuFolder" Name="Programs">
+        <Directory Id="ProgramMenuDir" Name="EasyMercurial">
+          <Component Id="ProgramMenuDir" Guid="2E8BDEA0-A6E4-4607-854D-E317A23A535B">
+            <RemoveFolder Id="ProgramMenuDir" On="uninstall"/>
+            <RegistryValue Root="HKMU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes"/>
+          </Component>
+        </Directory>
+      </Directory>
+
+      <Directory Id="DesktopFolder" Name="Desktop"/>
+
+    </Directory>
+
+    <Feature Id="Complete" Level="1">
+      <ComponentRef Id="MainExecutable"/>
+      <ComponentRef Id="VCLIBS"/>
+      <ComponentRef Id="HelperScripts"/>
+      <ComponentRef Id="Qt4"/>
+      <ComponentRef Id="hg"/>
+      <ComponentRef Id="sip"/>
+      <ComponentRef Id="crypto"/>
+      <ComponentRef Id="cryptocipher"/>
+      <ComponentRef Id="cryptoutil"/>
+      <ComponentRef Id="kdiff3"/>
+      <ComponentRef Id="ProgramMenuDir"/>
+    </Feature>
+
+    <Icon
+        Id="easyhg.ico"
+        SourceFile="easyhg.ico"/>
+
+  </Product>
+</Wix>