Mercurial > hg
diff contrib/wix/mercurial.wxs @ 10502:1e022c88a0a5 stable
Add WiX installer scripts to contrib/wix
author | Steve Borho <steve@borho.org> |
---|---|
date | Thu, 18 Feb 2010 13:05:15 -0600 |
parents | |
children | 47838dee7d60 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/wix/mercurial.wxs Thu Feb 18 13:05:15 2010 -0600 @@ -0,0 +1,133 @@ +<?xml version='1.0' encoding='windows-1252'?> +<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> + + <!-- Copyright 2010 Steve Borho <steve@borho.org> + + This software may be used and distributed according to the terms of the + GNU General Public License version 2 or any later version. --> + + <?define ComponentMainExecutableGUID = D102B8FA-059B-4ACC-9FA3-8C78C3B58EEF ?> + <?define ProductUpgradeCode = A1CC6134-E945-4399-BE36-EB0017FDF7CF ?> + + <Product Name='Mercurial' Id='*' + UpgradeCode='$(var.ProductUpgradeCode)' + Language='1033' Codepage='1252' Version='$(var.Version)' Manufacturer='Matt Mackall and others.'> + + <Package Id='*' Keywords='Installer' Description="Mercurial distributed SCM (version $(var.Version))" + Comments='$(var.Comments)' Manufacturer='Matt Mackall and others.' + InstallerVersion='300' Languages='1033' Compressed='yes' SummaryCodepage='1252' /> + + <Media Id='1' Cabinet='mercurial.cab' EmbedCab='yes' DiskPrompt='CD-ROM #1' CompressionLevel='high' /> + <Property Id='DiskPrompt' Value="Mercurial $(var.Version) Installation [1]" /> + + <Condition Message='Mercurial requires Windows XP or higher'>VersionNT >= 501</Condition> + + <Property Id="INSTALLDIR"> + <ComponentSearch Id='SearchForMainExecutableComponent' Guid='$(var.ComponentMainExecutableGUID)' /> + </Property> + + <!--Property Id='ARPCOMMENTS'>any comments</Property--> + <Property Id='ARPCONTACT'>mercurial@selenic.com</Property> + <Property Id='ARPHELPLINK'>http://mercurial.selenic.com/wiki/</Property> + <Property Id='ARPURLINFOABOUT'>http://mercurial.selenic.com/about/</Property> + <Property Id='ARPURLUPDATEINFO'>http://mercurial.selenic.com/downloads/</Property> + <Property Id='ARPHELPTELEPHONE'>http://mercurial.selenic.com/wiki/Support</Property> + <Property Id='ARPPRODUCTICON'>hgIcon.ico</Property> + + <Property Id='INSTALLEDMERCURIALPRODUCTS' Secure='yes'></Property> + <Property Id='REINSTALLMODE'>amus</Property> + + <Directory Id='TARGETDIR' Name='SourceDir'> + <Directory Id='ProgramFilesFolder' Name='PFiles'> + <Directory Id='INSTALLDIR' Name='Mercurial'> + <Component Id='MainExecutable' Guid='$(var.ComponentMainExecutableGUID)'> + <File Id='hgEXE' Name='hg.exe' DiskId='1' Source='dist\hg.exe' KeyPath='yes' /> + <File Id='libraryZIP' Name='library.zip' DiskId='1' Source='dist\library.zip' /> + <File Id='pythonDLL' Name='python26.dll' DiskId='1' Source='dist\python26.dll' /> + <Environment Id="Environment" Name="PATH" Part="last" System="yes" + Permanent="no" Value="[INSTALLDIR]" Action="set" /> + </Component> + <Component Id='ReadMe' Guid='56A8E372-991D-4DCA-B91D-93D775974CF5'> + <File Id='ReadMe' Name='ReadMe.html' DiskId='1' Source='contrib\win32\ReadMe.html' KeyPath='yes'/> + </Component> + <Component Id='COPYING' Guid='B7801DBA-1C49-4BF4-91AD-33C65F5C7895'> + <File Id='COPYING' Name='COPYING.rtf' DiskId='1' Source='..\misc\COPYING.rtf' /> + </Component> + <Directory Id='HGRCD' Name='hgrc.d'> + <Component Id='mercurial.rc' Guid='1D5FAEEE-7E6E-43B1-9F7F-802714316B15'> + <File Id='mercurial.rc' Name='Mercurial.rc' DiskId='1' Source='contrib\win32\mercurial.ini' + ReadOnly='yes'/> + </Component> + <Component Id='mergetools.rc' Guid='E8A1DC29-FF40-4B5F-BD12-80B9F7BF0CCD'> + <File Id='mergetools.rc' Name='MergeTools.rc' DiskId='1' Source='contrib\mergetools.hgrc' + ReadOnly='yes'/> + </Component> + </Directory> + </Directory> + </Directory> + + <Directory Id="ProgramMenuFolder" Name="Programs"> + <Directory Id="ProgramMenuDir" Name="Mercurial $(var.Version)"> + <Component Id="ProgramMenuDir" Guid="D5A63320-1238-489B-B68B-CF053E9577CA"> + <RemoveFolder Id='ProgramMenuDir' On='uninstall' /> + <RegistryValue Root='HKCU' Key='Software\Mercurial\InstallDir' Type='string' + Value='[INSTALLDIR]' KeyPath='yes' /> + <Shortcut Id='UrlShortcut' Directory='ProgramMenuDir' Name='Mercurial Web Site' Target='[ARPHELPLINK]' + Icon="hgIcon.ico" IconIndex='0' /> + </Component> + </Directory> + </Directory> + + <Directory Id="DesktopFolder" Name="Desktop" /> + <Merge Id='VCRuntime' DiskId='1' Language='1033' + SourceFile='C:\Program Files\Microsoft SDKs\Windows\v7.0\Redist\VC\microsoft.vcxx.crt.x86_msm.msm' /> + <Merge Id='VCRuntimePolicy' DiskId='1' Language='1033' + SourceFile='C:\Program Files\Microsoft SDKs\Windows\v7.0\Redist\VC\policy.x.xx.microsoft.vcxx.crt.x86_msm.msm' /> + </Directory> + + <Feature Id='Complete' Title='Mercurial $(var.Version)' Description='The complete package' + Display='expand' Level='1' ConfigurableDirectory='INSTALLDIR' > + <Feature Id='MainProgram' Title='Program' Description='Mercurial command line app' + Level='1' Absent='disallow' > + <ComponentRef Id='MainExecutable' /> + <ComponentRef Id='ProgramMenuDir' /> + <ComponentRef Id='ReadMe' /> + <ComponentRef Id='COPYING' /> + <ComponentRef Id='mercurial.rc' /> + <ComponentRef Id='mergetools.rc' /> + <ComponentGroupRef Id='helpFolder' /> + <ComponentGroupRef Id='templatesFolder' /> + <MergeRef Id='VCRuntime' /> + <MergeRef Id='VCRuntimePolicy' /> + </Feature> + <Feature Id='Locales' Title='Translations' Description='Translations' Level='1'> + <ComponentGroupRef Id='localeFolder' /> + <ComponentGroupRef Id='i18nFolder' /> + </Feature> + <Feature Id='Documentation' Title='Documentation' Description='HTML man pages' Level='1'> + <ComponentGroupRef Id='docFolder' /> + </Feature> + <Feature Id='Misc' Title='Miscellaneous' Description='Contributed scripts' Level='1'> + <ComponentGroupRef Id='contribFolder' /> + </Feature> + </Feature> + + <UIRef Id="WixUI_FeatureTree" /> + <UIRef Id="WixUI_ErrorProgressText" /> + + <WixVariable Id="WixUILicenseRtf" Value="..\misc\COPYING.rtf" /> + + <Icon Id="hgIcon.ico" SourceFile="contrib/win32/mercurial.ico" /> + + <Upgrade Id='$(var.ProductUpgradeCode)'> + <UpgradeVersion + IncludeMinimum='yes' Minimum='0.0.0' IncludeMaximum='no' OnlyDetect='no' + Property='INSTALLEDMERCURIALPRODUCTS' /> + </Upgrade> + + <InstallExecuteSequence> + <RemoveExistingProducts After='InstallInitialize'/> + </InstallExecuteSequence> + + </Product> +</Wix>