annotate deploy/win32/easyhg.wxs @ 692:a74515f1c6e8

Inching forward with win32 packaging
author Chris Cannam
date Mon, 10 Dec 2018 14:45:17 +0000
parents bfafe078df9a
children b939bdac0643
rev   line source
Chris@551 1 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
Chris@551 2
Chris@551 3 <Product
Chris@551 4 Name="EasyMercurial"
Chris@612 5 Id="*"
Chris@551 6 Language="1033"
Chris@551 7 Codepage="1252"
Chris@687 8 Version="1.4.0"
Chris@551 9 UpgradeCode="B82DFDA9-B9DE-49BC-93E5-0B96F9DEB04B"
Chris@551 10 Manufacturer="Queen Mary, University of London">
Chris@612 11
Chris@551 12 <Package
Chris@551 13 Id="*"
Chris@551 14 Keywords="Installer"
Chris@551 15 Description="EasyMercurial Installer"
Chris@687 16 Comments="Copyright (c) 2012-2018 Queen Mary, University of London and others."
Chris@551 17 Manufacturer="Queen Mary, University of London"
Chris@551 18 InstallerVersion="100"
Chris@551 19 Languages="1033"
Chris@551 20 Compressed="yes"
Chris@551 21 SummaryCodepage="1252"/>
Chris@551 22
Chris@612 23 <MajorUpgrade DowngradeErrorMessage="A later version of EasyMercurial is already installed. Setup will now exit."/>
Chris@612 24
Chris@551 25 <Media Id="1" Cabinet="easyhg.cab" EmbedCab="yes" DiskPrompt="CD-ROM #1"/>
Chris@551 26 <Property Id="DiskPrompt" Value="EasyMercurial Installation [1]"/>
Chris@551 27
Chris@551 28 <Directory Id="TARGETDIR" Name="SourceDir">
Chris@551 29 <Directory Id="ProgramFilesFolder" Name="PFiles">
chris@590 30 <Directory Id="INSTALLDIR" Name="EasyMercurial">
Chris@551 31
Chris@551 32 <Component
Chris@551 33 Id="MainExecutable"
Chris@551 34 Guid="DC128BA9-25A8-431E-8A88-7E0445E850B9">
Chris@551 35
Chris@551 36 <File
Chris@551 37 Id="EasyHg"
Chris@551 38 Name="EasyMercurial.exe"
Chris@551 39 DiskId="1"
Chris@687 40 Source="EasyMercurial.exe"
Chris@551 41 KeyPath="yes">
Chris@551 42
Chris@551 43 <Shortcut
Chris@551 44 Id="EasyHgStartEntry"
Chris@551 45 Directory="ProgramMenuDir"
Chris@551 46 Name="EasyMercurial"
Chris@551 47 WorkingDirectory="INSTALLDIR"
chris@568 48 Icon="easyhg.ico"
Chris@551 49 IconIndex="0"
Chris@551 50 Advertise="yes"/>
Chris@551 51
Chris@551 52 <Shortcut
Chris@551 53 Id="EasyHgDesktop"
Chris@551 54 Directory="DesktopFolder"
Chris@551 55 Name="EasyMercurial"
Chris@551 56 WorkingDirectory="INSTALLDIR"
chris@568 57 Icon="easyhg.ico"
Chris@551 58 IconIndex="0"
Chris@551 59 Advertise="yes"/>
Chris@551 60 </File>
Chris@569 61
Chris@569 62 <File
Chris@569 63 Id="COPYING"
Chris@569 64 Name="COPYING"
Chris@569 65 DiskId="1"
Chris@687 66 Source="..\..\COPYING"/>
chris@590 67
chris@590 68 <File
chris@590 69 Id="easyhg.ico"
chris@590 70 Name="easyhg.ico"
chris@590 71 DiskId="1"
Chris@687 72 Source="..\..\easyhg.ico"/>
Chris@551 73 </Component>
Chris@551 74
Chris@551 75 <Component
Chris@569 76 Id="HelperScripts"
Chris@569 77 Guid="971EA788-347E-4CDE-9899-69EEBE117BDD">
Chris@569 78
Chris@569 79 <File
Chris@569 80 Id="mergebat"
Chris@569 81 Name="easyhg-merge.bat"
Chris@569 82 DiskId="1"
Chris@687 83 Source="..\..\easyhg-merge.bat"
Chris@569 84 KeyPath="yes"/>
Chris@569 85 </Component>
Chris@569 86
Chris@569 87 <Component
Chris@687 88 Id="VCLIBS140"
Chris@551 89 Guid="2566C8F0-A2AD-40E9-A356-94E887CC1222">
Chris@551 90 <File
Chris@687 91 Id="MSVCP140"
Chris@688 92 Name="msvcp140.dll"
Chris@551 93 DiskId="1"
Chris@687 94 Source="MSVCP140.DLL"
Chris@551 95 KeyPath="yes"/>
Chris@551 96 <File
Chris@687 97 Id="CONCRT140"
Chris@688 98 Name="concrt140.dll"
Chris@551 99 DiskId="1"
Chris@687 100 Source="CONCRT140.DLL"/>
Chris@687 101 <File
Chris@687 102 Id="VCCORLIB140"
Chris@688 103 Name="vccorlib140.dll"
Chris@687 104 DiskId="1"
Chris@687 105 Source="VCCORLIB140.DLL"/>
Chris@687 106 <File
Chris@687 107 Id="VCRUNTIME140"
Chris@688 108 Name="vcruntime140.dll"
Chris@687 109 DiskId="1"
Chris@687 110 Source="VCRUNTIME140.DLL"/>
Chris@551 111 </Component>
Chris@551 112
Chris@569 113 <Component
Chris@687 114 Id="VCLIBS90"
Chris@687 115 Guid="dfa7bdd3-0976-4cde-b2cd-2ae280ad7c65">
Chris@687 116 <File
Chris@687 117 Id="MSVCP90"
Chris@688 118 Name="msvcp90.dll"
Chris@687 119 DiskId="1"
Chris@687 120 Source="MSVCP90.DLL"
Chris@687 121 KeyPath="yes"/>
Chris@687 122 <File
Chris@687 123 Id="MSVCM90"
Chris@688 124 Name="msvcm90.dll"
Chris@687 125 DiskId="1"
Chris@687 126 Source="MSVCM90.DLL"/>
Chris@687 127 <File
Chris@687 128 Id="MSVCR90"
Chris@688 129 Name="msvcr90.dll"
Chris@687 130 DiskId="1"
Chris@687 131 Source="MSVCR90.DLL"/>
Chris@687 132 </Component>
Chris@687 133
Chris@687 134 <Component
Chris@687 135 Id="Qt5"
Chris@569 136 Guid="04F730AC-B361-45A2-B1CC-9CEB55256117">
Chris@569 137 <File
Chris@569 138 Id="QtCore"
Chris@687 139 Name="Qt5Core.dll"
Chris@569 140 DiskId="1"
Chris@687 141 Source="Qt5Core.dll"
Chris@570 142 KeyPath="yes"/>
Chris@569 143 <File
Chris@569 144 Id="QtGui"
Chris@687 145 Name="Qt5Gui.dll"
Chris@569 146 DiskId="1"
Chris@687 147 Source="Qt5Gui.dll"/>
Chris@687 148 <File
Chris@687 149 Id="QtWidgets"
Chris@687 150 Name="Qt5Widgets.dll"
Chris@687 151 DiskId="1"
Chris@687 152 Source="Qt5Widgets.dll"/>
Chris@569 153 <File
Chris@569 154 Id="QtNetwork"
Chris@687 155 Name="Qt5Network.dll"
Chris@569 156 DiskId="1"
Chris@687 157 Source="Qt5Network.dll"/>
Chris@687 158 <File
Chris@687 159 Id="QtPrintSupport"
Chris@687 160 Name="Qt5PrintSupport.dll"
Chris@687 161 DiskId="1"
Chris@687 162 Source="Qt5PrintSupport.dll"/>
Chris@687 163 <File
Chris@687 164 Id="qminimal"
Chris@687 165 Name="qminimal.dll"
Chris@687 166 DiskId="1"
Chris@687 167 Source="qminimal.dll"/>
Chris@687 168 <File
Chris@687 169 Id="qwindows"
Chris@687 170 Name="qwindows.dll"
Chris@687 171 DiskId="1"
Chris@687 172 Source="qwindows.dll"/>
Chris@687 173 <File
Chris@687 174 Id="qwindowsvistastyle"
Chris@687 175 Name="qwindowsvistastyle.dll"
Chris@687 176 DiskId="1"
Chris@687 177 Source="qwindowsvistastyle.dll"/>
Chris@569 178 </Component>
Chris@569 179
Chris@569 180 <Component
Chris@687 181 Id="hgexec"
Chris@569 182 Guid="5BBC4080-2EDF-4616-A8CB-F96B9C942C1A">
Chris@569 183 <File
Chris@569 184 Id="hg"
Chris@569 185 Name="hg.exe"
Chris@569 186 DiskId="1"
Chris@687 187 Source="hg.exe"
Chris@569 188 KeyPath="yes"/>
Chris@569 189 <File
Chris@569 190 Id="pydll"
Chris@652 191 Name="python27.dll"
Chris@569 192 DiskId="1"
Chris@687 193 Source="python27.dll"/>
Chris@687 194 </Component>
Chris@687 195
Chris@687 196 <Directory Id="HgLibs" Name="lib">
Chris@687 197 <Component
Chris@687 198 Id="hglibs"
Chris@687 199 Guid="bb6ab2ba-1358-47d4-9457-eb4094605620">
Chris@687 200 <File
Chris@687 201 Id="hglib"
Chris@687 202 Name="library.zip"
Chris@687 203 DiskId="1"
Chris@687 204 Source="lib\library.zip"/>
Chris@687 205 <!--
Chris@687 206 <File
Chris@687 207 Id="plink"
Chris@687 208 Name="TortoisePlink.exe"
Chris@687 209 DiskId="1"
Chris@687 210 Source="lib\TortoisePlink.exe"/>
Chris@687 211 -->
Chris@687 212 <File
Chris@687 213 Id="ctypes"
Chris@687 214 Name="_ctypes.pyd"
Chris@687 215 DiskId="1"
Chris@687 216 Source="lib\_ctypes.pyd"/>
Chris@687 217 <File
Chris@687 218 Id="elementtree"
Chris@687 219 Name="_elementtree.pyd"
Chris@687 220 DiskId="1"
Chris@687 221 Source="lib\_elementtree.pyd"/>
Chris@687 222 <File
Chris@687 223 Id="hashlib"
Chris@687 224 Name="_hashlib.pyd"
Chris@687 225 DiskId="1"
Chris@687 226 Source="lib\_hashlib.pyd"/>
Chris@687 227 <File
Chris@687 228 Id="socket"
Chris@687 229 Name="_socket.pyd"
Chris@687 230 DiskId="1"
Chris@687 231 Source="lib\_socket.pyd"/>
Chris@687 232 <File
Chris@687 233 Id="ssl"
Chris@687 234 Name="_ssl.pyd"
Chris@687 235 DiskId="1"
Chris@687 236 Source="lib\_ssl.pyd"/>
Chris@687 237 <File
Chris@687 238 Id="testcapi"
Chris@687 239 Name="_testcapi.pyd"
Chris@687 240 DiskId="1"
Chris@687 241 Source="lib\_testcapi.pyd"/>
Chris@687 242 <File
Chris@687 243 Id="bz"
Chris@687 244 Name="bz2.pyd"
Chris@687 245 DiskId="1"
Chris@687 246 Source="lib\bz2.pyd"/>
Chris@687 247 <File
Chris@687 248 Id="pywatchman"
Chris@687 249 Name="hgext.fsmonitor.pywatchman.bser.pyd"
Chris@687 250 DiskId="1"
Chris@687 251 Source="lib\hgext.fsmonitor.pywatchman.bser.pyd"/>
Chris@687 252 <File
Chris@687 253 Id="mercurialbase"
Chris@687 254 Name="mercurial.cext.base85.pyd"
Chris@687 255 DiskId="1"
Chris@687 256 Source="lib\mercurial.cext.base85.pyd"/>
Chris@687 257 <File
Chris@687 258 Id="mercurialbdiff"
Chris@687 259 Name="mercurial.cext.bdiff.pyd"
Chris@687 260 DiskId="1"
Chris@687 261 Source="lib\mercurial.cext.bdiff.pyd"/>
Chris@687 262 <File
Chris@687 263 Id="mercurialmpatch"
Chris@687 264 Name="mercurial.cext.mpatch.pyd"
Chris@687 265 DiskId="1"
Chris@687 266 Source="lib\mercurial.cext.mpatch.pyd"/>
Chris@687 267 <File
Chris@687 268 Id="mercurialosutil"
Chris@687 269 Name="mercurial.cext.osutil.pyd"
Chris@687 270 DiskId="1"
Chris@687 271 Source="lib\mercurial.cext.osutil.pyd"/>
Chris@687 272 <File
Chris@687 273 Id="mercurialparsers"
Chris@687 274 Name="mercurial.cext.parsers.pyd"
Chris@687 275 DiskId="1"
Chris@687 276 Source="lib\mercurial.cext.parsers.pyd"/>
Chris@687 277 <File
Chris@687 278 Id="mercurialzstd"
Chris@687 279 Name="mercurial.zstd.pyd"
Chris@687 280 DiskId="1"
Chris@687 281 Source="lib\mercurial.zstd.pyd"/>
Chris@687 282 <File
Chris@687 283 Id="pyexpat"
Chris@687 284 Name="pyexpat.pyd"
Chris@687 285 DiskId="1"
Chris@687 286 Source="lib\pyexpat.pyd"/>
Chris@687 287 <File
Chris@687 288 Id="select"
Chris@687 289 Name="select.pyd"
Chris@687 290 DiskId="1"
Chris@687 291 Source="lib\select.pyd"/>
Chris@687 292 <File
Chris@687 293 Id="unicodedata"
Chris@687 294 Name="unicodedata.pyd"
Chris@687 295 DiskId="1"
Chris@687 296 Source="lib\unicodedata.pyd"/>
Chris@687 297 </Component>
Chris@687 298 </Directory>
Chris@569 299
Chris@692 300 <Directory Id="PyQt" Name="PyQt5">
Chris@692 301 <Component
Chris@692 302 Id="pyqtlibs"
Chris@692 303 Guid="0fc219f4-1493-402c-b740-50539eeb7762">
Chris@692 304 <File
Chris@692 305 Id="pyqtinit"
Chris@692 306 Name="__init__.py"
Chris@692 307 DiskId="1"
Chris@692 308 Source="PyQt5\__init__.py"
Chris@692 309 KeyPath="yes" />
Chris@692 310 <File
Chris@692 311 Id="pyqtcore"
Chris@692 312 Name="QtCore.pyd"
Chris@692 313 DiskId="1"
Chris@692 314 Source="PyQt5\QtCore.pyd" />
Chris@692 315 <File
Chris@692 316 Id="pyqtgui"
Chris@692 317 Name="QtGui.pyd"
Chris@692 318 DiskId="1"
Chris@692 319 Source="PyQt5\QtGui.pyd" />
Chris@692 320 <File
Chris@692 321 Id="pyqtwidgets"
Chris@692 322 Name="QtWidgets.pyd"
Chris@692 323 DiskId="1"
Chris@692 324 Source="PyQt5\QtWidgets.pyd" />
Chris@692 325 <File
Chris@692 326 Id="sip"
Chris@692 327 Name="sip.pyd"
Chris@692 328 DiskId="1"
Chris@692 329 Source="PyQt5\sip.pyd" />
Chris@692 330 </Component>
Chris@692 331 </Directory>
Chris@569 332
Chris@569 333 <Component
Chris@569 334 Id="kdiff3"
Chris@569 335 Guid="6BA0CB20-F426-42AB-A95A-615A4FF87752">
Chris@569 336 <File
Chris@569 337 Id="kdiff3"
Chris@569 338 Name="kdiff3.exe"
Chris@569 339 DiskId="1"
Chris@687 340 Source="kdiff3.exe"
Chris@569 341 KeyPath="yes"/>
Chris@569 342 </Component>
Chris@569 343
Chris@657 344 <Directory Id="Crypto" Name="Crypto">
Chris@657 345 <Directory Id="Cipher" Name="Cipher">
Chris@657 346 <Component
Chris@657 347 Id="cryptocipher"
Chris@657 348 Guid="FB7C7C7E-FC62-4024-9E7E-47034B416286">
Chris@657 349 <File
Chris@657 350 Id="cipherinit"
Chris@657 351 Name="__init__.py"
Chris@657 352 DiskId="1"
Chris@687 353 Source="Crypto\Cipher\__init__.py" />
Chris@657 354 <File
Chris@657 355 Id="cipheraesd"
Chris@657 356 Name="_AES.pyd"
Chris@657 357 DiskId="1"
Chris@687 358 Source="Crypto\Cipher\_AES.pyd" />
Chris@657 359 <File
Chris@657 360 Id="cipheraes"
Chris@657 361 Name="AES.py"
Chris@657 362 DiskId="1"
Chris@687 363 Source="Crypto\Cipher\AES.py" />
Chris@657 364 <File
Chris@657 365 Id="cipherblockalgo"
Chris@657 366 Name="blockalgo.py"
Chris@657 367 DiskId="1"
Chris@687 368 Source="Crypto\Cipher\blockalgo.py" />
Chris@657 369 </Component>
Chris@657 370 </Directory>
Chris@657 371 <Directory Id="Util" Name="Util">
Chris@657 372 <Component
Chris@657 373 Id="cryptoutil"
Chris@657 374 Guid="9B5FB64F-B5B3-4E36-A4E6-1EC648470557">
Chris@657 375 <File
Chris@657 376 Id="utilinit"
Chris@657 377 Name="__init__.py"
Chris@657 378 DiskId="1"
Chris@687 379 Source="Crypto\Util\__init__.py" />
Chris@657 380 <File
Chris@657 381 Id="utilpy3compat"
Chris@657 382 Name="py3compat.py"
Chris@657 383 DiskId="1"
Chris@687 384 Source="Crypto\Util\py3compat.py" />
Chris@657 385 </Component>
Chris@657 386 </Directory>
Chris@657 387 <Component
Chris@657 388 Id="crypto"
Chris@657 389 Guid="AB5D6864-6D47-4C51-A132-5E0EC5BE1EF8">
Chris@657 390 <File
Chris@657 391 Id="cryptoinit"
Chris@657 392 Name="__init__.py"
Chris@657 393 DiskId="1"
Chris@687 394 Source="Crypto\__init__.py" />
Chris@657 395 </Component>
Chris@657 396
Chris@657 397 </Directory>
Chris@657 398
Chris@551 399 </Directory>
Chris@551 400 </Directory>
Chris@551 401
Chris@551 402 <Directory Id="ProgramMenuFolder" Name="Programs">
Chris@551 403 <Directory Id="ProgramMenuDir" Name="EasyMercurial">
Chris@551 404 <Component Id="ProgramMenuDir" Guid="2E8BDEA0-A6E4-4607-854D-E317A23A535B">
Chris@551 405 <RemoveFolder Id="ProgramMenuDir" On="uninstall"/>
chris@650 406 <RegistryValue Root="HKMU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes"/>
Chris@551 407 </Component>
Chris@551 408 </Directory>
Chris@551 409 </Directory>
Chris@551 410
Chris@551 411 <Directory Id="DesktopFolder" Name="Desktop"/>
Chris@551 412
Chris@551 413 </Directory>
Chris@551 414
Chris@551 415 <Feature Id="Complete" Level="1">
Chris@551 416 <ComponentRef Id="MainExecutable"/>
Chris@687 417 <ComponentRef Id="VCLIBS140"/>
Chris@687 418 <ComponentRef Id="VCLIBS90"/>
Chris@570 419 <ComponentRef Id="HelperScripts"/>
Chris@687 420 <ComponentRef Id="Qt5"/>
Chris@692 421 <ComponentRef Id="pyqtlibs"/>
Chris@687 422 <ComponentRef Id="hgexec"/>
Chris@687 423 <ComponentRef Id="hglibs"/>
Chris@657 424 <ComponentRef Id="crypto"/>
Chris@657 425 <ComponentRef Id="cryptocipher"/>
Chris@657 426 <ComponentRef Id="cryptoutil"/>
Chris@570 427 <ComponentRef Id="kdiff3"/>
Chris@551 428 <ComponentRef Id="ProgramMenuDir"/>
Chris@551 429 </Feature>
Chris@551 430
Chris@551 431 <Icon
chris@568 432 Id="easyhg.ico"
Chris@687 433 SourceFile="..\..\easyhg.ico"/>
Chris@551 434
Chris@690 435 <UI>
Chris@690 436 <UIRef Id="WixUI_InstallDir" />
Chris@690 437 <UIRef Id="WixUI_ErrorProgressText" />
Chris@690 438 </UI>
Chris@690 439
Chris@690 440 <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
Chris@690 441 <Property Id="WIXUI_DONTVALIDATEPATH" Value="1" />
Chris@690 442 <Property Id="ApplicationFolderName" Value="EasyMercurial" />
Chris@690 443 <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
Chris@690 444 <WixVariable Id="WixUILicenseRtf" Value="..\..\deploy\win32\License.rtf" />
Chris@690 445
Chris@690 446 <Property Id="ARPPRODUCTICON" Value="easyhg.ico" />
Chris@690 447
Chris@551 448 </Product>
Chris@551 449 </Wix>