windows-nsis-vs2008-runtime-20080715
[openafs.git] / src / WINNT / install / NSIS / vcruntime.wxs
1 <?xml version="1.0" ?>
2 <Wix xmlns='http://schemas.microsoft.com/wix/2003/01/wi'>
3
4   <!--
5
6       External defines:
7
8       Platform : Must be set to Intel, x64 or Intel64 to indicate the target architecture.
9       VCVer : 14 or 15.  Corresponds to the version of the VC compiler.
10       Config : Retail or Debug.
11
12       -->
13
14   <?ifndef Config?>
15     <?define Config=Debug?>
16   <?endif?>
17
18   <?ifndef VCVer?>
19     <?define VCVer=14?>
20   <?endif?>
21
22   <?if $(var.VCVer) = "1400"?>
23     <?define VString=8.0?>
24     <?define VCU=8_0?>
25     <?define VCV=VC80?>
26   <?elseif $(var.VCVer) = "1500"?>
27     <?define VString=9.0?>
28     <?define VCU=9_0?>
29     <?define VCV=VC90?>
30   <?else?>
31     <?error Unknown VCVer value?>
32   <?endif?>
33
34     <Product
35        Id="????????-????-????-????-????????????"
36        Codepage="1252"
37        Language="1033"
38        Manufacturer="Microsoft Corporation"
39        Name="Visual Studio $(var.VString) $(var.Config) ($(var.Platform)) Runtime"
40        UpgradeCode="1184DE9F-813A-4DB3-8533-BB7D4E51D695"
41        Version="0.1.0.0"
42        >
43       <Package
44          Id="????????-????-????-????-????????????"
45          AdminImage="no"
46          Comments="Copyright (C) Microsoft Corporation, All rights reserved."
47          Compressed="yes"
48          Description="Visual C++ $(var.VString) $(var.Config) ($(var.Platform)) WinSXS MSM"
49          InstallerVersion="300"
50          Keywords="Installer,VC,$(var.Config),Runtime"
51          Manufacturer="Microsoft Corporation"
52          Platforms="$(var.Platform)"
53          ShortNames="no"
54          SummaryCodepage="1252"
55          />
56
57       <Directory Id="TARGETDIR" Name="SourceDir">
58         <?ifdef env.CommonProgramFiles6432?>
59           <?define CPF="$(env.CommonProgramFiles(x86)"?>
60         <?else?>
61           <?define CPF="$(env.CommonProgramFiles)"?>
62         <?endif?>
63
64         <?if $(var.Platform) = "x64" ?>
65           <?if $(var.Config) = "Retail" ?>
66             <Merge Id="MSVCRTMEM" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_CRT_x86_x64.msm"/>
67             <Merge Id="MSVCRTPOL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_CRT_x86_x64.msm"/>
68             <Merge Id="MSVCRTMFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFC_x86_x64.msm"/>
69             <Merge Id="MSVCRTPFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFC_x86_x64.msm"/>
70             <Merge Id="MSVCRTMFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFCLOC_x86_x64.msm"/>
71             <Merge Id="MSVCRTPFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFCLOC_x86_x64.msm"/>
72           <?else?>
73             <Merge Id="MSVCRTMEM" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_DebugCRT_x86_x64.msm"/>
74             <Merge Id="MSVCRTPOL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_DebugCRT_x86_x64.msm"/>
75             <Merge Id="MSVCRTMFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_DebugMFC_x86_x64.msm"/>
76             <Merge Id="MSVCRTPFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_DebugMFC_x86_x64.msm"/>
77             <Merge Id="MSVCRTMFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFCLOC_x86_x64.msm"/>
78             <Merge Id="MSVCRTPFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFCLOC_x86_x64.msm"/>
79           <?endif?>
80         <?else?>
81           <?if $(var.Config) = "Retail" ?>
82             <Merge Id="MSVCRTMEM" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_CRT_x86.msm"/>
83             <Merge Id="MSVCRTPOL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_CRT_x86.msm"/>
84             <Merge Id="MSVCRTMFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFC_x86.msm"/>
85             <Merge Id="MSVCRTPFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFC_x86.msm"/>
86             <Merge Id="MSVCRTMFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFCLOC_x86.msm"/>
87             <Merge Id="MSVCRTPFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFCLOC_x86.msm"/>
88           <?else?>
89             <Merge Id="MSVCRTMEM" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_DebugCRT_x86.msm"/>
90             <Merge Id="MSVCRTPOL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_DebugCRT_x86.msm"/>
91             <Merge Id="MSVCRTMFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_DebugMFC_x86.msm"/>
92             <Merge Id="MSVCRTPFC" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_DebugMFC_x86.msm"/>
93             <Merge Id="MSVCRTMFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\Microsoft_$(var.VCV)_MFCLOC_x86.msm"/>
94             <Merge Id="MSVCRTPFL" DiskId="1" Language="0" src="$(var.CPF)\Merge Modules\policy_$(var.VCU)_Microsoft_$(var.VCV)_MFCLOC_x86.msm"/>
95           <?endif?>
96         <?endif?>
97       </Directory>
98
99       <Feature Id="FeatureAll" AllowAdvertise="no" Absent="disallow"
100                Description="Install VC ++ $(var.VString) Runtime" Display="expand" InstallDefault="local" Level="3"
101                Title="All">
102         <MergeRef Id="MSVCRTMEM"/>
103         <MergeRef Id="MSVCRTPOL"/>
104         <MergeRef Id="MSVCRTMFC"/>
105         <MergeRef Id="MSVCRTPFC"/>
106         <MergeRef Id="MSVCRTMFL"/>
107         <MergeRef Id="MSVCRTPFL"/>
108       </Feature>  
109
110       <Media Id="1" Cabinet="disk1.cab" CompressionLevel="high" EmbedCab="yes" />
111
112       <Property Id="INSTALLLEVEL" Value="3" />
113
114     </Product>
115 </Wix>