Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--msvc/eglib.vcxproj5
-rw-r--r--msvc/libgcmonosgen.vcxproj5
-rw-r--r--msvc/libmini.vcxproj5
-rw-r--r--msvc/libmono-dynamic.vcxproj5
-rw-r--r--msvc/libmono-static.vcxproj5
-rw-r--r--msvc/libmonodac.vcxproj5
-rw-r--r--msvc/libmonoruntime.vcxproj5
-rw-r--r--msvc/libmonoutils.vcxproj5
-rw-r--r--msvc/mono.props13
-rw-r--r--msvc/mono.vcxproj5
-rw-r--r--msvc/monodis.vcxproj5
-rw-r--r--msvc/monograph.vcxproj5
-rw-r--r--msvc/pedump.vcxproj5
13 files changed, 70 insertions, 3 deletions
diff --git a/msvc/eglib.vcxproj b/msvc/eglib.vcxproj
index c4845c36745..d8d275a00f2 100644
--- a/msvc/eglib.vcxproj
+++ b/msvc/eglib.vcxproj
@@ -146,6 +146,11 @@
<StringPooling>true</StringPooling>
</ClCompile>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<Import Project="eglib.targets" />
<ItemGroup>
<ProjectReference Include="build-init.vcxproj">
diff --git a/msvc/libgcmonosgen.vcxproj b/msvc/libgcmonosgen.vcxproj
index f27c6652da1..3db4e154d23 100644
--- a/msvc/libgcmonosgen.vcxproj
+++ b/msvc/libgcmonosgen.vcxproj
@@ -158,6 +158,11 @@
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<Import Project="libgcmonosgen.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/msvc/libmini.vcxproj b/msvc/libmini.vcxproj
index 62e9def9d79..5e411d0eb6b 100644
--- a/msvc/libmini.vcxproj
+++ b/msvc/libmini.vcxproj
@@ -194,6 +194,11 @@
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Lib>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<Import Project="libmini.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/msvc/libmono-dynamic.vcxproj b/msvc/libmono-dynamic.vcxproj
index 21e64c3495d..cbb0d9a0d0f 100644
--- a/msvc/libmono-dynamic.vcxproj
+++ b/msvc/libmono-dynamic.vcxproj
@@ -239,6 +239,11 @@
<LinkLibraryDependencies>false</LinkLibraryDependencies>
</ProjectReference>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="genmdesc.vcxproj">
<Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>
diff --git a/msvc/libmono-static.vcxproj b/msvc/libmono-static.vcxproj
index 0c606ddb6af..19e7071fc10 100644
--- a/msvc/libmono-static.vcxproj
+++ b/msvc/libmono-static.vcxproj
@@ -194,6 +194,11 @@
<LinkLibraryDependencies>true</LinkLibraryDependencies>
</ProjectReference>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="eglib.vcxproj">
<Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>
diff --git a/msvc/libmonodac.vcxproj b/msvc/libmonodac.vcxproj
index 57b5fdaea0f..90f75e603e6 100644
--- a/msvc/libmonodac.vcxproj
+++ b/msvc/libmonodac.vcxproj
@@ -131,6 +131,11 @@
</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\mono\mini\mini-windows-dlldac.c" />
</ItemGroup>
diff --git a/msvc/libmonoruntime.vcxproj b/msvc/libmonoruntime.vcxproj
index b9b512dddb3..0694b198a7f 100644
--- a/msvc/libmonoruntime.vcxproj
+++ b/msvc/libmonoruntime.vcxproj
@@ -166,6 +166,11 @@
</Link>
<Lib />
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<Import Project="libmonoruntime.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/msvc/libmonoutils.vcxproj b/msvc/libmonoutils.vcxproj
index fd727132bc6..e49c85fdbc8 100644
--- a/msvc/libmonoutils.vcxproj
+++ b/msvc/libmonoutils.vcxproj
@@ -172,6 +172,11 @@
</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<Import Project="libmonoutils.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
</Project> \ No newline at end of file
diff --git a/msvc/mono.props b/msvc/mono.props
index 6098d6bf222..a673bb551b9 100644
--- a/msvc/mono.props
+++ b/msvc/mono.props
@@ -11,7 +11,7 @@
<MONO_TARGET_GC>sgen</MONO_TARGET_GC>
<!-- When true, build targets will get a suffix based on used GC. Makes it possible to have builds using different GC's in same build folders, sharing common targets. -->
<MONO_USE_TARGET_SUFFIX>true</MONO_USE_TARGET_SUFFIX>
- <!-- When true, build will get a separate build folder based on used GC. Makes it possible separate builds into different output folders under the same build prefix. -->
+ <!-- When true, build will get a separate build folder based on various configuration parameters. Makes it possible separate builds into different output folders under the same build prefix. -->
<MONO_USE_SEPARATE_BUILD_DIR>true</MONO_USE_SEPARATE_BUILD_DIR>
<!-- When true, all binaries and libraries will link using static c-runtime. When false, all binaries and libraries will link using dynamic c-runtime. -->
<MONO_USE_STATIC_C_RUNTIME>false</MONO_USE_STATIC_C_RUNTIME>
@@ -19,6 +19,8 @@
<MONO_USE_STATIC_LIBMONO>false</MONO_USE_STATIC_LIBMONO>
<!-- When true, mono binaries will link and include llvm. When false, mono binaries will not link and include llvm. -->
<MONO_ENABLE_LLVM>false</MONO_ENABLE_LLVM>
+ <!-- When true, ported mono projects will build using C++ instead of C compiler. When false, all project will be build using the default compiler. -->
+ <MONO_COMPILE_AS_CPP>false</MONO_COMPILE_AS_CPP>
</PropertyGroup>
<PropertyGroup Label="MonoDirectories">
<MonoSourceLocation Condition="'$(MonoSourceLocation)' == '' ">..</MonoSourceLocation>
@@ -52,14 +54,16 @@
<GC_DEFINES>$(SGEN_DEFINES)</GC_DEFINES>
<GC_LIB>libgcmonosgen.lib</GC_LIB>
<MONO_TARGET_SUFFIX Condition="'$(MONO_USE_TARGET_SUFFIX)'=='true'">-sgen</MONO_TARGET_SUFFIX>
- <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true'">$(MONO_BUILD_DIR_PREFIX)sgen/</MONO_BUILD_DIR_PREFIX>
+ <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true' And '$(MONO_COMPILE_AS_CPP)'!='true'">$(MONO_BUILD_DIR_PREFIX)sgen/</MONO_BUILD_DIR_PREFIX>
+ <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true' And '$(MONO_COMPILE_AS_CPP)'=='true'">$(MONO_BUILD_DIR_PREFIX)sgen-cpp/</MONO_BUILD_DIR_PREFIX>
</PropertyGroup>
<PropertyGroup Label="MonoBOEHM" Condition="$(MONO_TARGET_GC)=='boehm'">
<BOEHM_DEFINES>HAVE_BOEHM_GC</BOEHM_DEFINES>
<GC_DEFINES>$(BOEHM_DEFINES)</GC_DEFINES>
<GC_LIB>libgc.lib</GC_LIB>
<MONO_TARGET_SUFFIX Condition="'$(MONO_USE_TARGET_SUFFIX)'=='true'">-boehm</MONO_TARGET_SUFFIX>
- <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true'">$(MONO_BUILD_DIR_PREFIX)boehm/</MONO_BUILD_DIR_PREFIX>
+ <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true'And '$(MONO_COMPILE_AS_CPP)'!='true'">$(MONO_BUILD_DIR_PREFIX)boehm/</MONO_BUILD_DIR_PREFIX>
+ <MONO_BUILD_DIR_PREFIX Condition="'$(MONO_USE_SEPARATE_BUILD_DIR)'=='true'And '$(MONO_COMPILE_AS_CPP)'=='true'">$(MONO_BUILD_DIR_PREFIX)boehm-cpp/</MONO_BUILD_DIR_PREFIX>
</PropertyGroup>
<PropertyGroup Label="Static-Mono-Libraries">
<MONO_RUNTIME_LIBS>libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmini$(MONO_TARGET_SUFFIX).lib;$(GC_LIB)</MONO_RUNTIME_LIBS>
@@ -109,6 +113,9 @@
<BuildMacro Include="MONO_ENABLE_LLVM">
<Value>$(MONO_ENABLE_LLVM)</Value>
</BuildMacro>
+ <BuildMacro Include="MONO_COMPILE_AS_CPP">
+ <Value>$(MONO_COMPILE_AS_CPP)</Value>
+ </BuildMacro>
</ItemGroup>
<PropertyGroup Label="MonoDefaultPreprocessorDefinitions">
<MONO_PREPROCESSOR_DEFINITIONS>__default_codegen__;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;HAVE_CONFIG_H;GC_NOT_DLL;WIN32_THREADS;WINVER=0x0601;_WIN32_WINNT=0x0601;_WIN32_IE=0x0501;_UNICODE;UNICODE;FD_SETSIZE=1024;NVALGRIND;$(MONO_ADDITIONAL_PREPROCESSOR_DEFINITIONS)</MONO_PREPROCESSOR_DEFINITIONS>
diff --git a/msvc/mono.vcxproj b/msvc/mono.vcxproj
index 7567c5e3b98..b8de263f6c5 100644
--- a/msvc/mono.vcxproj
+++ b/msvc/mono.vcxproj
@@ -181,6 +181,11 @@
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\mono\mini\main.c" />
</ItemGroup>
diff --git a/msvc/monodis.vcxproj b/msvc/monodis.vcxproj
index 9f0bb69efb9..a0a41bb6d79 100644
--- a/msvc/monodis.vcxproj
+++ b/msvc/monodis.vcxproj
@@ -178,6 +178,11 @@
<AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\mono\dis\declsec.c" />
<ClCompile Include="..\mono\dis\dis-cil.c" />
diff --git a/msvc/monograph.vcxproj b/msvc/monograph.vcxproj
index 29ca2e961b7..63b6b8bda80 100644
--- a/msvc/monograph.vcxproj
+++ b/msvc/monograph.vcxproj
@@ -178,6 +178,11 @@
<AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\mono\metadata\opcodes.c" />
<ClCompile Include="..\tools\monograph\monograph.c" />
diff --git a/msvc/pedump.vcxproj b/msvc/pedump.vcxproj
index d491a5bd266..c406117d733 100644
--- a/msvc/pedump.vcxproj
+++ b/msvc/pedump.vcxproj
@@ -178,6 +178,11 @@
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(MONO_COMPILE_AS_CPP)'=='true'">
+ <ClCompile>
+ <CompileAs>CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\tools\pedump\pedump.c" />
</ItemGroup>