Fix bug #594526.
[mono.git] / mcs / tools / xbuild / xbuild / Microsoft.VisualBasic.targets
1 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2         <UsingTask TaskName="Microsoft.Build.Tasks.CreateVisualBasicManifestResourceName" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
3         <PropertyGroup>
4                 <DefaultLanguageSourceExtension>.vb</DefaultLanguageSourceExtension>
5                 <Language>VB</Language>
6         </PropertyGroup>
7
8         <PropertyGroup>
9                 <CreateManifestResourceNamesDependsOn></CreateManifestResourceNamesDependsOn>
10         </PropertyGroup>
11
12         <PropertyGroup>
13                 <FinalDefineConstants>CONFIG=&quot;$(Configuration)&quot;</FinalDefineConstants>
14                 <FinalDefineConstants Condition=" '$(DefineDebug)' == 'true' ">$(FinalDefineConstants),DEBUG=-1</FinalDefineConstants>
15                 <FinalDefineConstants Condition=" '$(DefineTrace)' == 'true' ">$(FinalDefineConstants),TRACE=-1</FinalDefineConstants>
16                 <FinalDefineConstants Condition=" '$(MyType)' != '' ">$(FinalDefineConstants),_MyType=&quot;$(MyType)&quot;</FinalDefineConstants>
17                 <FinalDefineConstants Condition=" '$(Platform)' != '' ">$(FinalDefineConstants),PLATFORM=&quot;$(Platform)&quot;</FinalDefineConstants>
18                 <FinalDefineConstants Condition=" '$(Platform)' == '' ">$(FinalDefineConstants),PLATFORM=&quot;AnyCPU&quot;</FinalDefineConstants>
19                 <FinalDefineConstants Condition=" '$(DefineConstants)' != '' ">$(FinalDefineConstants),$(DefineConstants)</FinalDefineConstants>
20
21                 <_NoWarnings Condition=" '$(WarningLevel)' == '0' ">true</_NoWarnings>
22                 <_NoWarnings Condition=" '$(WarningLevel)' == '1' ">false</_NoWarnings>
23
24                 <DebugSymbols Condition=" '$(DebugType)' == 'none' ">false</DebugSymbols>
25                 <DebugType    Condition=" '$(DebugType)' == 'none' "></DebugType>
26         </PropertyGroup>
27
28         <ItemGroup>
29                 <DocFileItem Include="$(DocumentationFile)"  Condition="'$(DocumentationFile)'!=''"/>
30         </ItemGroup>
31
32         <Target
33                 Name="CoreCompile"
34                 Inputs="@(Compile)"
35                 Outputs="@(IntermediateAssembly)"
36         >
37                 <Vbc
38                         AdditionalLibPaths="$(AdditionalLibPaths)"
39                         AddModules="@(AddModules)"
40                         BaseAddress="$(BaseAddress)"
41                         CodePage="$(CodePage)"
42                         DebugType="$(DebugType)"
43                         DefineConstants="$(FinalDefineConstants)"
44                         DelaySign="$(DelaySign)"
45                         DisabledWarnings="$(NoWarn)"
46                         DocumentationFile="@(DocFileItem)"
47                         EmitDebugInformation="$(DebugSymbols)"
48                         ErrorReport="$(ErrorReport)"
49                         FileAlignment="$(FileAlignment)"
50                         GenerateDocumentation="$(GenerateDocumentation)"
51                         Imports="@(Import)"
52                         KeyContainer="$(KeyContainerName)"
53                         KeyFile="$(KeyOriginatorFile)"
54                         MainEntryPoint="$(StartupObject)"
55                         NoConfig="true"
56                         NoLogo="$(NoLogo)"
57                         NoStandardLib="$(NoStdLib)"
58                         NoWarnings="$(_NoWarnings)"
59                         Optimize="$(Optimize)"
60                         OptionCompare="$(OptionCompare)"
61                         OptionExplicit="$(OptionExplicit)"
62                         OptionStrict="$(OptionStrict)"
63                         OptionStrictType="$(OptionStrictType)" 
64                         OutputAssembly="$(IntermediateAssembly)"
65                         Platform="$(PlatformTarget)"
66                         References="@(ResolvedFiles)"
67                         RemoveIntegerChecks="$(RemoveIntegerChecks)"
68                         Resources="@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile)"
69                         ResponseFiles="$(CompilerResponseFile)"
70                         Sources="@(Compile)"
71                         TargetType="$(OutputType)"
72                         TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
73                         UseHostCompilerIfAvailable="$(UseHostCompilerIfAvailable)"
74                         Utf8Output="$(Utf8Output)"
75                         Verbosity="$(VbcVerbosity)"
76                         WarningsAsErrors="$(WarningsAsErrors)"
77                         WarningsNotAsErrors="$(WarningsNotAsErrors)"
78                         Win32Icon="$(Win32Icon)"
79                         Win32Resource="$(Win32Resource)"
80                         ToolExe="$(VbcToolExe)"
81                         ToolPath="$(VbcToolPath)"
82                         />
83
84         </Target>
85
86         <Target Name="CreateManifestResourceNames">
87                 <CreateVisualBasicManifestResourceName Condition="'@(ResxWithNoCulture)' != ''"
88                         ResourceFiles="@(ResxWithNoCulture)" RootNamespace="$(RootNamespace)">
89                         <Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithNoCultureName" />
90                 </CreateVisualBasicManifestResourceName>
91
92                 <CreateVisualBasicManifestResourceName Condition="'@(NonResxWithNoCulture)' != ''"
93                         ResourceFiles="@(NonResxWithNoCulture)" RootNamespace="$(RootNamespace)">
94                         <Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithNoCulture" />
95                 </CreateVisualBasicManifestResourceName>
96
97                 <CreateVisualBasicManifestResourceName Condition="'@(ResxWithCulture)' != ''"
98                         ResourceFiles="@(ResxWithCulture)" RootNamespace="$(RootNamespace)">
99                         <Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithCultureName" />
100                 </CreateVisualBasicManifestResourceName>
101
102                 <CreateVisualBasicManifestResourceName Condition="'@(NonResxWithCulture)' != ''"
103                         ResourceFiles="@(NonResxWithCulture)" RootNamespace="$(RootNamespace)">
104                         <Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithCulture" />
105                 </CreateVisualBasicManifestResourceName>
106         </Target>
107
108         <Import Project="Microsoft.Common.targets" />
109
110 </Project>