1<?xml version='1.0' encoding='windows-1252'?> 2<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> 3 4 <?if $(var.Platform)=x64 ?> 5 6 <?define Win64=yes ?> 7 <?define PIProgramFilesFolder=ProgramFiles64Folder ?> 8 9 <?define ToolsBinDir=dirBin64 ?> 10 <?define GuidKinit=BAA5BD92-163E-4AA5-8C99-EA2100F3D9DE ?> 11 <?define GuidKdestroy=289C2C0D-F41D-4E46-9819-6B9B63F83418 ?> 12 <?define GuidKtutil=28B09087-4731-41F4-B734-C71E84EC31FC ?> 13 <?define GuidKdigest=D13DA4C0-B1BB-4C02-8ED2-5DFC7D16B19D ?> 14 <?define GuidKpasswd=20A984EC-5BCB-4B93-A3A9-7AACBDC625E9 ?> 15 <?define GuidKvno=2B932C2B-9167-4051-BDF7-A104E9983CE6 ?> 16 <?define GuidKcpytkt=17734691-7CB3-4E9A-AADC-6D4205795F43 ?> 17 <?define GuidKdeltkt=3E853905-8CDA-4E14-8EBA-C0C4EEDB811A ?> 18 <?define GuidHeimtools=F411A9F1-A186-40CB-B55B-CADBE0166268 ?> 19 <?define GuidKadmin=E628E9AA-43AB-47EE-8A01-815C027555F2 ?> 20 21 <?define ConfigDir=INSTALLDIR64 ?> 22 23 <?else?> 24 25 <?define Win64=no ?> 26 <?define PIProgramFilesFolder=ProgramFilesFolder ?> 27 28 <?define ToolsBinDir=dirBin32 ?> 29 <?define GuidKinit=038F19D7-F7C9-4B6A-8359-321CD1FAD347 ?> 30 <?define GuidKdestroy=07D96FBC-2251-4EBC-AA68-12C6C52F44E6 ?> 31 <?define GuidKtutil=CE082458-E2C5-4744-A423-88C23AD3C81C ?> 32 <?define GuidKdigest=3FFBFAB0-FB37-411C-AF4E-53BCC468D7D1 ?> 33 <?define GuidKpasswd=B66C04B5-EE1D-48C3-A25B-4DCAAA8F459B ?> 34 <?define GuidKvno=4C6015BE-1347-4D12-8841-FF90E0B9D6A8 ?> 35 <?define GuidKcpytkt=CBCDFC80-601B-4F26-A020-7D1278735B95 ?> 36 <?define GuidKdeltkt=6450EE72-E472-4709-B457-B579BFB2472B ?> 37 <?define GuidHeimtools=11800964-4A5F-466E-B2FE-DD2EFC54DDB9 ?> 38 <?define GuidKadmin=B31F9FFC-D588-4A3E-9AEA-C9E9137B08F0 ?> 39 40 <?define ConfigDir=INSTALLDIR32 ?> 41 42 <?endif?> 43 44 <Product Name='!(loc.ProductName) $(var.Version)' 45 Id='*' UpgradeCode='81E64C32-1D09-4E3D-9EA2-EECD9C4D16CE' 46 Language='!(loc.LanguageCode)' Codepage='1252' Version='$(var.Version)' 47 Manufacturer='!(loc.Manufacturer)'> 48 49 <Package Id='*' Description='!(loc.Description)' 50 Manufacturer='!(loc.Manufacturer)' 51 InstallerVersion='300' Languages='!(loc.LanguageCode)' 52 Compressed='yes' SummaryCodepage='1252' 53 Platform='$(var.Platform)' 54 InstallScope='perMachine' 55 InstallPrivileges='elevated' 56 Keywords='Heimdal,Kerberos,GSS' /> 57 58 <Directory Id='TARGETDIR' Name='SourceDir' DiskId='1'> 59 60 <?ifdef Target32 ?> 61 <Directory Id='ProgramFilesFolder'> 62 <Directory Id='INSTALLDIR32' Name='Heimdal'> 63 <Directory Id='dirBin32' Name='bin'> 64 </Directory> 65 </Directory> 66 </Directory> 67 <?endif?> 68 69 <?ifdef Target64?> 70 <Directory Id='ProgramFiles64Folder'> 71 <Directory Id='INSTALLDIR64' Name='Heimdal'> 72 <Directory Id='dirBin64' Name='bin'> 73 </Directory> 74 </Directory> 75 </Directory> 76 <?endif?> 77 78 </Directory> 79 80 <?ifdef Target32?> 81 <DirectoryRef Id='dirBin32' DiskId='1'> 82 <Component Id='comp.SearchPath.32' Feature='feature.Main' 83 Guid='BA6C1A53-E479-4E87-9B61-7BA793DBAE56' Win64='no'> 84 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 85 Key='Software\Heimdal\CurrentVersion'> 86 <RegistryValue Name='InstallPath' Type='string' 87 Value='[dirBin32]' KeyPath='yes' /> 88 </RegistryKey> 89 <Environment Id='env.Path.32' Name='PATH' Action='set' Part='last' 90 Separator=';' Value='[dirBin32]' System='yes' /> 91 </Component> 92 93 <Merge Id='Heimdal.Assemblies.32' Language='0' 94 SourceFile='$(var.InstDir32)\Heimdal.msm' /> 95 96 <Merge Id='Heimdal.GSS.32' Language='0' 97 SourceFile='$(var.InstDir32)\Heimdal.GSS.msm' /> 98 99 <Merge Id='Heimdal.Policy.32' Language='0' 100 SourceFile='$(var.InstDir32)\Heimdal.Policy.msm' /> 101 102 <?if "$(var.RuntimeModule32)" != "" ?> 103 <Merge Id='Runtime.32' Language='0' 104 SourceFile='$(var.RuntimeModule32)' /> 105 <?endif?> 106 </DirectoryRef> 107 <?endif?> 108 109 <?ifdef Target64?> 110 <DirectoryRef Id='dirBin64' DiskId='1'> 111 <Component Id='comp.SearchPath.64' Feature='feature.Main' 112 Guid='2F189729-2253-47A1-AA68-06FE3A9697A7' Win64='yes'> 113 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 114 Key='Software\Heimdal\CurrentVersion'> 115 <RegistryValue Name='InstallPath' Type='string' 116 Value='[dirBin64]' KeyPath='yes' /> 117 </RegistryKey> 118 <Environment Id='env.Path' Name='PATH' Action='set' Part='last' 119 Separator=';' Value='[dirBin64]' System='yes' /> 120 </Component> 121 122 <Merge Id='Heimdal.Assemblies.64' Language='0' 123 SourceFile='$(var.InstDir64)\Heimdal.msm' /> 124 125 <Merge Id='Heimdal.GSS.64' Language='0' 126 SourceFile='$(var.InstDir64)\Heimdal.GSS.msm' /> 127 128 <Merge Id='Heimdal.Policy.64' Language='0' 129 SourceFile='$(var.InstDir64)\Heimdal.Policy.msm' /> 130 131 <?if "$(var.RuntimeModule64)" != "" ?> 132 <Merge Id='Runtime.64' Language='0' 133 SourceFile='$(var.RuntimeModule64)' /> 134 <?endif?> 135 </DirectoryRef> 136 <?endif?> 137 138 <DirectoryRef Id='$(var.ToolsBinDir)' FileSource='$(var.BinDir)'> 139 140 <Component Id='comp.kinit' 141 Guid='$(var.GuidKinit)' 142 Win64='$(var.Win64)'> 143 <File Name='kinit.exe' KeyPath='yes' /> 144 <File Name='kinit.pdb' /> 145 </Component> 146 147 <Component Id='comp.ktutil' 148 Guid='$(var.GuidKtutil)' 149 Win64='$(var.Win64)'> 150 <File Name='ktutil.exe' KeyPath='yes' /> 151 <File Name='ktutil.pdb' /> 152 </Component> 153 154 <Component Id='comp.kdestroy' 155 Guid='$(var.GuidKdestroy)' 156 Win64='$(var.Win64)'> 157 <File Name='kdestroy.exe' KeyPath='yes' /> 158 <File Name='kdestroy.pdb' /> 159 </Component> 160 161 <Component Id='comp.kdigest' 162 Guid='$(var.GuidKdigest)' 163 Win64='$(var.Win64)'> 164 <File Name='kdigest.exe' KeyPath='yes' /> 165 <File Name='kdigest.pdb' /> 166 </Component> 167 168 <Component Id='comp.kpasswd' 169 Guid='$(var.GuidKpasswd)' 170 Win64='$(var.Win64)'> 171 <File Name='kpasswd.exe' KeyPath='yes' /> 172 <File Name='kpasswd.pdb' /> 173 </Component> 174 175 <Component Id='comp.kvno' 176 Guid='$(var.GuidKvno)' 177 Win64='$(var.Win64)'> 178 <File Name='kvno.exe' KeyPath='yes' /> 179 <File Name='kvno.pdb' /> 180 </Component> 181 182 <Component Id='comp.kcpytkt' 183 Guid='$(var.GuidKcpytkt)' 184 Win64='$(var.Win64)'> 185 <File Name='kcpytkt.exe' KeyPath='yes' /> 186 <File Name='kcpytkt.pdb' /> 187 </Component> 188 189 <Component Id='comp.kdeltkt' 190 Guid='$(var.GuidKdeltkt)' 191 Win64='$(var.Win64)'> 192 <File Name='kdeltkt.exe' KeyPath='yes' /> 193 <File Name='kdeltkt.pdb' /> 194 </Component> 195 196 <Component Id='comp.heimtools' 197 Guid='$(var.GuidHeimtools)' 198 Win64='$(var.Win64)'> 199 <File Name='heimtools.exe' KeyPath='yes'> 200 <CopyFile Id='klist.exe' DestinationName='klist.exe' DestinationProperty='$(var.ToolsBinDir)' /> 201 <CopyFile Id='kswitch.exe' DestinationName='kswitch.exe' DestinationProperty='$(var.ToolsBinDir)' /> 202 </File> 203 <File Name='heimtools.pdb'> 204 <CopyFile Id='klist.pdb' DestinationName='klist.pdb' /> 205 <CopyFile Id='kswitch.pdb' DestinationName='kswitch.pdb' /> 206 </File> 207 </Component> 208 209 <Component Id='comp.kadmin' 210 Guid='$(var.GuidKadmin)' 211 Win64='$(var.Win64)'> 212 <File Name='kadmin.exe' KeyPath='yes' /> 213 <File Name='kadmin.pdb' /> 214 </Component> 215 216 <Component Id='comp.Heimdal.chm' 217 Guid='785F6668-EBDB-4F18-8BEF-F72ECECB43D6'> 218 <File Source='$(var.DocDir)\heimdal.chm' /> 219 </Component> 220 221 <Component Id='comp.HX509.chm' 222 Guid='CBB379D6-629D-4EB9-AC0D-0167651F14EF'> 223 <File Source='$(var.DocDir)\hx509.chm' /> 224 </Component> 225 226 </DirectoryRef> 227 228 <DirectoryRef Id='TARGETDIR'> 229 <Directory Id='CommonAppDataFolder' Name='ProgramData'> 230 <Directory Id='dirCommonKerberos' Name='Kerberos' FileSource='$(var.SrcDir)'> 231 232 <Component Id='comp.krb5.conf' 233 Guid='ED28951F-7B17-4DF5-91D7-4DC11C810E66' 234 Permanent='yes' NeverOverwrite='yes'> 235 <File Name='krb5.conf' KeyPath='yes' Id='krb5_conf' /> 236 <Environment Id='KRB5_CONFIG_by_krb5.conf' Name='KRB5_CONFIG' Action='set' System='yes' Value='[#krb5_conf]' /> 237 <!-- Backwards compatibility --> 238 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 239 Key='Software\MIT\Kerberos'> 240 <RegistryValue Name='config' Type='string' Value='[#krb_conf]' /> 241 </RegistryKey> 242 <Condition>Not LEGACYKRB5INI And Not LEGACYKRB5CONF And Not LEGACYKRB5REG32 And Not LEGACYKRB5REG64</Condition> 243 </Component> 244 245 <Component Id='comp.krb5.ini.move' 246 Guid='316CB754-4332-4C02-95C1-4AC82590712D'> 247 <CopyFile Id='copy_krb5.ini' Delete='yes' 248 DestinationDirectory='dirCommonKerberos' 249 DestinationName='krb5.conf' DestinationShortName='krb5.cnf' 250 SourceProperty='LEGACYKRB5INI' /> 251 <Environment Id='KRB5_CONFIG_by_legacy_krb5.ini' Name='KRB5_CONFIG' 252 Action='set' System='yes' Value='[dirCommonKerberos]krb5.conf' /> 253 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 254 Key='Software\Heimdal\CurrentVersion'> 255 <RegistryValue Name='LegacyKrb5IniLocation' Type='string' 256 Value='[LEGACYKRB5INI]' KeyPath='yes' /> 257 </RegistryKey> 258 <!-- Backwards compatibility --> 259 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 260 Key='Software\MIT\Kerberos'> 261 <RegistryValue Name='config' Type='string' 262 Value='[dirCommonKerberos]krb5.conf' /> 263 </RegistryKey> 264 <Condition>LEGACYKRB5INI</Condition> 265 </Component> 266 267 <Component Id='comp.krb5.conf.move' 268 Guid='ADCE6801-0FD3-46E7-955A-FC9214CFE0AB'> 269 <CopyFile Id='copy_krb5.conf' Delete='yes' 270 DestinationDirectory='dirCommonKerberos' 271 DestinationName='krb5.conf' DestinationShortName='krb5.cnf' 272 SourceProperty='LEGACYKRB5CONF' /> 273 <Environment Id='KRB5_CONFIG_by_legacy_krb5.conf' Name='KRB5_CONFIG' 274 Action='set' System='yes' Value='[dirCommonKerberos]krb5.conf' /> 275 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 276 Key='Software\Heimdal\CurrentVersion'> 277 <RegistryValue Name='LegacyKrb5ConfLocation' Type='string' 278 Value='[LEGACYKRB5CONF]' KeyPath='yes' /> 279 </RegistryKey> 280 <!-- Backwards compatibility --> 281 <RegistryKey ForceDeleteOnUninstall='yes' Root='HKLM' 282 Key='Software\MIT\Kerberos'> 283 <RegistryValue Name='config' Type='string' 284 Value='[dirCommonKerberos]krb5.conf' /> 285 </RegistryKey> 286 <Condition>LEGACYKRB5CONF</Condition> 287 </Component> 288 289 </Directory> 290 </Directory> 291 <Directory Id='WindowsFolder'> 292 </Directory> 293 </DirectoryRef> 294 295 <Media Id='1' Cabinet='Disk1' CompressionLevel='high' EmbedCab='yes' /> 296 297 <Upgrade Id='81E64C32-1D09-4E3D-9EA2-EECD9C4D16CE'> 298 <UpgradeVersion IncludeMaximum='no' MigrateFeatures='yes' Maximum='$(var.Version)' 299 Property='PREVIOUSINSTALLATION' /> 300 <UpgradeVersion Minimum='$(var.Version)' IncludeMinimum='yes' 301 Maximum='127.127.32767.32767' 302 OnlyDetect='yes' Property='EXISTINGINSTALLATION' /> 303 </Upgrade> 304 305 <!-- Search for existing configuration files --> 306 307 <Property Id='LEGACYKRB5INI' Secure='yes'> 308 <DirectorySearch Id='dirSearchKrb5Ini' Depth='1' Path='[WindowsFolder]'> 309 <FileSearch Name='krb5.ini' /> 310 </DirectorySearch> 311 </Property> 312 313 <Property Id='LEGACYKRB5CONF' Secure='yes'> 314 <DirectorySearch Id='dirSearchKrb5Conf' Depth='1' Path='[WindowsFolder]'> 315 <FileSearch Name='krb5.conf' /> 316 </DirectorySearch> 317 </Property> 318 319 <Property Id='LEGACYKRB5REG32' Secure='yes'> 320 <RegistrySearch Id='regSearchKrb5ConfUser' Key='Software\MIT\Kerberos' Name='config' 321 Root='HKLM' Type='file' Win64='no'> 322 <FileSearch Name='krb5.ini' /> 323 </RegistrySearch> 324 </Property> 325 326 <?if $(var.Platform)=x64 ?> 327 <Property Id='LEGACYKRB5REG64' Secure='yes'> 328 <RegistrySearch Id='regSearchKrb5ConfMach' Key='Software\MIT\Kerberos' Name='config' 329 Root='HKLM' Type='file' Win64='yes'> 330 <FileSearch Name='krb5.ini' /> 331 </RegistrySearch> 332 </Property> 333 <?endif?> 334 335 <InstallExecuteSequence> 336 <RemoveExistingProducts After='InstallFinalize' /> 337 </InstallExecuteSequence> 338 339 <Condition Message='!(loc.AdminRequired)'>Installed OR Privileged</Condition> 340 <Condition Message='!(loc.AlreadyInstalled)'>Installed OR NOT EXISTINGINSTALLATION</Condition> 341 342 <Feature Id='feature.Main' ConfigurableDirectory='$(var.ConfigDir)' 343 Title='!(loc.FeaMainTitle)' 344 Description='!(loc.FeaMainDesc)' Display='expand' 345 Level='1' TypicalDefault='install' InstallDefault='local'> 346 347 <ComponentRef Id='comp.HX509.chm' /> 348 <ComponentRef Id='comp.Heimdal.chm' /> 349 <ComponentRef Id='comp.kcpytkt' /> 350 <ComponentRef Id='comp.kdeltkt' /> 351 <ComponentRef Id='comp.kdestroy' /> 352 <ComponentRef Id='comp.kdigest' /> 353 <ComponentRef Id='comp.kinit' /> 354 <ComponentRef Id='comp.kpasswd' /> 355 <ComponentRef Id='comp.krb5.conf' /> 356 <ComponentRef Id='comp.krb5.conf.move' /> 357 <ComponentRef Id='comp.krb5.ini.move' /> 358 <ComponentRef Id='comp.ktutil' /> 359 <ComponentRef Id='comp.kvno' /> 360 <ComponentRef Id='comp.heimtools' /> 361 <ComponentRef Id='comp.kadmin' /> 362 363 <?ifdef MKShim ?> 364 <?ifdef Target64?> 365 <ComponentGroupRef Id='comp.Heimdal.MKShim.64' /> 366 <?else?> 367 <ComponentGroupRef Id='comp.Heimdal.MKShim.32' /> 368 <?endif?> 369 <?endif?> 370 371 <?ifdef Target64?> 372 <MergeRef Id='Heimdal.Assemblies.64' /> 373 <MergeRef Id='Heimdal.GSS.64' /> 374 <MergeRef Id='Heimdal.Policy.64' /> 375 <?if "$(var.RuntimeModule64)" != "" ?><MergeRef Id='Runtime.64' /><?endif?> 376 <?else?> 377 <MergeRef Id='Heimdal.Assemblies.32' /> 378 <MergeRef Id='Heimdal.GSS.32' /> 379 <MergeRef Id='Heimdal.Policy.32' /> 380 <?if "$(var.RuntimeModule32)" != "" ?><MergeRef Id='Runtime.32' /><?endif?> 381 <?endif?> 382 383 <?ifdef Target32?> 384 <?ifdef Target64?> 385 <!-- If we are building the combined installer, the 32-bit 386 libraries go into a separate feature. --> 387 <Feature Id='feature.32BitLibraries' 388 ConfigurableDirectory='INSTALLDIR32' 389 Title='!(loc.Fea32BitTitle)' 390 Description='!(loc.Fea32BitDesc)' 391 Level='1' TypicalDefault='install' InstallDefault='local'> 392 <?ifdef MKShim ?> 393 <ComponentGroupRef Id='comp.Heimdal.MKShim.32' /> 394 <?endif?> 395 <MergeRef Id='Heimdal.Assemblies.32' /> 396 <MergeRef Id='Heimdal.GSS.32' /> 397 <MergeRef Id='Heimdal.Policy.32' /> 398 <?if "$(var.RuntimeModule32)" != "" ?><MergeRef Id='Runtime.32' /><?endif?> 399 </Feature> 400 <?endif?> 401 <?endif?> 402 403 </Feature> 404 405 <!-- Properties for Add/Remove Programs --> 406 407 <Property Id='ARPHELPLINK' Value='http://www.h5l.org' /> 408 409 <Property Id='ARPCONTACT' Value='heimdal@h5l.org' /> 410 411 <Property Id='ARPURLINFOABOUT' Value='http://www.h5l.org' /> 412 413 <!-- Other properties --> 414 415 <UIRef Id='WixUI_FeatureTree' /> 416 417 <WixVariable Id="WixUIBannerBmp" Value="images\Heimdal_banner.bmp" /> 418 <WixVariable Id="WixUIDialogBmp" Value="images\Heimdal_dialog.bmp" /> 419 420 </Product> 421</Wix> 422