win-pvdrivers

view installer.wxs @ 783:644e5ddb1b47

Handle SCSI INQUIRY command better in xenvbd
author James Harper <james.harper@bendigoit.com.au>
date Mon Feb 15 20:53:57 2010 +1100 (2010-02-15)
parents 2fd1373b5794
children d538e0141114
line source
1 <?xml version='1.0' encoding='windows-1252'?>
2 <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' xmlns:difx='http://schemas.microsoft.com/wix/DifxAppExtension' xmlns:iis='http://schemas.microsoft.com/wix/IIsExtension'>
3 <?if $(env._BUILDARCH) = x86 ?>
4 <?define ARCHDIR = i386 ?>
5 <?elseif $(env._BUILDARCH) = AMD64 ?>
6 <?define ARCHDIR = amd64 ?>
7 <?endif ?>
9 <Product Name='GPL PV Drivers for Windows' Id='*'
10 UpgradeCode='4EDE5DEC-3208-4a1e-8E52-DAC44F7D7062'
11 Language='1033' Codepage='1252' Version='$(env.GPLPV_VERSION)' Manufacturer='James Harper'>
13 <Package Id='*' Keywords='Installer' Description="GPL PV Drivers for Windows"
14 Comments='no comment' Manufacturer='James Harper'
15 InstallerVersion='100' Languages='1033' Compressed='yes' SummaryCodepage='1252' />
17 <WixVariable Id="WixUILicenseRtf" Value="license.rtf" />
19 <UI>
20 <UIRef Id="WixUI_Mondo" />
21 <UIRef Id="WixUI_ErrorProgressText" />
22 </UI>
24 <Media Id='1' Cabinet='gplpv.cab' EmbedCab='yes' />
26 <Binary Id='waitfordevices.vbs' SourceFile='waitnopendinginstallevents\waitfordevices.vbs'/>
27 <Binary Id='waitnopendinginstallevents.exe' SourceFile='waitnopendinginstallevents\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\waitnopendinginstallevents.exe'/>
28 <CustomAction Id='InstallShutdownMonService' FileKey='shutdownmon.exe' ExeCommand='-i' Execute='deferred' Return='check'/>
29 <CustomAction Id='UnInstallShutdownMonService' FileKey='shutdownmon.exe' ExeCommand='-u' Execute='deferred' Return='check' Impersonate='no'/>
30 <CustomAction Id='WaitForDevices' BinaryKey='waitfordevices.vbs' VBScriptCall='DoWaitForDevices' Execute='deferred' Return='check' Impersonate='no'/>
31 <CustomAction Id='WaitNoPendingInstallEvents' BinaryKey='waitnopendinginstallevents.exe' ExeCommand='300000' Execute='deferred' Return='check' Impersonate='no'/>
32 <CustomAction Id='CopyConfig' FileKey='copyconfig.exe' ExeCommand='' Execute='deferred' Return='check' Impersonate='no'/>
34 <Property Id="SYSTEMSTARTOPTIONS">
35 <RegistrySearch Id="SystemStartOptions"
36 Root="HKLM"
37 Key="SYSTEM\CurrentControlSet\Control"
38 Name="SystemStartOptions"
39 Type="raw" />
40 </Property>
42 <?if $(env._BUILDARCH) = AMD64 ?>
43 <Condition Message="Testsigning must be on for x64 when installing on Vista or newer.">
44 <![CDATA[(VersionNT < 600) OR (SYSTEMSTARTOPTIONS >< "TESTSIGNING")]]>
45 </Condition>
46 <?endif ?>
48 <Directory Id='TARGETDIR' Name='SourceDir'>
49 <Directory Id='ProgramFilesFolder' Name='PFiles'>
50 <Directory Id='XenProgramFilesDir' Name='Xen PV Drivers'>
51 <Directory Id='BinDir' Name='bin'>
52 <Component Id='ShutdownMon' Guid='BF8DC887-4B46-4e77-ACD3-125E8A2BAB8E'>
53 <File Id='shutdownmon.exe' Name='shutdownmon.exe' DiskId='1' Source='shutdownmon\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\shutdownmon.exe' />
54 </Component>
55 <Component Id='CopyConfig' Guid='C01F8A97-1410-41ce-A16E-76E6072FDFF8'>
56 <File Id='copyconfig.exe' Name='copyconfig.exe' DiskId='1' Source='copyconfig\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\copyconfig.exe' />
57 </Component>
58 </Directory>
59 <Directory Id='DocDir' Name='doc'>
60 <Component Id='Docs' Guid='C827FAD8-F459-42bf-9F77-921E04261B72'>
61 <File Id='Changelog.txt' Name='Changelog.txt' DiskId='1' Source='Changelog.txt' />
62 </Component>
63 </Directory>
64 <Directory Id='DriversDir' Name='drivers'>
65 <Directory Id='XenPciDir' Name='xenpci'>
66 <Component Id='XenPci' Guid='D6BB9B5F-61F9-4b6e-8FAD-289706F5EBEB'>
67 <File Id='xenpci.cat' Name='xenpci.cat' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenpci.cat' />
68 <File Id='xenpci.inf' Name='xenpci.inf' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenpci.inf' />
69 <File Id='xenpci.sys' Name='xenpci.sys' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenpci.sys' />
70 <File Id='$(env.WDFFILENAME)' Name='$(env.WDFFILENAME)' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\$(env.WDFFILENAME)' />
71 <difx:Driver Sequence='99' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
72 </Component>
73 </Directory>
74 <Directory Id='XenVbdDir' Name='xenvbd'>
75 <Component Id='XenVbd' Guid='1F05DC54-974C-40f6-BF41-0EFDB3EBD1DC'>
76 <File Id='xenvbd.cat' Name='xenvbd.cat' DiskId='1' Source='xenvbd\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenvbd.cat' />
77 <File Id='xenvbd.inf' Name='xenvbd.inf' DiskId='1' Source='xenvbd\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenvbd.inf' />
78 <File Id='xenvbd.sys' Name='xenvbd.sys' DiskId='1' Source='xenvbd\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenvbd.sys' />
79 <File Id='xencoinst.dll' Name='xencoinst.dll' DiskId='1' Source='coinst\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\coinst.dll' />
80 <difx:Driver Sequence='1' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes'/>
81 </Component>
82 </Directory>
83 <Directory Id='XenScsiDir' Name='xenscsi'>
84 <Component Id='XenScsi' Guid='47C9AB48-3A7D-42b2-AE2C-7F9235C8B7B4'>
85 <File Id='xenscsi.cat' Name='xenscsi.cat' DiskId='1' Source='xenscsi\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenscsi.cat' />
86 <File Id='xenscsi.inf' Name='xenscsi.inf' DiskId='1' Source='xenscsi\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenscsi.inf' />
87 <File Id='xenscsi.sys' Name='xenscsi.sys' DiskId='1' Source='xenscsi\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenscsi.sys' />
88 <difx:Driver Sequence='2' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
89 </Component>
90 </Directory>
91 <Directory Id='XenNetDir' Name='xennet'>
92 <Component Id='XenNet' Guid='F16B1EC7-35B1-42c2-9017-22DC23D80BE7'>
93 <File Id='xennet.cat' Name='xennet.cat' DiskId='1' Source='xennet\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xennet.cat' />
94 <File Id='xennet.inf' Name='xennet.inf' DiskId='1' Source='xennet\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xennet.inf' />
95 <File Id='xennet.sys' Name='xennet.sys' DiskId='1' Source='xennet\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xennet.sys' />
96 <difx:Driver Sequence='3' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
97 </Component>
98 </Directory>
99 <Directory Id='XenUsbDir' Name='xenusb'>
100 <Component Id='XenUsb' Guid='83746E68-DBCC-4feb-B521-09D5328D3BB0'>
101 <File Id='xenusb.cat' Name='xenusb.cat' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.cat' />
102 <File Id='xenusb.inf' Name='xenusb.inf' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.inf' />
103 <File Id='xenusb.sys' Name='xenusb.sys' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.sys' />
104 <!-- we deliberately use the file from xenpci so that wix can deduplicate it -->
105 <File Id='$(env.WDFFILENAME)_usb' Name='$(env.WDFFILENAME)' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\$(env.WDFFILENAME)' />
106 <difx:Driver Sequence='3' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
107 </Component>
108 </Directory>
109 </Directory>
110 </Directory>
111 <Component Id='Cert' Guid='11112EC8-8635-45fb-9AE8-C22310F1E82D'>
112 <File Id='gplpv.cer' Name='gplpv.cer' DiskId='1' Source='gplpv.cer' />
113 <iis:Certificate Id='gplpv.cer_root' Name='gplpv.cer' Request='no' BinaryKey='gplpv.cer' StoreLocation='localMachine' StoreName='root' Overwrite='no' />
114 <iis:Certificate Id='gplpv.cer_trustedPublisher' Name='gplpv.cer' Request='no' BinaryKey='gplpv.cer' StoreLocation='localMachine' StoreName='trustedPublisher' Overwrite='no' />
115 </Component>
116 </Directory>
117 </Directory>
119 <Binary Id='gplpv.cer' SourceFile='gplpv.cer' />
121 <Feature Id='Cert' Title='Install Certificate' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
122 <ComponentRef Id='Cert' />
123 </Feature>
124 <Feature Id='Docs' Title='Install Docs' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='disallow'>
125 <ComponentRef Id='Docs' />
126 </Feature>
127 <Feature Id='Drivers' Title='Drivers' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
128 <Feature Id='XenPci' Title='XenPci Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='disallow'>
129 <ComponentRef Id='XenPci' />
130 </Feature>
131 <Feature Id='XenVbd' Title='XenVbd Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
132 <ComponentRef Id='XenVbd' />
133 </Feature>
134 <Feature Id='XenScsi' Title='XenScsi Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
135 <ComponentRef Id='XenScsi' />
136 </Feature>
137 <Feature Id='XenNet' Title='XenNet Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
138 <ComponentRef Id='XenNet' />
139 </Feature>
140 <Feature Id='XenUsb' Title='XenUsb Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
141 <ComponentRef Id='XenUsb' />
142 </Feature>
143 </Feature>
144 <Feature Id='ShutdownMon' Title='Shutdown Monitor' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
145 <ComponentRef Id='ShutdownMon' />
146 </Feature>
147 <Feature Id='CopyConfig' Title='Copy Network Config' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
148 <ComponentRef Id='CopyConfig' />
149 </Feature>
151 <InstallExecuteSequence>
152 <ScheduleReboot After='InstallFinalize' />
153 <Custom Action='UnInstallShutdownMonService' Before='StopServices'>$ShutdownMon=2</Custom>
154 <Custom Action='InstallShutdownMonService' After='StartServices'>$ShutdownMon>2</Custom>
155 <Custom Action='WaitForDevices' After='MsiProcessDrivers'>1</Custom>
156 <Custom Action='WaitNoPendingInstallEvents' After='WaitForDevices'>1</Custom>
157 <Custom Action='CopyConfig' After='WaitNoPendingInstallEvents'>$CopyConfig>2</Custom>
158 </InstallExecuteSequence>
159 </Product>
160 </Wix>