[metadata] Fix leaks when handling a few attributes (#16675)
[mono-project.git] / msvc / libmono-dynamic.vcxproj
blob76d231aef5f028fa861d06d6c575509329b5e230
1 <?xml version="1.0" encoding="utf-8"?>
2 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3   <ItemGroup Label="ProjectConfigurations">
4     <ProjectConfiguration Include="Debug|Win32">
5       <Configuration>Debug</Configuration>
6       <Platform>Win32</Platform>
7     </ProjectConfiguration>
8     <ProjectConfiguration Include="Debug|x64">
9       <Configuration>Debug</Configuration>
10       <Platform>x64</Platform>
11     </ProjectConfiguration>
12     <ProjectConfiguration Include="Release|Win32">
13       <Configuration>Release</Configuration>
14       <Platform>Win32</Platform>
15     </ProjectConfiguration>
16     <ProjectConfiguration Include="Release|x64">
17       <Configuration>Release</Configuration>
18       <Platform>x64</Platform>
19     </ProjectConfiguration>
20   </ItemGroup>
21   <PropertyGroup Label="Globals">
22     <ProjectGuid>{675F4175-FFB1-480D-AD36-F397578844D4}</ProjectGuid>
23     <RootNamespace>libmono-dynamic</RootNamespace>
24     <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
25   </PropertyGroup>
26   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28     <ConfigurationType>DynamicLibrary</ConfigurationType>
29     <UseOfMfc>false</UseOfMfc>
30     <CharacterSet>Unicode</CharacterSet>
31     <PlatformToolset>v140</PlatformToolset>
32   </PropertyGroup>
33   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
34     <ConfigurationType>DynamicLibrary</ConfigurationType>
35     <UseOfMfc>false</UseOfMfc>
36     <CharacterSet>Unicode</CharacterSet>
37     <PlatformToolset>v140</PlatformToolset>
38   </PropertyGroup>
39   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
40     <ConfigurationType>DynamicLibrary</ConfigurationType>
41     <UseOfMfc>false</UseOfMfc>
42     <CharacterSet>Unicode</CharacterSet>
43     <PlatformToolset>v140</PlatformToolset>
44   </PropertyGroup>
45   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
46     <ConfigurationType>DynamicLibrary</ConfigurationType>
47     <UseOfMfc>false</UseOfMfc>
48     <CharacterSet>Unicode</CharacterSet>
49     <PlatformToolset>v140</PlatformToolset>
50   </PropertyGroup>
51   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
52   <ImportGroup Label="ExtensionSettings">
53   </ImportGroup>
54   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
55     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
56     <Import Project="mono.props" />
57   </ImportGroup>
58   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
59     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
60     <Import Project="mono.props" />
61   </ImportGroup>
62   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
63     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64     <Import Project="mono.props" />
65   </ImportGroup>
66   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
67     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
68     <Import Project="mono.props" />
69   </ImportGroup>
70   <PropertyGroup Label="UserMacros" />
71   <PropertyGroup>
72     <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
73     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
74     <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
75     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
76     <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
77     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
78     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
79     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
80     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
81     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
82     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
83     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
84     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
85   </PropertyGroup>
86   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
87     <LinkIncremental>true</LinkIncremental>
88   </PropertyGroup>
89   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
90     <LinkIncremental>true</LinkIncremental>
91   </PropertyGroup>
92   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
93     <PreBuildEvent>
94       <Command>
95       </Command>
96     </PreBuildEvent>
97     <ClCompile>
98       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
99       <Optimization>Disabled</Optimization>
100       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
101       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
102       <PrecompiledHeader>
103       </PrecompiledHeader>
104       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
105       <WarningLevel>Level3</WarningLevel>
106       <MinimalRebuild>true</MinimalRebuild>
107     </ClCompile>
108     <ResourceCompile>
109       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
110       <Culture>0x0409</Culture>
111     </ResourceCompile>
112     <ProjectReference>
113       <LinkLibraryDependencies>false</LinkLibraryDependencies>
114     </ProjectReference>
115     <Link>
116       <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
117       <ModuleDefinitionFile>
118       </ModuleDefinitionFile>
119       <DataExecutionPrevention>
120       </DataExecutionPrevention>
121       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
122     </Link>
123     <PostBuildEvent>
124       <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
125     </PostBuildEvent>
126   </ItemDefinitionGroup>
127   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
128     <PreBuildEvent>
129       <Command>
130       </Command>
131     </PreBuildEvent>
132     <Midl>
133       <TargetEnvironment>X64</TargetEnvironment>
134     </Midl>
135     <ClCompile>
136       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
137       <Optimization>Disabled</Optimization>
138       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
139       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
140       <PrecompiledHeader>
141       </PrecompiledHeader>
142       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
143       <WarningLevel>Level3</WarningLevel>
144       <MinimalRebuild>true</MinimalRebuild>
145     </ClCompile>
146     <ResourceCompile>
147       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
148       <Culture>0x0409</Culture>
149     </ResourceCompile>
150     <ProjectReference>
151       <LinkLibraryDependencies>false</LinkLibraryDependencies>
152     </ProjectReference>
153     <Link>
154       <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
155       <ModuleDefinitionFile>
156       </ModuleDefinitionFile>
157       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
158     </Link>
159     <PostBuildEvent>
160       <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
161     </PostBuildEvent>
162   </ItemDefinitionGroup>
163   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
164     <PreBuildEvent>
165       <Command>
166       </Command>
167     </PreBuildEvent>
168     <ClCompile>
169       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
170       <IntrinsicFunctions>true</IntrinsicFunctions>
171       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
172       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
173       <StringPooling>true</StringPooling>
174       <PrecompiledHeader>
175       </PrecompiledHeader>
176       <WarningLevel>Level3</WarningLevel>
177     </ClCompile>
178     <ResourceCompile>
179       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
180       <Culture>0x0409</Culture>
181     </ResourceCompile>
182     <ProjectReference />
183     <Link>
184       <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
185       <ModuleDefinitionFile>
186       </ModuleDefinitionFile>
187       <DataExecutionPrevention>
188       </DataExecutionPrevention>
189       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
190     </Link>
191     <PostBuildEvent>
192       <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
193     </PostBuildEvent>
194     <ProjectReference>
195       <LinkLibraryDependencies>false</LinkLibraryDependencies>
196     </ProjectReference>
197   </ItemDefinitionGroup>
198   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
199     <PreBuildEvent>
200       <Command>
201       </Command>
202     </PreBuildEvent>
203     <Midl>
204       <TargetEnvironment>X64</TargetEnvironment>
205     </Midl>
206     <ClCompile>
207       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
208       <IntrinsicFunctions>true</IntrinsicFunctions>
209       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
210       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
211       <StringPooling>true</StringPooling>
212       <PrecompiledHeader>
213       </PrecompiledHeader>
214       <WarningLevel>Level3</WarningLevel>
215     </ClCompile>
216     <ResourceCompile>
217       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
218       <Culture>0x0409</Culture>
219     </ResourceCompile>
220     <ProjectReference />
221     <Link>
222       <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
223       <ModuleDefinitionFile>
224       </ModuleDefinitionFile>
225       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
226     </Link>
227     <PostBuildEvent>
228       <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
229     </PostBuildEvent>
230     <ProjectReference>
231       <LinkLibraryDependencies>false</LinkLibraryDependencies>
232     </ProjectReference>
233   </ItemDefinitionGroup>
234   <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
235     <ClCompile>
236       <CompileAs>CompileAsCpp</CompileAs>
237     </ClCompile>
238   </ItemDefinitionGroup>
239   <ItemGroup>
240     <ProjectReference Include="genmdesc.vcxproj">
241       <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>
242     </ProjectReference>
243     <ProjectReference Include="libgc.vcxproj">
244       <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>
245     </ProjectReference>
246   </ItemGroup>
247   <ItemGroup>
248     <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows-dllmain.c" />
249   </ItemGroup>
250   <Import Project="eglib.targets" />
251   <Import Project="libmonoutils.targets" />
252   <Import Project="libmonoruntime.targets" />
253   <Import Project="libmini.targets" />
254   <Import Project="libgcmonosgen.targets" />
255   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
256   <Import Project="mono.external.targets" />
257   <ImportGroup Label="ExtensionTargets">
258   </ImportGroup>
259   <Target Name="_SetupMonoLLVMCompileItems" Condition="$(MONO_ENABLE_LLVM)=='true'">
260     <ItemGroup>
261       <ClCompile>
262         <AdditionalIncludeDirectories>$(MONO_LLVM_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
263         <PreprocessorDefinitions>LLVM_API_VERSION=$(MONO_LLVM_API_VERSION);%(PreprocessorDefinitions)</PreprocessorDefinitions>
264       </ClCompile>
265     </ItemGroup>
266     <ItemGroup>
267       <ClCompile Condition="'%(ClCompile._MonoLLVMSourceFile)' == 'true'">
268         <ExcludedFromBuild>false</ExcludedFromBuild>
269       </ClCompile>
270     </ItemGroup>
271   </Target>
272   <Target Name="_SetupMonoLLVMLinkItems" Condition="$(MONO_ENABLE_LLVM)=='true'">
273     <ItemGroup>
274       <Link>
275         <AdditionalLibraryDirectories>$(MONO_LLVM_LIB_DIR);%(Link.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
276         <AdditionalDependencies>$(MONO_LLVM_LIBS);%(Link.AdditionalDependencies)</AdditionalDependencies>
277       </Link>
278     </ItemGroup>
279   </Target>
280   <Target Name="_ConfigureExternalCompileDependency" DependsOnTargets="_ConfigureExternalMonoBuildEnvironment;_SetupMonoLLVMBuildProperties;_SetupMonoLLVMCompileItems" />
281   <Target Name="_ConfigureExternalLinkDependency" DependsOnTargets="_ConfigureExternalMonoBuildEnvironment;_SetupMonoLLVMBuildProperties;_SetupMonoLLVMLinkItems" />
282   <PropertyGroup>
283     <PrepareForBuildDependsOn>
284       _ConfigureExternalCompileDependency;
285       $(PrepareForBuildDependsOn);
286     </PrepareForBuildDependsOn>
287     <ComputeLinkInputsTargets>
288       $(ComputeLinkInputsTargets);
289       _ConfigureExternalLinkDependency;
290     </ComputeLinkInputsTargets>
291   </PropertyGroup>
292 </Project>