[mini] Add GC Unsafe transitions in mono_pmip (#21186)
[mono-project.git] / msvc / mono.vcxproj
blob99ae0f6f11b522918ff0a5bbd35f3e888eb256a7
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>{A0EDDCD9-940F-432C-A28F-7EF322437D79}</ProjectGuid>
23     <RootNamespace>mono</RootNamespace>
24     <Keyword>Win32Proj</Keyword>
25   </PropertyGroup>
26   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28     <ConfigurationType>Application</ConfigurationType>
29     <UseDebugLibraries>false</UseDebugLibraries>
30     <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
31     <CharacterSet>Unicode</CharacterSet>
32   </PropertyGroup>
33   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
34     <ConfigurationType>Application</ConfigurationType>
35     <UseDebugLibraries>true</UseDebugLibraries>
36     <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
37     <CharacterSet>Unicode</CharacterSet>
38   </PropertyGroup>
39   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
40     <ConfigurationType>Application</ConfigurationType>
41     <UseDebugLibraries>false</UseDebugLibraries>
42     <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
43     <CharacterSet>Unicode</CharacterSet>
44   </PropertyGroup>
45   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
46     <ConfigurationType>Application</ConfigurationType>
47     <UseDebugLibraries>true</UseDebugLibraries>
48     <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
49     <CharacterSet>Unicode</CharacterSet>
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 Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
72     <LinkIncremental>false</LinkIncremental>
73     <TargetName>$(ProjectName)$(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>
76   </PropertyGroup>
77   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
78     <LinkIncremental>false</LinkIncremental>
79     <TargetName>$(ProjectName)$(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>
82   </PropertyGroup>
83   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
84     <LinkIncremental>true</LinkIncremental>
85     <TargetName>$(ProjectName)$(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>
88   </PropertyGroup>
89   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
90     <LinkIncremental>true</LinkIncremental>
91     <TargetName>$(ProjectName)$(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>
94   </PropertyGroup>
95   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
96     <ClCompile>
97       <Optimization>Disabled</Optimization>
98       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
101       <WarningLevel>Level3</WarningLevel>
102     </ClCompile>
103     <Link>
104       <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
105       <SubSystem>Console</SubSystem>
106       <StackReserveSize>0x800000</StackReserveSize>
107     </Link>
108     <ProjectReference>
109       <LinkLibraryDependencies>false</LinkLibraryDependencies>
110     </ProjectReference>
111     <PostBuildEvent>
112       <Command>xcopy "$(SolutionDir)mono-sgen-msvc.sh" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
114 xcopy "$(SolutionDir)mono-sgen-msvc.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
115 xcopy "$(SolutionDir)setup-windows-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
116 xcopy "$(SolutionDir)setup-vs-msvcbuild-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1</Command>
117     </PostBuildEvent>
118   </ItemDefinitionGroup>
119   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
120     <Midl>
121       <TargetEnvironment>X64</TargetEnvironment>
122     </Midl>
123     <ClCompile>
124       <Optimization>Disabled</Optimization>
125       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
126       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
127       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
128       <WarningLevel>Level3</WarningLevel>
129     </ClCompile>
130     <ProjectReference>
131       <LinkLibraryDependencies>false</LinkLibraryDependencies>
132     </ProjectReference>
133     <Link>
134       <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
135       <SubSystem>Console</SubSystem>
136       <StackReserveSize>0x800000</StackReserveSize>
137     </Link>
138     <PostBuildEvent>
139       <Command>xcopy "$(SolutionDir)mono-sgen-msvc.sh" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
141 xcopy "$(SolutionDir)mono-sgen-msvc.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
142 xcopy "$(SolutionDir)setup-windows-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
143 xcopy "$(SolutionDir)setup-vs-msvcbuild-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1</Command>
144     </PostBuildEvent>
145   </ItemDefinitionGroup>
146   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
147     <ClCompile>
148       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
149       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
150       <WarningLevel>Level3</WarningLevel>
151       <IntrinsicFunctions>true</IntrinsicFunctions>
152       <StringPooling>true</StringPooling>
153       <WholeProgramOptimization>true</WholeProgramOptimization>
154     </ClCompile>
155     <ProjectReference>
156       <LinkLibraryDependencies>false</LinkLibraryDependencies>
157     </ProjectReference>
158     <Link>
159       <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
160       <SubSystem>Console</SubSystem>
161       <StackReserveSize>0x180000</StackReserveSize>
162       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
163     </Link>
164     <PostBuildEvent>
165       <Command>xcopy "$(SolutionDir)mono-sgen-msvc.sh" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
167 xcopy "$(SolutionDir)mono-sgen-msvc.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
168 xcopy "$(SolutionDir)setup-windows-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
169 xcopy "$(SolutionDir)setup-vs-msvcbuild-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1</Command>
170     </PostBuildEvent>
171   </ItemDefinitionGroup>
172   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
173     <Midl>
174       <TargetEnvironment>X64</TargetEnvironment>
175     </Midl>
176     <ClCompile>
177       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
178       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
179       <WarningLevel>Level3</WarningLevel>
180       <IntrinsicFunctions>true</IntrinsicFunctions>
181       <StringPooling>true</StringPooling>
182       <WholeProgramOptimization>true</WholeProgramOptimization>
183     </ClCompile>
184     <ProjectReference>
185       <LinkLibraryDependencies>false</LinkLibraryDependencies>
186     </ProjectReference>
187     <Link>
188       <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
189       <SubSystem>Console</SubSystem>
190       <StackReserveSize>0x180000</StackReserveSize>
191       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
192     </Link>
193     <PostBuildEvent>
194       <Command>xcopy "$(SolutionDir)mono-sgen-msvc.sh" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
196 xcopy "$(SolutionDir)mono-sgen-msvc.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
197 xcopy "$(SolutionDir)setup-windows-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1
198 xcopy "$(SolutionDir)setup-vs-msvcbuild-env.bat" "$(OutDir)" /q /y &gt;nul 2&gt;&amp;1</Command>
199     </PostBuildEvent>
200   </ItemDefinitionGroup>
201   <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
202     <ClCompile>
203       <CompileAs>CompileAsCpp</CompileAs>
204     </ClCompile>
205   </ItemDefinitionGroup>
206   <ItemGroup>
207     <ClCompile Include="..\mono\mini\main.c" />
208   </ItemGroup>
209   <ItemGroup>
210     <ProjectReference Include="eglib.vcxproj">
211       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>
212     </ProjectReference>
213     <ProjectReference Include="libmono-dynamic.vcxproj">
214       <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>
215     </ProjectReference>
216   </ItemGroup>
217   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
218   <Import Project="mono.external.targets" />
219   <ImportGroup Label="ExtensionTargets">
220   </ImportGroup>
221   <Target Name="_SetupMonoLLVMLinkItems" Condition="$(MONO_ENABLE_LLVM)=='true'">
222     <ItemGroup>
223       <Link>
224         <AdditionalLibraryDirectories>$(MONO_LLVM_LIB_DIR);%(Lib.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
225         <AdditionalDependencies>$(MONO_LLVM_LIBS);%(Lib.AdditionalDependencies)</AdditionalDependencies>
226       </Link>
227     </ItemGroup>
228   </Target>
229   <Target Name="_ConfigureExternalLinkDependency" DependsOnTargets="_ConfigureExternalMonoBuildEnvironment;_SetupMonoLLVMBuildProperties;_SetupMonoLLVMLinkItems" />
230   <PropertyGroup>
231     <ComputeLibInputsTargets>
232       $(ComputeLibInputsTargets);
233       _ConfigureExternalLinkDependency;
234     </ComputeLibInputsTargets>
235   </PropertyGroup>
236 </Project>