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>
21 <PropertyGroup Label="Globals">
22 <ProjectGuid>{675F4175-FFB1-480D-AD36-F397578844D4}</ProjectGuid>
23 <RootNamespace>libmono-dynamic</RootNamespace>
24 <Keyword>Win32Proj</Keyword>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>DynamicLibrary</ConfigurationType>
29 <UseDebugLibraries>false</UseDebugLibraries>
30 <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
31 <CharacterSet>Unicode</CharacterSet>
33 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
34 <ConfigurationType>DynamicLibrary</ConfigurationType>
35 <UseDebugLibraries>true</UseDebugLibraries>
36 <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
37 <CharacterSet>Unicode</CharacterSet>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
40 <ConfigurationType>DynamicLibrary</ConfigurationType>
41 <UseDebugLibraries>false</UseDebugLibraries>
42 <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
43 <CharacterSet>Unicode</CharacterSet>
45 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
46 <ConfigurationType>DynamicLibrary</ConfigurationType>
47 <UseDebugLibraries>true</UseDebugLibraries>
48 <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
49 <CharacterSet>Unicode</CharacterSet>
51 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
52 <ImportGroup Label="ExtensionSettings">
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" />
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" />
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" />
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" />
70 <PropertyGroup Label="UserMacros" />
71 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
72 <LinkIncremental>false</LinkIncremental>
73 <TargetName>mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
74 <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
75 <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
77 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
78 <LinkIncremental>false</LinkIncremental>
79 <TargetName>mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
80 <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
81 <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
83 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
84 <LinkIncremental>true</LinkIncremental>
85 <TargetName>mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
86 <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
87 <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
89 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
90 <LinkIncremental>true</LinkIncremental>
91 <TargetName>mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>
92 <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>
93 <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>
95 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
97 <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
98 <Optimization>Disabled</Optimization>
99 <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
100 <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
101 <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
102 <WarningLevel>Level3</WarningLevel>
105 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
106 <Culture>0x0409</Culture>
109 <LinkLibraryDependencies>false</LinkLibraryDependencies>
112 <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
113 <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
116 <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
118 </ItemDefinitionGroup>
119 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <TargetEnvironment>X64</TargetEnvironment>
124 <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
125 <Optimization>Disabled</Optimization>
126 <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
127 <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
128 <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
129 <WarningLevel>Level3</WarningLevel>
132 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
133 <Culture>0x0409</Culture>
136 <LinkLibraryDependencies>false</LinkLibraryDependencies>
139 <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
140 <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
143 <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
145 </ItemDefinitionGroup>
146 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
148 <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
149 <IntrinsicFunctions>true</IntrinsicFunctions>
150 <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
151 <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
152 <StringPooling>true</StringPooling>
153 <WarningLevel>Level3</WarningLevel>
154 <WholeProgramOptimization>true</WholeProgramOptimization>
157 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
158 <Culture>0x0409</Culture>
161 <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
162 <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
163 <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
166 <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
169 <LinkLibraryDependencies>false</LinkLibraryDependencies>
171 </ItemDefinitionGroup>
172 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
174 <TargetEnvironment>X64</TargetEnvironment>
177 <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>
178 <IntrinsicFunctions>true</IntrinsicFunctions>
179 <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
180 <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
181 <StringPooling>true</StringPooling>
182 <WarningLevel>Level3</WarningLevel>
183 <WholeProgramOptimization>true</WholeProgramOptimization>
186 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
187 <Culture>0x0409</Culture>
190 <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>
191 <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>
192 <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
195 <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>
198 <LinkLibraryDependencies>false</LinkLibraryDependencies>
200 </ItemDefinitionGroup>
201 <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
203 <CompileAs>CompileAsCpp</CompileAs>
205 </ItemDefinitionGroup>
207 <ProjectReference Include="build-external-btls.vcxproj">
208 <Project>{e41ddf41-0916-454b-a7c2-6e410e45cafd}</Project>
210 <ProjectReference Include="build-external-llvm.vcxproj">
211 <Project>{c3d4c623-55f8-4653-980d-61aa629b4e1d}</Project>
213 <ProjectReference Include="genmdesc.vcxproj">
214 <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>
216 <ProjectReference Include="libgc.vcxproj">
217 <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>
221 <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows-dllmain.c" />
223 <Import Project="eglib.targets" />
224 <Import Project="libmonoutils.targets" />
225 <Import Project="libmonoruntime.targets" />
226 <Import Project="libmini.targets" />
227 <Import Project="libgcmonosgen.targets" />
228 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
229 <Import Project="mono.external.targets" />
230 <ImportGroup Label="ExtensionTargets">
232 <Target Name="_SetupMonoLLVMCompileItems" Condition="$(MONO_ENABLE_LLVM)=='true'">
235 <AdditionalIncludeDirectories>$(MONO_LLVM_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
236 <PreprocessorDefinitions>LLVM_API_VERSION=$(MONO_LLVM_API_VERSION);%(PreprocessorDefinitions)</PreprocessorDefinitions>
240 <ClCompile Condition="'%(ClCompile._MonoLLVMSourceFile)' == 'true'">
241 <ExcludedFromBuild>false</ExcludedFromBuild>
245 <Target Name="_SetupMonoLLVMLinkItems" Condition="$(MONO_ENABLE_LLVM)=='true'">
248 <AdditionalLibraryDirectories>$(MONO_LLVM_LIB_DIR);%(Link.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
249 <AdditionalDependencies>$(MONO_LLVM_LIBS);%(Link.AdditionalDependencies)</AdditionalDependencies>
253 <Target Name="_ConfigureExternalCompileDependency" DependsOnTargets="_ConfigureExternalMonoBuildEnvironment;_SetupMonoLLVMBuildProperties;_SetupMonoLLVMCompileItems" />
254 <Target Name="_ConfigureExternalLinkDependency" DependsOnTargets="_ConfigureExternalMonoBuildEnvironment;_SetupMonoLLVMBuildProperties;_SetupMonoLLVMLinkItems" />
256 <PrepareForBuildDependsOn>
257 _ConfigureExternalCompileDependency;
258 $(PrepareForBuildDependsOn);
259 </PrepareForBuildDependsOn>
260 <ComputeLinkInputsTargets>
261 $(ComputeLinkInputsTargets);
262 _ConfigureExternalLinkDependency;
263 </ComputeLinkInputsTargets>