Merge pull request #5664 from lateralusX/lateralusX/mkbundle-windows-toolchains
authorJohan Lorensson <lateralusx.github@gmail.com>
Wed, 4 Oct 2017 06:22:29 +0000 (08:22 +0200)
committerGitHub <noreply@github.com>
Wed, 4 Oct 2017 06:22:29 +0000 (08:22 +0200)
[Windows] Major improvement of Visual Studio toolchain and Windows SDK support in mkbundle.

219 files changed:
configure.ac
external/nuget-buildtasks
mcs/class/System.Drawing/System.Drawing.Drawing2D/LinearGradientBrush.cs
mcs/class/System.Drawing/Test/System.Drawing.Drawing2D/LinearGradientBrushTest.cs
mcs/class/System.Net.Http/System.Net.Http/HttpClient.cs
mcs/class/System.Net.Http/Test/System.Net.Http/HttpClientTest.cs
mcs/errors/cs0106-11.cs [new file with mode: 0644]
mcs/errors/cs0131-6.cs [new file with mode: 0644]
mcs/errors/cs0199-2.cs [new file with mode: 0644]
mcs/errors/cs0206-5.cs [new file with mode: 0644]
mcs/errors/cs0459-5.cs [new file with mode: 0644]
mcs/errors/cs1503-17.cs [new file with mode: 0644]
mcs/errors/cs1547-13.cs [new file with mode: 0644]
mcs/errors/cs1604-2.cs [new file with mode: 0644]
mcs/errors/cs1605-2.cs [new file with mode: 0644]
mcs/errors/cs1617.cs
mcs/errors/cs1644-55.cs [new file with mode: 0644]
mcs/errors/cs1644-56.cs [new file with mode: 0644]
mcs/errors/cs1715-3.cs [new file with mode: 0644]
mcs/errors/cs1764.cs
mcs/errors/cs8145.cs [new file with mode: 0644]
mcs/errors/cs8146.cs [new file with mode: 0644]
mcs/errors/cs8147-2.cs [new file with mode: 0644]
mcs/errors/cs8147.cs [new file with mode: 0644]
mcs/errors/cs8148-2.cs [new file with mode: 0644]
mcs/errors/cs8148.cs [new file with mode: 0644]
mcs/errors/cs8149-2.cs [new file with mode: 0644]
mcs/errors/cs8149.cs [new file with mode: 0644]
mcs/errors/cs8150.cs [new file with mode: 0644]
mcs/errors/cs8151.cs [new file with mode: 0644]
mcs/errors/cs8152.cs [new file with mode: 0644]
mcs/errors/cs8153.cs [new file with mode: 0644]
mcs/errors/cs8154.cs [new file with mode: 0644]
mcs/errors/cs8155.cs [new file with mode: 0644]
mcs/errors/cs8156-2.cs [new file with mode: 0644]
mcs/errors/cs8156.cs [new file with mode: 0644]
mcs/errors/cs8157.cs [new file with mode: 0644]
mcs/errors/cs8160.cs [new file with mode: 0644]
mcs/errors/cs8161.cs [new file with mode: 0644]
mcs/errors/cs8170-2.cs [new file with mode: 0644]
mcs/errors/cs8170.cs [new file with mode: 0644]
mcs/errors/cs8171.cs [new file with mode: 0644]
mcs/errors/cs8172.cs [new file with mode: 0644]
mcs/errors/cs8173.cs [new file with mode: 0644]
mcs/errors/cs8174.cs [new file with mode: 0644]
mcs/errors/cs8175.cs [new file with mode: 0644]
mcs/errors/cs8176.cs [new file with mode: 0644]
mcs/errors/cs8177.cs [new file with mode: 0644]
mcs/errors/cs8178-2.cs [new file with mode: 0644]
mcs/errors/cs8178.cs [new file with mode: 0644]
mcs/errors/cs8189.cs [new file with mode: 0644]
mcs/errors/cs8303.cs [new file with mode: 0644]
mcs/errors/cs8340-2.cs [new file with mode: 0644]
mcs/errors/cs8340.cs [new file with mode: 0644]
mcs/errors/cs8341.cs [new file with mode: 0644]
mcs/errors/cs8342.cs [new file with mode: 0644]
mcs/errors/known-issues-net_4_x
mcs/jay/jay.vcxproj
mcs/mcs/argument.cs
mcs/mcs/attribute.cs
mcs/mcs/class.cs
mcs/mcs/convert.cs
mcs/mcs/cs-parser.jay
mcs/mcs/delegate.cs
mcs/mcs/ecore.cs
mcs/mcs/expression.cs
mcs/mcs/field.cs
mcs/mcs/generic.cs
mcs/mcs/import.cs
mcs/mcs/iterators.cs
mcs/mcs/lambda.cs
mcs/mcs/membercache.cs
mcs/mcs/pending.cs
mcs/mcs/property.cs
mcs/mcs/settings.cs
mcs/mcs/statement.cs
mcs/mcs/typespec.cs
mcs/tests/test-readonly-01.cs [new file with mode: 0644]
mcs/tests/test-ref-01.cs [new file with mode: 0644]
mcs/tests/test-ref-02.cs [new file with mode: 0644]
mcs/tests/test-ref-03.cs [new file with mode: 0644]
mcs/tests/test-ref-04.cs [new file with mode: 0644]
mcs/tests/test-ref-05.cs [new file with mode: 0644]
mcs/tests/test-ref-06.cs [new file with mode: 0644]
mcs/tests/ver-il-net_4_x.xml
mono/btls/Makefile.am
mono/metadata/Makefile.am
mono/metadata/callspec.c [new file with mode: 0644]
mono/metadata/callspec.h [new file with mode: 0644]
mono/metadata/class-internals.h
mono/metadata/coree.h
mono/metadata/w32file-win32.c
mono/metadata/w32file.c
mono/metadata/w32socket-unix.c
mono/mini/aot-runtime-wasm.c
mono/mini/driver.c
mono/mini/exceptions-arm64.c
mono/mini/iltests.il
mono/mini/interp/transform.c
mono/mini/method-to-ir.c
mono/mini/mini-darwin.c
mono/mini/mini.c
mono/mini/mini.h
mono/mini/mixed.cs
mono/mini/trace.c
mono/mini/trace.h
mono/profiler/log-args.c
mono/profiler/log.c
mono/profiler/log.h
mono/sgen/sgen-marksweep.c
mono/utils/mach-support-amd64.c
mono/utils/mach-support-arm64.c
mono/utils/mono-compiler.h
mono/utils/mono-complex.h
mono/utils/mono-context.c
mono/utils/mono-context.h
mono/utils/mono-sigcontext.h
mono/utils/mono-threads-posix-signals.c
msvc/Makefile.am
msvc/README
msvc/create-windef.pl [deleted file]
msvc/eglib-common.targets
msvc/eglib-common.targets.filters
msvc/eglib-posix.targets
msvc/eglib-posix.targets.filters
msvc/eglib-win32.targets
msvc/eglib-win32.targets.filters
msvc/eglib.targets [new file with mode: 0644]
msvc/eglib.targets.filters [new file with mode: 0644]
msvc/eglib.vcxproj
msvc/eglib.vcxproj.filters
msvc/genmdesc.vcxproj
msvc/libgc.targets [new file with mode: 0644]
msvc/libgc.targets.filters [new file with mode: 0644]
msvc/libgc.vcxproj
msvc/libgc.vcxproj.filters
msvc/libgcmonosgen.targets [new file with mode: 0644]
msvc/libgcmonosgen.targets.filters [new file with mode: 0644]
msvc/libgcmonosgen.vcxproj
msvc/libgcmonosgen.vcxproj.filters
msvc/libmini-arch.targets [new file with mode: 0644]
msvc/libmini-arch.targets.filters [new file with mode: 0644]
msvc/libmini-common.targets [new file with mode: 0644]
msvc/libmini-common.targets.filters [new file with mode: 0644]
msvc/libmini-interp.targets [new file with mode: 0644]
msvc/libmini-interp.targets.filters [new file with mode: 0644]
msvc/libmini-llvm.targets [new file with mode: 0644]
msvc/libmini-llvm.targets.filters [new file with mode: 0644]
msvc/libmini-posix.targets [new file with mode: 0644]
msvc/libmini-posix.targets.filters [new file with mode: 0644]
msvc/libmini-win32.targets [new file with mode: 0644]
msvc/libmini-win32.targets.filters [new file with mode: 0644]
msvc/libmini.targets [new file with mode: 0644]
msvc/libmini.targets.filters [new file with mode: 0644]
msvc/libmini.vcxproj [new file with mode: 0644]
msvc/libmini.vcxproj.filters [new file with mode: 0644]
msvc/libmono-dynamic.vcxproj [new file with mode: 0644]
msvc/libmono-dynamic.vcxproj.filters [new file with mode: 0644]
msvc/libmono-static.vcxproj
msvc/libmono-static.vcxproj.filters
msvc/libmono.vcxproj [deleted file]
msvc/libmono.vcxproj.filters [deleted file]
msvc/libmonodac.vcxproj
msvc/libmonoruntime-common.targets [new file with mode: 0644]
msvc/libmonoruntime-common.targets.filters [new file with mode: 0644]
msvc/libmonoruntime-posix.targets [new file with mode: 0644]
msvc/libmonoruntime-posix.targets.filters [new file with mode: 0644]
msvc/libmonoruntime-win32.targets [new file with mode: 0644]
msvc/libmonoruntime-win32.targets.filters [new file with mode: 0644]
msvc/libmonoruntime.targets [new file with mode: 0644]
msvc/libmonoruntime.targets.filters [new file with mode: 0644]
msvc/libmonoruntime.vcxproj
msvc/libmonoruntime.vcxproj.filters
msvc/libmonoutils-arch.targets [new file with mode: 0644]
msvc/libmonoutils-arch.targets.filters [new file with mode: 0644]
msvc/libmonoutils-common.targets [new file with mode: 0644]
msvc/libmonoutils-common.targets.filters [new file with mode: 0644]
msvc/libmonoutils-posix.targets [new file with mode: 0644]
msvc/libmonoutils-posix.targets.filters [new file with mode: 0644]
msvc/libmonoutils-win32.targets [new file with mode: 0644]
msvc/libmonoutils-win32.targets.filters [new file with mode: 0644]
msvc/libmonoutils.targets [new file with mode: 0644]
msvc/libmonoutils.targets.filters [new file with mode: 0644]
msvc/libmonoutils.vcxproj
msvc/libmonoutils.vcxproj.filters
msvc/libtest.vcxproj
msvc/mono.def [deleted file]
msvc/mono.props
msvc/mono.sln
msvc/mono.vcxproj
msvc/monodis.vcxproj
msvc/monograph.vcxproj
msvc/monoposixhelper.targets [new file with mode: 0644]
msvc/monoposixhelper.targets.filters [new file with mode: 0644]
msvc/monoposixhelper.vcxproj
msvc/monoposixhelper.vcxproj.filters
msvc/monosgen.def [deleted file]
msvc/pedump.vcxproj
msvc/pedump.vcxproj.filters
msvc/profiler-vtune.vcxproj
msvc/test-invoke.vcxproj
msvc/test-metadata.vcxproj
msvc/test_eglib.vcxproj
msvc/teste.vcxproj
packaging/MacSDK/profile.py
packaging/MacSDKRelease/mono-extensions.py
scripts/ci/collect-coverage.sh
scripts/ci/run-jenkins.sh
support/fcntl.c
support/libm/complex.h
support/libm/math_private.h
support/macros.c
support/mph.h
support/pwd.c
support/sys-mman.c
support/sys-sendfile.c
support/sys-stat.c
support/sys-statvfs.c
support/unistd.c

index bad8ecc8e3c8d08b5978acdf663d81535eb076be..e30a63cb55bf7b37b8521f9376e0931ff0875661 100644 (file)
@@ -1,7 +1,7 @@
 # Process this file with autoconf to produce a configure script.
 #AC_PREREQ([2.62])
 
-AC_INIT(mono, [5.7.0],
+AC_INIT(mono, [5.9.0],
         [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
 
 AC_CONFIG_SRCDIR([README.md])
@@ -40,7 +40,7 @@ MONO_VERSION_BUILD=`echo $VERSION | cut -d . -f 3`
 # This can be reset to 0 when Mono's version number is bumped
 # since it's part of the corlib version (the prefix '1' in the full
 # version number is to ensure the number isn't treated as octal in C)
-MONO_CORLIB_COUNTER=1
+MONO_CORLIB_COUNTER=0
 MONO_CORLIB_VERSION=`printf "1%02d%02d%02d%03d" $MONO_VERSION_MAJOR $MONO_VERSION_MINOR 0 $MONO_CORLIB_COUNTER`
 
 AC_DEFINE_UNQUOTED(MONO_CORLIB_VERSION,$MONO_CORLIB_VERSION,[Version of the corlib-runtime interface])
@@ -554,6 +554,73 @@ AC_CHECK_FUNCS(_finite, , AC_MSG_CHECKING(for _finite in math.h)
 # for Linux statfs support
 AC_CHECK_HEADERS(linux/magic.h)
 
+# For Android NDK unified headers
+if test x$platform_android = xyes; then
+       AC_CHECK_HEADERS(machine/endian.h sys/endian.h)
+       AC_CHECK_HEADERS(android/legacy_signal_inlines.h, [have_android_signal_inlines=yes], [have_android_signal_inlines=no])
+
+       # Make sure SIGRT{MIN,MAX} work - they will fail to work with unified headers if building for
+       # API level < 21 *and* android/legacy_signal_inlines.h doesn't declare (and define) the required
+       # libc APIs to obtain values for SIGRT{MIN,MAX}. We perform the check only if android/legacy_signal_inlines.h
+       # is found because in other cases the macros will either work (for NDK < 14) or fail if the legacy header
+       # doesn't contain the required definitions (NDK 14)
+       if test x$have_android_signal_inlines = xyes; then
+               AC_MSG_CHECKING([Whether Android SIGRTMIN/SGRTMAX macros are valid])
+               AC_COMPILE_IFELSE([
+                       AC_LANG_PROGRAM([#include <android/legacy_signal_inlines.h>],[
+                               int i;
+                               for (i = SIGRTMIN + 1; i < SIGRTMAX; ++i) {
+                               }
+                       ])],[
+                               AC_MSG_RESULT(yes)
+                               android_sigrtminmax_work=yes
+                       ],[
+                               AC_MSG_RESULT(no)
+                               android_sigrtminmax_work=no
+                       ]
+               )
+
+               if test x$android_sigrtminmax_work = xno; then
+                       AC_MSG_ERROR([Android SIGRTMIN/SIGRTMAX macros don't work in this NDK])
+               fi
+       fi
+
+       # Attempt to detect whether we're using Android NDK unified headers
+       AC_CHECK_HEADERS(android/api-level.h, [have_android_api_level=yes], [have_android_api_level=no])
+       AC_CHECK_HEADERS(android/versioning.h, [have_android_versioning=yes], [have_android_versioning=no])
+
+       android_unified_headers=no
+       if test x$have_android_api_level = xyes; then
+               if test x$have_android_versioning = xyes; then
+                       AC_MSG_CHECKING([whether using Android NDK unified headers])
+
+                       # Both macros are defined only in the NDK unified headers
+                       AC_COMPILE_IFELSE([
+                               AC_LANG_PROGRAM([
+                                       #include <android/api-level.h>
+                                       #include <android/versioning.h>
+                               ],[
+                                       #if __ANDROID_API_O__ == 26 && defined(__INTRODUCED_IN)
+                                               return 0
+                                       #else
+                                               #error __ANDROID_API_O__ != 26 or the __INTRODUCED_IN macro not defined
+                                       #endif
+                               ])],[
+                                       AC_MSG_RESULT(yes)
+                                       android_unified_headers=yes
+                               ],[
+                                       AC_MSG_RESULT(no)
+                                       android_unified_headers=no
+                               ]
+                       )
+               fi
+       fi
+
+       if test x$android_unified_headers = xyes; then
+               AC_DEFINE(ANDROID_UNIFIED_HEADERS, 1, [Whether Android NDK unified headers are used])
+       fi
+fi # Android
+
 # not 64 bit clean in cross-compile
 if test "x$enable_wasm" = "xyes"; then
 AC_DEFINE(SIZEOF_VOID_P,4)
index 9e04cc7f41899c880807d1d055a24c768670784a..b58ba4282377bcefd48abdc2d62ce6330e079abe 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 9e04cc7f41899c880807d1d055a24c768670784a
+Subproject commit b58ba4282377bcefd48abdc2d62ce6330e079abe
index 3b006fd5c9684a4356f5ef5808b6683e39655277..d2e645d2ccbd23152f27b54043cf6ad60308cdd5 100644 (file)
@@ -67,6 +67,14 @@ namespace System.Drawing.Drawing2D {
 
                public LinearGradientBrush (Rectangle rect, Color color1, Color color2, LinearGradientMode linearGradientMode)
                {
+                       if (linearGradientMode < LinearGradientMode.Horizontal || linearGradientMode > LinearGradientMode.BackwardDiagonal) {
+                               throw new InvalidEnumArgumentException (nameof (linearGradientMode), unchecked ((int)linearGradientMode), typeof (LinearGradientMode));
+                       }
+
+                       if (rect.Width == 0 || rect.Height == 0) {
+                               throw new ArgumentException( string.Format ("Rectangle '{0}' cannot have a width or height equal to 0.", rect.ToString ()));
+                       }
+
                        IntPtr nativeObject;
                        Status status = GDIPlus.GdipCreateLineBrushFromRectI (ref rect, color1.ToArgb (), color2.ToArgb (), linearGradientMode, WrapMode.Tile, out nativeObject);
                        GDIPlus.CheckStatus (status);
@@ -81,6 +89,14 @@ namespace System.Drawing.Drawing2D {
 
                public LinearGradientBrush (RectangleF rect, Color color1, Color color2, LinearGradientMode linearGradientMode)
                {
+                       if (linearGradientMode < LinearGradientMode.Horizontal || linearGradientMode > LinearGradientMode.BackwardDiagonal) {
+                               throw new InvalidEnumArgumentException (nameof (linearGradientMode), unchecked ((int)linearGradientMode), typeof (LinearGradientMode));
+                       }
+
+                       if (rect.Width == 0.0 || rect.Height == 0.0) {
+                               throw new ArgumentException (string.Format ("Rectangle '{0}' cannot have a width or height equal to 0.", rect.ToString ()));
+                       }
+
                        IntPtr nativeObject;
                        Status status = GDIPlus.GdipCreateLineBrushFromRect (ref rect, color1.ToArgb (), color2.ToArgb (), linearGradientMode, WrapMode.Tile, out nativeObject);
                        GDIPlus.CheckStatus (status);
@@ -95,6 +111,10 @@ namespace System.Drawing.Drawing2D {
 
                public LinearGradientBrush (Rectangle rect, Color color1, Color color2, float angle, bool isAngleScaleable)
                {
+                       if (rect.Width == 0 || rect.Height == 0) {
+                               throw new ArgumentException (string.Format ("Rectangle '{0}' cannot have a width or height equal to 0.", rect.ToString ()));
+                       }
+
                        IntPtr nativeObject;
                        Status status = GDIPlus.GdipCreateLineBrushFromRectWithAngleI (ref rect, color1.ToArgb (), color2.ToArgb (), angle, isAngleScaleable, WrapMode.Tile, out nativeObject);
                        GDIPlus.CheckStatus (status);
@@ -105,6 +125,10 @@ namespace System.Drawing.Drawing2D {
 
                public LinearGradientBrush (RectangleF rect, Color color1, Color color2, float angle, bool isAngleScaleable)
                {
+                       if (rect.Width == 0 || rect.Height == 0) {
+                               throw new ArgumentException (string.Format ("Rectangle '{0}' cannot have a width or height equal to 0.", rect.ToString ()));
+                       }
+
                        IntPtr nativeObject;
                        Status status = GDIPlus.GdipCreateLineBrushFromRectWithAngle (ref rect, color1.ToArgb (), color2.ToArgb (), angle, isAngleScaleable, WrapMode.Tile, out nativeObject);
                        GDIPlus.CheckStatus (status);
index 937c9ebbc792cae616e995b0e53c62cfb8248d3d..ebf1f86e98c011afcb83248fff95483c59b9ce40 100644 (file)
@@ -324,6 +324,42 @@ namespace MonoTests.System.Drawing.Drawing2D {
                        Assert.AreEqual (32, elements[5], 0.0001, "matrix.5");
                }
 
+               [Test]
+               public void Constructor_Rectangle_InvalidWidthHeight ()
+               {
+                       var emptyWidth = new Rectangle (0, 0, 0, 1);
+                       var emptyHeight = new Rectangle (0, 0, 0, 1);
+
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyWidth, Color.Empty, Color.Empty, 1));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyHeight, Color.Empty, Color.Empty, 1));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyWidth, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyHeight, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal));
+               }
+
+               [Test]
+               public void Constructor_RectangleF_InvalidWidthHeight ()
+               {
+                       var emptyWidth = new RectangleF (0, 0, 0, 1);
+                       var emptyHeight = new RectangleF (0, 0, 0, 1);
+
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyWidth, Color.Empty, Color.Empty, 1));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyHeight, Color.Empty, Color.Empty, 1));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyWidth, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal));
+                       Assert.Throws<ArgumentException>(() => new LinearGradientBrush (emptyHeight, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal));
+               }
+
+               [Test]
+               public void Constructor_LinearGradientMode_InvalidMode ()
+               {
+                       var rect = new Rectangle (0, 0, 1, 1);
+                       var rectf = new RectangleF (0, 0, 1, 1);
+
+                       Assert.Throws<InvalidEnumArgumentException>(() => new LinearGradientBrush (rect, Color.Empty, Color.Empty, LinearGradientMode.Horizontal - 1));
+                       Assert.Throws<InvalidEnumArgumentException>(() => new LinearGradientBrush (rectf, Color.Empty, Color.Empty, LinearGradientMode.Horizontal - 1));
+                       Assert.Throws<InvalidEnumArgumentException>(() => new LinearGradientBrush (rect, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal + 1));
+                       Assert.Throws<InvalidEnumArgumentException>(() => new LinearGradientBrush (rectf, Color.Empty, Color.Empty, LinearGradientMode.BackwardDiagonal + 1));
+               }
+
                [Test]
                public void InterpolationColors_Colors_InvalidBlend ()
                {
index c9fd2354abe136be56708c73b9a2bf30ff6f2098..3880d418dca1fd5c6821f258429359df1862da73 100644 (file)
@@ -96,7 +96,7 @@ namespace System.Net.Http
                                return timeout;
                        }
                        set {
-                               if (value != System.Threading.Timeout.InfiniteTimeSpan && (value <= TimeSpan.Zero || value.Ticks > int.MaxValue))
+                               if (value != System.Threading.Timeout.InfiniteTimeSpan && (value <= TimeSpan.Zero || value.TotalMilliseconds > int.MaxValue))
                                        throw new ArgumentOutOfRangeException ();
 
                                timeout = value;
index c87bb7562a16337730f027439914e8bfcfb2b383..c51ba6818ba73bcc50abbfdd2d9da472f63c74b4 100644 (file)
@@ -316,7 +316,7 @@ namespace MonoTests.System.Net.Http
                        }
 
                        try {
-                               client.Timeout = new TimeSpan(int.MaxValue + 1L);
+                               client.Timeout = TimeSpan.FromMilliseconds (int.MaxValue + 1L);
                                Assert.Fail ("#3");
                        } catch (ArgumentOutOfRangeException) {
                        }
diff --git a/mcs/errors/cs0106-11.cs b/mcs/errors/cs0106-11.cs
new file mode 100644 (file)
index 0000000..9aa99e3
--- /dev/null
@@ -0,0 +1,7 @@
+// CS0106: The modifier `readonly' is not valid for this item
+// Line: 6
+// Compiler option: -langversion:latest
+
+readonly interface I
+{
+}
diff --git a/mcs/errors/cs0131-6.cs b/mcs/errors/cs0131-6.cs
new file mode 100644 (file)
index 0000000..8af3e93
--- /dev/null
@@ -0,0 +1,15 @@
+// CS0131: The left-hand side of an assignment must be a variable, a property or an indexer
+// Line: 8
+
+class X
+{
+       void Test ()
+       {
+               Foo () = 1;
+       }
+
+       static int Foo ()
+       {
+               return 1;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0199-2.cs b/mcs/errors/cs0199-2.cs
new file mode 100644 (file)
index 0000000..efad7c8
--- /dev/null
@@ -0,0 +1,12 @@
+// CS0199: A static readonly field `X.f' cannot be passed ref or out (except in a static constructor)
+// Line: 10
+
+class X
+{
+       static readonly int f = 0;
+
+       public static void Main ()
+       {
+               ref int j = ref f;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0206-5.cs b/mcs/errors/cs0206-5.cs
new file mode 100644 (file)
index 0000000..bd9691f
--- /dev/null
@@ -0,0 +1,12 @@
+// CS0206: A property, indexer or dynamic member access may not be passed as `ref' or `out' parameter
+// Line: 10
+
+class X
+{
+       static int P { get; set; }
+
+       static void Main ()
+       {
+               ref int rl = ref P;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0459-5.cs b/mcs/errors/cs0459-5.cs
new file mode 100644 (file)
index 0000000..fa2cfd2
--- /dev/null
@@ -0,0 +1,13 @@
+// CS0459: Cannot take the address of `this' because it is read-only
+// Line: 11
+// Compiler options: -unsafe -langversion:latest
+
+readonly struct X
+{
+       unsafe void Test ()
+       {
+               fixed (X* x = &this) {
+
+               }
+       }
+}
diff --git a/mcs/errors/cs1503-17.cs b/mcs/errors/cs1503-17.cs
new file mode 100644 (file)
index 0000000..23921ed
--- /dev/null
@@ -0,0 +1,31 @@
+// CS1503: Argument `#1' cannot convert `ref long' expression to type `ref int'
+// Line: 18
+
+using System;
+
+class X
+{
+       long field;
+
+       static void Main ()
+       {
+               var x = new X ();
+               x.Run ();
+       }
+
+       void Run ()
+       {
+               Test (ref Prop);
+       }
+
+       static int Test (ref int y)
+       {
+               return y;
+       }
+
+       ref long Prop {
+               get {
+                       return ref field;
+               }
+       }
+}
diff --git a/mcs/errors/cs1547-13.cs b/mcs/errors/cs1547-13.cs
new file mode 100644 (file)
index 0000000..1b3f8e1
--- /dev/null
@@ -0,0 +1,7 @@
+// CS1547: Keyword `void' cannot be used in this context
+// Line: 6
+
+interface IA
+{
+       ref void Foo ();
+}
diff --git a/mcs/errors/cs1604-2.cs b/mcs/errors/cs1604-2.cs
new file mode 100644 (file)
index 0000000..7116ba3
--- /dev/null
@@ -0,0 +1,11 @@
+// CS1604: Cannot assign to `this' because it is read-only
+// Line: 8
+// Compiler options: -langversion:latest
+
+readonly struct S
+{
+       void Foo ()
+       {
+               this = new S ();
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs1605-2.cs b/mcs/errors/cs1605-2.cs
new file mode 100644 (file)
index 0000000..738899b
--- /dev/null
@@ -0,0 +1,16 @@
+// CS1605: Cannot pass `this' as a ref or out argument because it is read-only
+// Line: 14
+// Compiler options: -langversion:latest
+
+readonly struct X
+{
+       void Test (out X x)
+       {
+               x = new X ();
+       }
+       
+       void Run ()
+       {
+               Test (out this);
+       }
+}
index cfa63a7d8355e7be6928a4cfa58b370cb57d8743..ae9c328960b4d1281ed4ee34faf12eb80fa4c5ed 100644 (file)
@@ -1,3 +1,3 @@
-// CS1617: Invalid -langversion option `ISO'. It must be `ISO-1', `ISO-2', Default or value in range 1 to 7
+// CS1617: Invalid -langversion option `ISO'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2
 // Line: 0
 // Compiler options: -langversion:ISO
diff --git a/mcs/errors/cs1644-55.cs b/mcs/errors/cs1644-55.cs
new file mode 100644 (file)
index 0000000..58384a6
--- /dev/null
@@ -0,0 +1,11 @@
+// CS1644: Feature `byref locals and returns' cannot be used because it is not part of the C# 6.0 language specification
+// Line: 9
+// Compiler options: -langversion:6
+
+class Text
+{
+       static ref long Foo ()
+       {
+               throw new System.NotImplementedException ();
+       }
+}
diff --git a/mcs/errors/cs1644-56.cs b/mcs/errors/cs1644-56.cs
new file mode 100644 (file)
index 0000000..de713ef
--- /dev/null
@@ -0,0 +1,7 @@
+// CS1644: Feature `readonly structs' cannot be used because it is not part of the C# 7.0 language specification
+// Line: 5
+// Compiler options: -langversion:7
+
+readonly struct S
+{
+}
\ No newline at end of file
diff --git a/mcs/errors/cs1715-3.cs b/mcs/errors/cs1715-3.cs
new file mode 100644 (file)
index 0000000..d3cd5da
--- /dev/null
@@ -0,0 +1,16 @@
+// CS1715: `B.Foo': type must be `int' to match overridden member `A.Foo'
+// Line: 11
+
+public abstract class A
+{
+       public abstract ref int Foo { get; }
+}
+
+public class B : A
+{
+       public override ref long Foo {
+               get {
+                       throw null;
+               }
+       }
+}
\ No newline at end of file
index f8a89b25659474ba368650c02a016c41b8197656..a1dd2e36d1591c8f4bd3fdcb8e8dad9daea66c9a 100644 (file)
@@ -1,4 +1,4 @@
-// CS1764: Cannot use fixed local `p' inside an anonymous method, lambda expression or query expression
+// CS1764: Cannot use fixed variable `p' inside an anonymous method, lambda expression or query expression
 // Line: 10
 // Compiler options: -unsafe
 
diff --git a/mcs/errors/cs8145.cs b/mcs/errors/cs8145.cs
new file mode 100644 (file)
index 0000000..ffbadfd
--- /dev/null
@@ -0,0 +1,7 @@
+// CS8145: Auto-implemented property `X.TestProp' cannot return by reference
+// Line: 6
+
+public class X
+{
+       ref string TestProp { get; }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8146.cs b/mcs/errors/cs8146.cs
new file mode 100644 (file)
index 0000000..758804c
--- /dev/null
@@ -0,0 +1,7 @@
+// CS8146: `X.TestProp': property and indexer which return by reference must have a get accessor
+// Line: 6
+
+public class X
+{
+       ref string TestProp { set; }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8147-2.cs b/mcs/errors/cs8147-2.cs
new file mode 100644 (file)
index 0000000..a4375d2
--- /dev/null
@@ -0,0 +1,14 @@
+// CS8147: `X.this[int]': property and indexer which return by reference cannot have set accessors
+// Line: 6
+
+public class X
+{
+       ref string this [int arg] { 
+               set {
+
+               }
+               get {
+
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8147.cs b/mcs/errors/cs8147.cs
new file mode 100644 (file)
index 0000000..a006a4d
--- /dev/null
@@ -0,0 +1,14 @@
+// CS8147: `X.TestProp': property and indexer which return by reference cannot have set accessors
+// Line: 6
+
+public class X
+{
+       ref string TestProp { 
+               set {
+
+               }
+               get {
+
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8148-2.cs b/mcs/errors/cs8148-2.cs
new file mode 100644 (file)
index 0000000..1961026
--- /dev/null
@@ -0,0 +1,16 @@
+// CS8148: `B.Foo': must return by reference to match overridden member `A.Foo'
+// Line: 11
+
+public abstract class A
+{
+       public abstract ref int Foo { get; }
+}
+
+public class B : A
+{
+       public override long Foo {
+               get {
+                       throw null;
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8148.cs b/mcs/errors/cs8148.cs
new file mode 100644 (file)
index 0000000..1e91789
--- /dev/null
@@ -0,0 +1,15 @@
+// CS8148: `B.Foo()': must not return by reference to match overridden member `A.Foo()'
+// Line: 11
+
+public abstract class A
+{
+       public abstract int Foo ();
+}
+
+public class B : A
+{
+       public override ref int Foo ()
+       {
+
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8149-2.cs b/mcs/errors/cs8149-2.cs
new file mode 100644 (file)
index 0000000..3514769
--- /dev/null
@@ -0,0 +1,14 @@
+// CS8149: By-reference returns can only be used in lambda expressions that return by reference
+// Line: 12
+
+using System;
+
+class A
+{
+       int p;
+       
+       void Test ()
+       {
+               Action a = () => ref p;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8149.cs b/mcs/errors/cs8149.cs
new file mode 100644 (file)
index 0000000..351dd54
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8149: By-reference returns can only be used in methods that return by reference
+// Line: 10
+
+class A
+{
+       int p;
+
+       int Test ()
+       {
+               return ref p;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8150.cs b/mcs/errors/cs8150.cs
new file mode 100644 (file)
index 0000000..fd4ef7a
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8150: By-reference return is required when method returns by reference
+// Line: 10
+
+class A
+{
+       int p;
+
+       ref int Test ()
+       {
+               return p;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8151.cs b/mcs/errors/cs8151.cs
new file mode 100644 (file)
index 0000000..934faef
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8151: The return by reference expression must be of type `string' because this method returns by reference
+// Line: 10
+
+public class X
+{
+       int field;
+
+       ref string TestMethod ()
+       {
+               return ref field;
+       }
+}
diff --git a/mcs/errors/cs8152.cs b/mcs/errors/cs8152.cs
new file mode 100644 (file)
index 0000000..45546ad
--- /dev/null
@@ -0,0 +1,14 @@
+// CS8152: `C' does not implement interface member `IA.Foo()' and the best implementing candidate `C.Foo()' return type `void' does not return by reference
+// Line: 11
+
+interface IA
+{
+       ref char Foo ();
+}
+
+public class C : IA
+{
+       public void Foo ()
+       {
+       }
+}
diff --git a/mcs/errors/cs8153.cs b/mcs/errors/cs8153.cs
new file mode 100644 (file)
index 0000000..d36f110
--- /dev/null
@@ -0,0 +1,24 @@
+// CS8153: An expression tree lambda cannot contain a call to a method, property, or indexer that returns by reference
+// Line: 11
+
+using System;
+using System.Linq.Expressions;
+
+class X
+{
+       void Foo ()
+       {
+               Expression<Func<int>> e = () => Test (ref this[0]);
+       }
+
+       static int Test (ref int y)
+       {
+               return y;
+       }
+
+       ref int this [int y] {
+               get {
+                       throw null;
+               }
+       }
+}
diff --git a/mcs/errors/cs8154.cs b/mcs/errors/cs8154.cs
new file mode 100644 (file)
index 0000000..ed98513
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8154: The body of `TestClass.TestFunction()' cannot be an iterator block because the method returns by reference
+// Line: 10
+
+class TestClass
+{
+    int x;
+
+    ref int TestFunction()
+    {
+        yield return x;
+    }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8155.cs b/mcs/errors/cs8155.cs
new file mode 100644 (file)
index 0000000..45d8b4e
--- /dev/null
@@ -0,0 +1,16 @@
+// CS8155: Lambda expressions that return by reference cannot be converted to expression trees
+// Line: 14
+
+using System.Linq.Expressions;
+
+class TestClass
+{
+    static int x;
+
+    delegate ref int D ();
+
+    static void Main ()
+    {
+        Expression<D> e = () => ref x;
+    }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8156-2.cs b/mcs/errors/cs8156-2.cs
new file mode 100644 (file)
index 0000000..7507ec4
--- /dev/null
@@ -0,0 +1,16 @@
+// CS8156: An expression cannot be used in this context because it may not be returned by reference
+// Line: 8
+
+class X
+{
+       int Prop {
+               get {
+                       return 1;
+               }
+       }
+
+       ref int Test ()
+       {
+               return ref Prop;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8156.cs b/mcs/errors/cs8156.cs
new file mode 100644 (file)
index 0000000..fe3f6b7
--- /dev/null
@@ -0,0 +1,10 @@
+// CS8156: An expression cannot be used in this context because it may not be returned by reference
+// Line: 8
+
+class Test
+{
+       ref int Foo ()
+       {
+               return ref 2;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8157.cs b/mcs/errors/cs8157.cs
new file mode 100644 (file)
index 0000000..35d700f
--- /dev/null
@@ -0,0 +1,13 @@
+// CS8157: Cannot return `r' by reference because it was initialized to a value that cannot be returned by reference
+// Line: 11
+
+struct S
+{
+       int i;
+
+       ref int M ()
+       {
+               ref int r = ref i;
+               return ref r;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8160.cs b/mcs/errors/cs8160.cs
new file mode 100644 (file)
index 0000000..2b4ea42
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8160: A readonly field cannot be returned by reference
+// Line: 10
+
+class X
+{
+       readonly int f = 0;
+
+       ref int Test ()
+       {
+               return ref f;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8161.cs b/mcs/errors/cs8161.cs
new file mode 100644 (file)
index 0000000..0d028a1
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8161: A static readonly field cannot be returned by reference
+// Line: 10
+
+class X
+{
+       static readonly int f;
+
+       static ref int Test ()
+       {
+               return ref f;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8170-2.cs b/mcs/errors/cs8170-2.cs
new file mode 100644 (file)
index 0000000..dbd76a4
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8170:
+// Line: 10
+
+public struct S
+{
+       int f;
+
+       public ref S Foo ()
+       {
+               return ref f;
+       }
+}
diff --git a/mcs/errors/cs8170.cs b/mcs/errors/cs8170.cs
new file mode 100644 (file)
index 0000000..142e1a1
--- /dev/null
@@ -0,0 +1,10 @@
+// CS8170:
+// Line: 8
+
+public struct S
+{
+       public ref S Foo ()
+       {
+               return ref this;
+       }
+}
diff --git a/mcs/errors/cs8171.cs b/mcs/errors/cs8171.cs
new file mode 100644 (file)
index 0000000..36eae2c
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8171: Cannot initialize a by-value variable `l' with a reference expression
+// Line: 10
+
+class Test
+{
+       int field;
+
+       void Foo ()
+       {
+               int l = ref field;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8172.cs b/mcs/errors/cs8172.cs
new file mode 100644 (file)
index 0000000..7ddd383
--- /dev/null
@@ -0,0 +1,12 @@
+// CS8172: Cannot initialize a by-reference variable `j' with a value
+// Line: 10
+
+class X
+{
+       static int f;
+
+       public static void Main ()
+       {
+               ref int j = f;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8173.cs b/mcs/errors/cs8173.cs
new file mode 100644 (file)
index 0000000..7c7d894
--- /dev/null
@@ -0,0 +1,13 @@
+// CS8173: The expression must be of type `long' because it is being assigned by reference
+// Line: 11
+
+public class X
+{
+       int field;
+
+       public static void Main ()
+       {
+               int i = 5;
+               ref long j = ref i;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8174.cs b/mcs/errors/cs8174.cs
new file mode 100644 (file)
index 0000000..888711a
--- /dev/null
@@ -0,0 +1,10 @@
+// CS8174: A declaration of a by-reference variable must have an initializer
+// Line: 8
+
+class X
+{
+       public static void Main ()
+       {
+               ref int j;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8175.cs b/mcs/errors/cs8175.cs
new file mode 100644 (file)
index 0000000..4ef39db
--- /dev/null
@@ -0,0 +1,17 @@
+// CS8175: Cannot use by-reference variable `v' inside an anonymous method, lambda expression, or query expression
+// Line: 14
+
+using System;
+
+public class Test
+{
+       public static void Main()
+       {
+               var arr = new int [1];
+               ref var v = ref arr [0];
+
+               Action a = delegate {
+                       ref var v2 = ref v;
+               };
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8176.cs b/mcs/errors/cs8176.cs
new file mode 100644 (file)
index 0000000..514c0b2
--- /dev/null
@@ -0,0 +1,15 @@
+// CS8176: Iterators cannot use by-reference variables
+// Line: 12
+
+using System.Collections.Generic;
+
+class X
+{
+       int x;
+
+       IEnumerable<int> Test ()
+       {
+               ref int y = ref x;
+               yield break;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8177.cs b/mcs/errors/cs8177.cs
new file mode 100644 (file)
index 0000000..414ece1
--- /dev/null
@@ -0,0 +1,15 @@
+// CS8177: Async methods cannot use by-reference variables
+// Line: 12
+
+using System.Threading.Tasks;
+
+class X
+{
+       int x;
+
+       async Task Test ()
+       {
+               ref int y = ref x;
+               await Task.Yield ();
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8178-2.cs b/mcs/errors/cs8178-2.cs
new file mode 100644 (file)
index 0000000..e61b7d9
--- /dev/null
@@ -0,0 +1,20 @@
+// CS8178: `await' cannot be used in an expression containing a call to `X.this[int]' because it returns by reference
+// Line: 12
+
+using System.Threading.Tasks;
+
+class X
+{
+       int x;
+
+       async Task Test ()
+       {
+               Foo (ref this [await Task.FromResult (1)]);
+       }
+
+       ref int this [int arg] => ref x;
+
+       static void Foo (ref int arg)
+       {
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8178.cs b/mcs/errors/cs8178.cs
new file mode 100644 (file)
index 0000000..6f77962
--- /dev/null
@@ -0,0 +1,24 @@
+// CS8178: `await' cannot be used in an expression containing a call to `X.Wrap(int)' because it returns by reference
+// Line: 12
+
+using System.Threading.Tasks;
+
+class X
+{
+       int x;
+
+       async Task Test ()
+       {
+               Foo (ref Wrap (await Task.FromResult (1))) = 4;
+       }
+
+       ref int Wrap (int arg)
+       {
+               return ref x;
+       }
+
+       static ref int Foo (ref int arg)
+       {
+               return ref arg;
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8189.cs b/mcs/errors/cs8189.cs
new file mode 100644 (file)
index 0000000..909ec3b
--- /dev/null
@@ -0,0 +1,17 @@
+// CS8189: By reference return delegate does not match `C.D()' return type
+// Line: 15
+
+class C
+{
+       delegate ref int D ();
+
+       static int M ()
+       {
+               return 1;
+       }
+
+       static void Main ()
+       {
+               D d = new D (M);
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8303.cs b/mcs/errors/cs8303.cs
new file mode 100644 (file)
index 0000000..2761d41
--- /dev/null
@@ -0,0 +1,3 @@
+// CS8303: Specified language version `0.5' cannot have leading zeroes
+// Line: 0
+// Compiler options: -langversion:0.5
\ No newline at end of file
diff --git a/mcs/errors/cs8340-2.cs b/mcs/errors/cs8340-2.cs
new file mode 100644 (file)
index 0000000..9236e94
--- /dev/null
@@ -0,0 +1,13 @@
+// CS8340: `S.field': Instance fields in readonly structs must be readonly
+// Line: 6
+// Compiler options: -langversion:latest
+
+readonly partial struct S
+{
+
+}
+
+partial struct S
+{
+       int field;
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8340.cs b/mcs/errors/cs8340.cs
new file mode 100644 (file)
index 0000000..fb33767
--- /dev/null
@@ -0,0 +1,8 @@
+// CS8340: `S.field': Instance fields in readonly structs must be readonly
+// Line: 6
+// Compiler options: -langversion:latest
+
+readonly struct S
+{
+       int field;
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8341.cs b/mcs/errors/cs8341.cs
new file mode 100644 (file)
index 0000000..c784063
--- /dev/null
@@ -0,0 +1,8 @@
+// CS8341: Auto-implemented instance property `S.field' in readonly structs must be readonly
+// Line: 6
+// Compiler options: -langversion:latest
+
+readonly struct S
+{
+       int field { get; set; }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs8342.cs b/mcs/errors/cs8342.cs
new file mode 100644 (file)
index 0000000..d6d7f43
--- /dev/null
@@ -0,0 +1,10 @@
+// CS8342: `S.e': Field-like instance events are not allowed in readonly structs
+// Line: 6
+// Compiler options: -langversion:latest
+
+using System;
+
+readonly struct S
+{
+       event Action e;
+}
\ No newline at end of file
index 40f81ded9703c88ae78fa849f4db1d028545e0bf..c9ed9317350d471d891e70fc18423b7a99c1bd44 100644 (file)
@@ -22,3 +22,8 @@ cs8129.cs NO ERROR
 cs8141.cs
 cs8141-2.cs
 cs8144.cs
+cs8157.cs NO ERROR
+cs8160.cs
+cs8161.cs
+cs8170.cs NO ERROR
+cs8170-2.cs
index 3d6f8c0d4f0591f8baf6c06661ef245cd63f40e2..653bb388f7e819eb001935c6485f5045fec28b1c 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
       <PreprocessorDefinitions>SKEL_DIRECTORY=".";%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>copy $(OutDir)jay.exe $(ProjectDir)jay.exe</Command>\r
     </PostBuildEvent>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>copy $(OutDir)jay.exe $(ProjectDir)jay.exe</Command>\r
     </PostBuildEvent>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClCompile Include="closure.c" />\r
index 00fd56d8a64a23743451fc6b829f07abe77f3cec..8421b4dfbfcc766e11af46e124c59be508d68165 100644 (file)
@@ -104,12 +104,17 @@ namespace Mono.CSharp
                        return Clone (Expr.Clone (clonectx));
                }
 
-               public virtual Expression CreateExpressionTree (ResolveContext ec)
+               public virtual Expression CreateExpressionTree (ResolveContext rc)
                {
+                       if (Type.Kind == MemberKind.ByRef) {
+                               rc.Report.Error (8153, Expr.Location, "An expression tree lambda cannot contain a call to a method, property, or indexer that returns by reference");
+                               return null;
+                       }
+
                        if (ArgType == AType.Default)
-                               ec.Report.Error (854, Expr.Location, "An expression tree cannot contain an invocation which uses optional parameter");
+                               rc.Report.Error (854, Expr.Location, "An expression tree cannot contain an invocation which uses optional parameter");
 
-                       return Expr.CreateExpressionTree (ec);
+                       return Expr.CreateExpressionTree (rc);
                }
 
 
@@ -126,12 +131,16 @@ namespace Mono.CSharp
                                return;
                        }
 
+                       if (Expr.Type.Kind == MemberKind.ByRef) {
+                               Expr.Emit (ec);
+                               return;
+                       }
+
                        AddressOp mode = AddressOp.Store;
                        if (ArgType == AType.Ref)
                                mode |= AddressOp.Load;
 
-                       IMemoryLocation ml = (IMemoryLocation) Expr;
-                       ml.AddressOf (ec, mode);
+                       ((IMemoryLocation)Expr).AddressOf (ec, mode);
                }
 
                public Argument EmitToField (EmitContext ec, bool cloneResult)
@@ -421,17 +430,19 @@ namespace Mono.CSharp
                        return all;
                }
 
-               public static Arguments CreateForExpressionTree (ResolveContext ec, Arguments args, params Expression[] e)
+               public static Arguments CreateForExpressionTree (ResolveContext rc, Arguments args, params Expression[] e)
                {
                        Arguments all = new Arguments ((args == null ? 0 : args.Count) + e.Length);
                        for (int i = 0; i < e.Length; ++i) {
-                               if (e [i] != null)
-                                       all.Add (new Argument (e[i]));
+                               var expr = e [i];
+                               if (expr != null) {
+                                       all.Add (new Argument (expr));
+                               }
                        }
 
                        if (args != null) {
                                foreach (Argument a in args.args) {
-                                       Expression tree_arg = a.CreateExpressionTree (ec);
+                                       Expression tree_arg = a.CreateExpressionTree (rc);
                                        if (tree_arg != null)
                                                all.Add (new Argument (tree_arg));
                                }
index ca142609003dc480033ea2ae6be3e5182266453d..3ff2d68ccb5ad38964c23c0890f4372c9a4406ef 100644 (file)
@@ -1755,6 +1755,9 @@ namespace Mono.CSharp {
                // New in .NET 4.7
                public readonly PredefinedTupleElementNamesAttribute TupleElementNames;
 
+               // New in .NET 4.7.1
+               public readonly PredefinedAttribute IsReadOnly;
+
                //
                // Optional types which are used as types and for member lookup
                //
@@ -1835,6 +1838,7 @@ namespace Mono.CSharp {
                        CallerFilePathAttribute = new PredefinedAttribute (module, "System.Runtime.CompilerServices", "CallerFilePathAttribute");
 
                        TupleElementNames = new PredefinedTupleElementNamesAttribute (module, "System.Runtime.CompilerServices", "TupleElementNamesAttribute");
+                       IsReadOnly = new PredefinedAttribute (module, "System.Runtime.CompilerServices", "IsReadOnlyAttribute");
 
                        // TODO: Should define only attributes which are used for comparison
                        const System.Reflection.BindingFlags all_fields = System.Reflection.BindingFlags.Public |
index 48b1c6921f3c897fe0b8e5780e59fe5f34a514aa..9afb32c6fe5677d71cdd7632d08c79a43302e040 100644 (file)
@@ -3022,7 +3022,8 @@ namespace Mono.CSharp
                        Modifiers.PROTECTED |
                        Modifiers.INTERNAL  |
                        Modifiers.UNSAFE    |
-                       Modifiers.PRIVATE;
+                       Modifiers.PRIVATE   |
+                       Modifiers.READONLY;
 
                public Struct (TypeContainer parent, MemberName name, Modifiers mod, Attributes attrs)
                        : base (parent, name, attrs, MemberKind.Struct)
@@ -3135,6 +3136,9 @@ namespace Mono.CSharp
 
                public override void Emit ()
                {
+                       if ((ModFlags & Modifiers.READONLY) != 0)
+                               Module.PredefinedAttributes.IsReadOnly.EmitAttribute (TypeBuilder);
+
                        CheckStructCycles ();
 
                        base.Emit ();
@@ -3527,7 +3531,10 @@ namespace Mono.CSharp
                        var base_member_type = ((IInterfaceMemberSpec)base_member).MemberType;
                        if (!TypeSpecComparer.Override.IsEqual (MemberType, base_member_type)) {
                                Report.SymbolRelatedToPreviousError (base_member);
-                               if (this is PropertyBasedMember) {
+                               if (((base_member_type.Kind ^ MemberType.Kind) & MemberKind.ByRef) != 0) {
+                                       Report.Error (8148, Location, "`{0}': must {2}return by reference to match overridden member `{1}'",
+                                                     GetSignatureForError (), base_member.GetSignatureForError (), base_member_type.Kind == MemberKind.ByRef ? "" : "not ");
+                               } else if (this is PropertyBasedMember) {
                                        Report.Error (1715, Location, "`{0}': type must be `{1}' to match overridden member `{2}'",
                                                GetSignatureForError (), base_member_type.GetSignatureForError (), base_member.GetSignatureForError ());
                                } else {
index 8fe0e2026ca5842fdc286d456bf41a536f79456b..b11477c104394b7bc77075d6e4fa02827797529e 100644 (file)
@@ -1503,6 +1503,11 @@ namespace Mono.CSharp {
                                        return null;
                        }
 
+                       if (expr is ReferenceExpression) {
+                               // Only identify conversion is allowed
+                               return null;
+                       }
+
                        e = ImplicitNumericConversion (expr, expr_type, target_type);
                        if (e != null)
                                return e;
index 5f885a77763b8ccebc07be47fb643c310be926f5..6e20a8b13f0aeedac01b0a29afcb61722a4b34c1 100644 (file)
@@ -1020,13 +1020,16 @@ struct_declaration
          opt_modifiers
          opt_partial
          STRUCT
-         {
-         }
          type_declaration_name
-         { 
+         {
+               var mods = (Modifiers) $2;
+               if ((mods & Modifiers.READONLY) != 0 && lang_version < LanguageVersion.V_7_2) {
+                       FeatureIsNotAvailable (GetLocation ($4), "readonly structs");
+               }
+
                lexer.ConstraintsParsing = true;
                valid_param_mod = ParameterModifierType.PrimaryConstructor;
-               push_current_container (new Struct (current_container, (MemberName) $6, (Modifiers) $2, (Attributes) $1), $3);
+               push_current_container (new Struct (current_container, (MemberName) $5, mods, (Attributes) $1), $3);
          }
          opt_primary_parameters
          opt_class_base
@@ -1035,11 +1038,11 @@ struct_declaration
                valid_param_mod = 0;
                lexer.ConstraintsParsing = false;
 
-               if ($8 != null)
-                       current_type.PrimaryConstructorParameters = (ParametersCompiled) $8;
+               if ($7 != null)
+                       current_type.PrimaryConstructorParameters = (ParametersCompiled) $7;
 
-               if ($10 != null)
-                       current_container.SetConstraints ((List<Constraints>) $10);
+               if ($9 != null)
+                       current_container.SetConstraints ((List<Constraints>) $9);
 
                if (doc_support)
                        current_container.PartialContainer.DocComment = Lexer.consume_doc_comment ();
@@ -1061,10 +1064,10 @@ struct_declaration
          }
          opt_semicolon
          {
-               if ($16 == null) {
-                       lbag.AppendToMember (current_container, GetLocation ($12), GetLocation ($15));
+               if ($15 == null) {
+                       lbag.AppendToMember (current_container, GetLocation ($11), GetLocation ($14));
                } else {
-                       lbag.AppendToMember (current_container, GetLocation ($12), GetLocation ($15), GetLocation ($17));
+                       lbag.AppendToMember (current_container, GetLocation ($11), GetLocation ($14), GetLocation ($16));
                }
                $$ = pop_current_class ();
          }
@@ -1161,7 +1164,7 @@ constant_initializer_expr
 field_declaration
        : opt_attributes
          opt_modifiers
-         member_type IDENTIFIER
+         ref_member_type IDENTIFIER
          {
                lexer.parsing_generic_declaration = false;
 
@@ -1364,10 +1367,29 @@ method_declaration
          }
        ;
 
+ref_member_type
+       : member_type
+         {
+               $$ = $1;
+         }
+       | REF
+         {
+               lexer.parsing_generic_declaration = true;
+         }
+         type
+         {
+               if (lang_version < LanguageVersion.V_7) {
+                       FeatureIsNotAvailable (GetLocation ($1), "byref locals and returns");
+               }
+
+               $$ = new ReferenceTypeExpr ((FullNamedExpression) $3, GetLocation ($1));
+         }
+       ;
+
 method_header
        : opt_attributes
          opt_modifiers
-         member_type
+         ref_member_type
          method_declaration_name OPEN_PARENS
          {
                valid_param_mod = ParameterModifierType.All;
@@ -1452,7 +1474,7 @@ method_header
          }
        | opt_attributes
          opt_modifiers
-         member_type
+         ref_member_type
          modifiers method_declaration_name OPEN_PARENS opt_formal_parameter_list CLOSE_PARENS
          {
                MemberName name = (MemberName) $5;
@@ -1473,7 +1495,7 @@ method_header
          }
        | opt_attributes
          opt_modifiers
-         member_type
+         ref_member_type
          method_declaration_name error
          {
                Error_SyntaxError (yyToken);
@@ -1534,7 +1556,7 @@ expression_block
                ++lexer.parsing_block;
                start_block (GetLocation ($1));
         }
-        expression SEMICOLON
+        lambda_arrow_expression SEMICOLON
         {
                lexer.parsing_block = 0;
                current_block.AddStatement (new ContextualReturn ((Expression) $3));
@@ -1838,7 +1860,7 @@ arglist_modifier
 property_declaration
        : opt_attributes
          opt_modifiers
-         member_type
+         ref_member_type
          member_declaration_name
          {
                lexer.parsing_generic_declaration = false;
@@ -1865,6 +1887,16 @@ property_declaration
 
                if (doc_support)
                        current_property.DocComment = ConsumeStoredComment ();
+
+               if ($3 is ReferenceTypeExpr) {
+                       if (current_property.Get == null) {
+                               report.Error (8146, GetLocation ($4), "`{0}': property and indexer which return by reference must have a get accessor", current_property.GetSignatureForError ());
+                       }
+
+                       if (current_property.Set != null) {
+                               report.Error (8147, GetLocation ($4), "`{0}': property and indexer which return by reference cannot have set accessors", current_property.GetSignatureForError ());
+                       }
+               }
          }
          CLOSE_BRACE
          {
@@ -1877,7 +1909,7 @@ property_declaration
          }
        | opt_attributes
          opt_modifiers
-         member_type
+         ref_member_type
          member_declaration_name
          {
                lexer.parsing_generic_declaration = false;
@@ -1939,7 +1971,7 @@ property_initializer
 
 indexer_declaration
        : opt_attributes opt_modifiers
-         member_type indexer_declaration_name OPEN_BRACKET
+         ref_member_type indexer_declaration_name OPEN_BRACKET
          {
                valid_param_mod = ParameterModifierType.Params | ParameterModifierType.DefaultValue;
          }
@@ -1979,6 +2011,16 @@ indexer_declaration
          
                if (doc_support)
                        current_property.DocComment = ConsumeStoredComment ();
+
+               if ($3 is ReferenceTypeExpr) {
+                       if (current_property.Get == null) {
+                               report.Error (8146, GetLocation ($4), "`{0}': property and indexer which return by reference must have a get accessor", current_property.GetSignatureForError ());
+                       }
+
+                       if (current_property.Set != null) {
+                               report.Error (8147, GetLocation ($4), "`{0}': property and indexer which return by reference cannot have set accessors", current_property.GetSignatureForError ());
+                       }
+               }
                        
                current_property = null;                
          }
@@ -2938,7 +2980,7 @@ delegate_declaration
        : opt_attributes
          opt_modifiers
          DELEGATE
-         member_type type_declaration_name
+         ref_member_type type_declaration_name
          OPEN_PARENS
          {
                valid_param_mod = ParameterModifierType.Ref | ParameterModifierType.Out | ParameterModifierType.Params | ParameterModifierType.DefaultValue;
@@ -5109,7 +5151,7 @@ lambda_expression_body
        : {
                start_block (Location.Null);
          }
-         expression    // All expressions must handle error or current block won't be restored and breaking ast completely
+         lambda_arrow_expression       // All expressions must handle error or current block won't be restored and breaking ast completely
          {
                Block b = end_block (Location.Null);
                b.IsCompilerGenerated = true;
@@ -5129,6 +5171,11 @@ lambda_expression_body
          }
        ;
 
+lambda_arrow_expression
+       : expression
+       | reference_expression
+       ;
+
 expression_or_error
        : expression
        | error
@@ -5939,6 +5986,28 @@ block_variable_declaration
                current_variable = null;
                lbag.AddLocation ($$, GetLocation ($1), GetLocation ($7));
          }
+       | REF variable_type identifier_inside_body
+         {
+               if (lang_version < LanguageVersion.V_7) {
+                       FeatureIsNotAvailable (GetLocation ($1), "byref locals and returns");
+               }
+
+               var lt = (LocatedToken) $3;
+               var li = new LocalVariable (current_block, lt.Value, LocalVariable.Flags.ByRef, lt.Location);
+               current_block.AddLocalName (li);
+               current_variable = new BlockVariable ((FullNamedExpression) $2, li);
+         }
+         opt_local_variable_initializer opt_variable_declarators SEMICOLON
+         {
+               $$ = current_variable;
+               current_variable = null;
+               if ($5 != null) {
+                       lbag.AddLocation ($$, PopLocation (), GetLocation ($7));
+               } else {
+                       report.Error (8174, GetLocation ($3), "A declaration of a by-reference variable must have an initializer");
+                       lbag.AddLocation ($$, GetLocation ($7));
+               }
+         }
        ;
 
 opt_local_variable_initializer
@@ -6047,6 +6116,18 @@ block_variable_initializer
                report.Error (1575, GetLocation ($1), "A stackalloc expression requires [] after type");
                $$ = new StackAlloc ((Expression) $2, null, GetLocation ($1));          
          }
+       | reference_expression
+       ;
+
+reference_expression
+       : REF expression
+         {
+               if (lang_version < LanguageVersion.V_7) {
+                       FeatureIsNotAvailable (GetLocation ($1), "byref locals and returns");
+               }
+
+               $$ = new ReferenceExpression ((Expression) $2, GetLocation ($1));
+         }
        ;
 
 expression_statement
@@ -6522,6 +6603,11 @@ return_statement
                $$ = new Return ((Expression) $2, GetLocation ($1));
                lbag.AddStatement ($$, GetLocation ($3));
          }
+       | RETURN reference_expression SEMICOLON
+         {
+               $$ = new Return ((Expression) $2, GetLocation ($1));
+               lbag.AddStatement ($$, GetLocation ($3));
+         }
        | RETURN expression error
          {
                Error_SyntaxError (yyToken);
index 368bb19c1b165d507f90e877ec40a5b993217093..80eb7e265f1395bec67ce6ba117212b0474a80b5 100644 (file)
@@ -587,8 +587,7 @@ namespace Mono.CSharp {
                                rt = ec.BuiltinTypes.Object;
 
                        if (!Delegate.IsTypeCovariant (ec, rt, invoke_method.ReturnType)) {
-                               Expression ret_expr = new TypeExpression (delegate_method.ReturnType, loc);
-                               Error_ConversionFailed (ec, delegate_method, ret_expr);
+                               Error_ConversionFailed (ec, delegate_method, delegate_method.ReturnType);
                        }
 
                        if (method_group.IsConditionallyExcluded) {
@@ -639,7 +638,7 @@ namespace Mono.CSharp {
                        method_group.FlowAnalysis (fc);
                }
 
-               void Error_ConversionFailed (ResolveContext ec, MethodSpec method, Expression return_type)
+               void Error_ConversionFailed (ResolveContext ec, MethodSpec method, TypeSpec return_type)
                {
                        var invoke_method = Delegate.GetInvokeMethod (type);
                        string member_name = method_group.InstanceExpression != null ?
@@ -661,6 +660,12 @@ namespace Mono.CSharp {
                                return;
                        }
 
+                       if (invoke_method.ReturnType.Kind == MemberKind.ByRef) {
+                               ec.Report.Error (8189, loc, "By reference return delegate does not match `{0}' return type",
+                                       Delegate.FullDelegateDesc (invoke_method));
+                               return;
+                       }
+
                        ec.Report.Error (407, loc, "A method or delegate `{0} {1}' return type does not match delegate `{2} {3}' return type",
                                return_type.GetSignatureForError (), member_name,
                                invoke_method.ReturnType.GetSignatureForError (), Delegate.FullDelegateDesc (invoke_method));
index 9486475305452e2ab5c326d264e3f0954e58a661..34ff9a30dab3cb423f4b9f64b7a7640d67a2b56a 100644 (file)
@@ -303,7 +303,12 @@ namespace Mono.CSharp {
                                return;
 
                        string from_type = type.GetSignatureForError ();
+                       if (type.Kind == MemberKind.ByRef)
+                               from_type = "ref " + from_type;
                        string to_type = target.GetSignatureForError ();
+                       if (target.Kind == MemberKind.ByRef)
+                               to_type = "ref " + to_type;
+
                        if (from_type == to_type) {
                                from_type = type.GetSignatureForErrorIncludingAssemblyName ();
                                to_type = target.GetSignatureForErrorIncludingAssemblyName ();
@@ -559,18 +564,18 @@ namespace Mono.CSharp {
                public Expression ResolveLValue (ResolveContext ec, Expression right_side)
                {
                        int errors = ec.Report.Errors;
-                       bool out_access = right_side == EmptyExpression.OutAccess;
+                       //bool out_access = right_side == EmptyExpression.OutAccess;
 
                        Expression e = DoResolveLValue (ec, right_side);
 
-                       if (e != null && out_access && !(e is IMemoryLocation)) {
+                       //if (e != null && out_access && !(e is IMemoryLocation)) {
                                // FIXME: There's no problem with correctness, the 'Expr = null' handles that.
                                //        Enabling this 'throw' will "only" result in deleting useless code elsewhere,
 
                                //throw new InternalErrorException ("ResolveLValue didn't return an IMemoryLocation: " +
                                //                                e.GetType () + " " + e.GetSignatureForError ());
-                               e = null;
-                       }
+                       //      e = null;
+                       //}
 
                        if (e == null) {
                                if (errors == ec.Report.Errors) {
@@ -5417,6 +5422,11 @@ namespace Mono.CSharp {
                                        if (arg_type == InternalType.VarOutType)
                                                return 0;
 
+                                       var ref_arg_type = arg_type as ReferenceContainer;
+                                       if (ref_arg_type != null) {
+                                               arg_type = ref_arg_type.Element;
+                                       }
+
                                        //
                                        // Do full equality check after quick path
                                        //
@@ -5982,13 +5992,13 @@ namespace Mono.CSharp {
                        int arg_count = args == null ? 0 : args.Count;
 
                        for (; a_idx < arg_count; a_idx++, ++a_pos) {
-                               a = args[a_idx];
+                               a = args [a_idx];
                                if (a == null)
                                        continue;
 
                                if (p_mod != Parameter.Modifier.PARAMS) {
                                        p_mod = cpd.FixedParameters [a_idx].ModFlags;
-                                       pt = ptypes[a_idx];
+                                       pt = ptypes [a_idx];
                                        has_unsafe_arg |= pt.IsPointer;
 
                                        if (p_mod == Parameter.Modifier.PARAMS) {
@@ -6018,6 +6028,14 @@ namespace Mono.CSharp {
                                                continue;
                                        }
 
+                                       var ref_arg_type = arg_type as ReferenceContainer;
+                                       if (ref_arg_type != null) {
+                                               if (ref_arg_type.Element != pt)
+                                                       break;
+
+                                               return true;
+                                       }
+
                                        if (!TypeSpecComparer.IsEqual (arg_type, pt))
                                                break;
                                }
@@ -6525,12 +6543,12 @@ namespace Mono.CSharp {
                                                GetSignatureForError ());
                                }
 
-                               return null;
+                               return ErrorExpression.Instance;
                        }
 
                        if (right_side == EmptyExpression.LValueMemberAccess) {
                                // Already reported as CS1648/CS1650
-                               return null;
+                               return ErrorExpression.Instance;
                        }
 
                        if (right_side == EmptyExpression.LValueMemberOutAccess) {
@@ -6541,7 +6559,7 @@ namespace Mono.CSharp {
                                        rc.Report.Error (1649, loc, "Members of readonly field `{0}' cannot be passed ref or out (except in a constructor)",
                                                GetSignatureForError ());
                                }
-                               return null;
+                               return ErrorExpression.Instance;
                        }
 
                        if (IsStatic) {
@@ -6552,7 +6570,7 @@ namespace Mono.CSharp {
                                        GetSignatureForError ());
                        }
 
-                       return null;
+                       return ErrorExpression.Instance;
                }
 
                public override Expression DoResolveLValue (ResolveContext ec, Expression right_side)
@@ -7341,6 +7359,15 @@ namespace Mono.CSharp {
                                Error_NullPropagatingLValue (rc);
 
                        if (right_side == EmptyExpression.OutAccess) {
+                               if (best_candidate?.MemberType.Kind == MemberKind.ByRef) {
+                                       if (Arguments?.ContainsEmitWithAwait () == true) {
+                                               rc.Report.Error (8178, loc, "`await' cannot be used in an expression containing a call to `{0}' because it returns by reference",
+                                                       GetSignatureForError ());
+                                       }
+
+                                       return this;
+                               }
+
                                // TODO: best_candidate can be null at this point
                                INamedBlockVariable variable = null;
                                if (best_candidate != null && rc.CurrentBlock.ParametersBlock.TopBlock.GetLocalName (best_candidate.Name, rc.CurrentBlock, ref variable) && variable is Linq.RangeVariable) {
@@ -7367,6 +7394,11 @@ namespace Mono.CSharp {
                                if (ResolveAutopropertyAssignment (rc, right_side))
                                        return this;
 
+                               if (best_candidate.MemberType.Kind == MemberKind.ByRef) {
+                                       getter = CandidateToBaseOverride (rc, best_candidate.Get);
+                                       return ByRefDereference.Create(this).Resolve(rc);
+                               }
+
                                rc.Report.Error (200, loc, "Property or indexer `{0}' cannot be assigned to (it is read-only)",
                                        GetSignatureForError ());
                                return null;
index 113ed29910c155493a769098bc9e058a05712a96..89207a3b54a26868eeadd5b13ed7110a4e9f768e 100644 (file)
@@ -6562,18 +6562,19 @@ namespace Mono.CSharp
                                return;
                        }
 
+                       bool dereference = IsRef && !(source is ReferenceExpression);
                        New n_source = source as New;
                        if (n_source != null && n_source.CanEmitOptimizedLocalTarget (ec)) {
                                if (!n_source.Emit (ec, this)) {
                                        if (leave_copy) {
                                                EmitLoad (ec);
-                                               if (IsRef)
+                                               if (dereference)
                                                        ec.EmitLoadFromPtr (type);
                                        }
                                        return;
                                }
                        } else {
-                               if (IsRef)
+                               if (dereference)
                                        EmitLoad (ec);
 
                                source.Emit (ec);
@@ -6581,13 +6582,13 @@ namespace Mono.CSharp
 
                        if (leave_copy) {
                                ec.Emit (OpCodes.Dup);
-                               if (IsRef) {
+                               if (dereference) {
                                        temp = new LocalTemporary (Type);
                                        temp.Store (ec);
                                }
                        }
 
-                       if (IsRef)
+                       if (dereference)
                                ec.EmitStoreFromPtr (type);
                        else
                                Variable.EmitAssign (ec);
@@ -6671,7 +6672,7 @@ namespace Mono.CSharp
                }
 
                public override bool IsRef {
-                       get { return false; }
+                       get { return local_info.IsByRef; }
                }
 
                public override string Name {
@@ -6712,7 +6713,11 @@ namespace Mono.CSharp
                                        AnonymousMethodExpression.Error_AddressOfCapturedVar (ec, this, loc);
                                } else if (local_info.IsFixed) {
                                        ec.Report.Error (1764, loc,
-                                               "Cannot use fixed local `{0}' inside an anonymous method, lambda expression or query expression",
+                                               "Cannot use fixed variable `{0}' inside an anonymous method, lambda expression or query expression",
+                                               GetSignatureForError ());
+                               } else if (local_info.IsByRef) {
+                                       ec.Report.Error (8175, loc,
+                                               "Cannot use by-reference variable `{0}' inside an anonymous method, lambda expression, or query expression",
                                                GetSignatureForError ());
                                }
 
@@ -7134,7 +7139,7 @@ namespace Mono.CSharp
                protected override Expression DoResolve (ResolveContext rc)
                {
                        ResolveConditionalAccessReceiver (rc);
-                       return DoResolveInvocation (rc);
+                       return DoResolveInvocation (rc, null);
                }
 
                public override Expression DoResolveLValue (ResolveContext rc, Expression right_side)
@@ -7161,10 +7166,21 @@ namespace Mono.CSharp
                                return res.Resolve (rc);
                        }
 
+                       if (right_side != null) {
+                               if (eclass != ExprClass.Unresolved)
+                                       return this;
+
+                               var res = DoResolveInvocation (rc, right_side);
+                               if (res == null)
+                                       return null;
+
+                               return res;
+                       }
+
                        return base.DoResolveLValue (rc, right_side);
                }
 
-               Expression DoResolveInvocation (ResolveContext ec)
+               Expression DoResolveInvocation (ResolveContext ec, Expression rhs)
                {
                        Expression member_expr;
                        var atn = expr as ATypeNameExpression;
@@ -7260,6 +7276,17 @@ namespace Mono.CSharp
                        IsSpecialMethodInvocation (ec, method, loc);
                        
                        eclass = ExprClass.Value;
+
+                       if (type.Kind == MemberKind.ByRef) {
+                               if (rhs == null && arguments?.ContainsEmitWithAwait () == true) {
+                                       ec.Report.Error (8178, loc, "`await' cannot be used in an expression containing a call to `{0}' because it returns by reference",
+                                               GetSignatureForError ());
+                               }
+
+                               if (rhs != EmptyExpression.OutAccess)
+                                       return ByRefDereference.Create (this).Resolve (ec);
+                       }
+
                        return this;
                }
 
@@ -8978,7 +9005,7 @@ namespace Mono.CSharp
                        if (eclass == ExprClass.Unresolved)
                                ResolveBase (ec);
 
-                       if (type.IsClass){
+                       if (type.IsClass || type.IsReadOnly) {
                                if (right_side == EmptyExpression.UnaryAddress)
                                        ec.Report.Error (459, loc, "Cannot take the address of `this' because it is read-only");
                                else if (right_side == EmptyExpression.OutAccess)
@@ -11591,6 +11618,39 @@ namespace Mono.CSharp
                }
        }
 
+       class ReferenceTypeExpr : TypeExpr
+       {
+               FullNamedExpression element;
+
+               public ReferenceTypeExpr (FullNamedExpression element, Location loc)
+               {
+                       this.element = element;
+                       this.loc = loc;
+               }
+
+               public override TypeSpec ResolveAsType (IMemberContext mc, bool allowUnboundTypeArguments = false)
+               {
+                       type = element.ResolveAsType (mc);
+                       if (type == null)
+                               return null;
+
+                       eclass = ExprClass.Type;
+                       type = ReferenceContainer.MakeType (mc.Module, type);
+
+                       return type;
+               }
+
+               public override string GetSignatureForError ()
+               {
+                       return "ref " + element.GetSignatureForError ();
+               }
+
+               public override object Accept (StructuralVisitor visitor)
+               {
+                       return visitor.Visit (this);
+               }
+       }
+
        class FixedBufferPtr : Expression
        {
                readonly Expression array;
@@ -12918,4 +12978,146 @@ namespace Mono.CSharp
                        return Reachability.CreateUnreachable ();
                }
        }
+
+       class ReferenceExpression : CompositeExpression
+       {
+               public ReferenceExpression (Expression expr, Location loc)
+                       : base (expr)
+               {
+                       this.loc = loc;
+               }
+
+               static bool CanBeByRef (Expression expr)
+               {
+                       if (expr is IAssignMethod)
+                               return true;
+
+                       var invocation = expr as Invocation;
+                       if (invocation?.Type.Kind == MemberKind.ByRef)
+                               return true;
+
+                       return false;
+               }
+
+               public override Expression CreateExpressionTree (ResolveContext rc)
+               {
+                       throw new NotSupportedException ("ET");
+               }
+
+               protected override Expression DoResolve (ResolveContext rc)
+               {
+                       var res = expr.DoResolveLValue (rc, EmptyExpression.OutAccess);
+                       if (res == null || !CanBeByRef (res)) {
+                               if (res?.Type != InternalType.ErrorType)
+                                       rc.Report.Error (8156, expr.Location, "An expression cannot be used in this context because it may not be returned by reference");
+                               return ErrorExpression.Instance;
+                       }
+
+                       type = res.Type;
+                       var type_container = type as ReferenceContainer;
+                       if (type_container != null)
+                               type = type_container.Element;
+
+                       expr = res;
+                       eclass = ExprClass.Value;
+                       return this;
+               }
+
+               public override void Emit (EmitContext ec)
+               {
+                       var ml = expr as IMemoryLocation;
+                       if (ml != null)
+                               ml.AddressOf (ec, AddressOp.LoadStore);
+                       else
+                               expr.Emit (ec);
+               }
+
+               public override void Error_ValueCannotBeConverted (ResolveContext rc, TypeSpec target, bool expl)
+               {
+                       rc.Report.Error (8173, loc, "The expression must be of type `{0}' because it is being assigned by reference", target.GetSignatureForError ());
+               }
+       }
+
+       class ByRefDereference : CompositeExpression, IMemoryLocation, IAssignMethod
+       {
+               bool prepared;
+               LocalTemporary temporary;
+
+               private ByRefDereference (Expression expr)
+                       : base (expr)
+               {
+               }
+
+               public static Expression Create (Expression expr)
+               {
+                       var rc = expr.Type as ReferenceContainer;
+                       if (rc == null)
+                               return expr;
+
+                       return new ByRefDereference (expr) {
+                               type = rc.Element
+                       };
+               }
+
+               public void AddressOf (EmitContext ec, AddressOp mode)
+               {
+                       expr.Emit (ec);
+               }
+
+               public void Emit (EmitContext ec, bool leave_copy)
+               {
+                       Emit (ec);
+                       if (leave_copy) {
+                               ec.Emit (OpCodes.Dup);
+                               temporary = new LocalTemporary (type);
+                               temporary.Store (ec);
+                       }
+               }
+
+               public void EmitAssign (EmitContext ec, Expression source, bool leave_copy, bool isCompound)
+               {
+                       prepared = isCompound;
+
+                       expr.Emit (ec);
+
+                       if (isCompound)
+                               ec.Emit (OpCodes.Dup);
+                       
+                       source.Emit (ec);
+                       if (leave_copy) {
+                               throw new NotImplementedException ("leave_copy");
+                       }
+                       
+                       ec.EmitStoreFromPtr (type);
+                       
+                       if (temporary != null) {
+                               temporary.Emit (ec);
+                               temporary.Release (ec);
+                       }
+               }
+
+               protected override Expression DoResolve (ResolveContext rc)
+               {
+                       eclass = ExprClass.Variable;
+                       return this;
+               }
+
+               public override Expression DoResolveLValue (ResolveContext rc, Expression right_side)
+               {
+                       return DoResolve (rc);
+               }
+
+               public override void Emit (EmitContext ec)
+               {
+                       if (!prepared)
+                               base.Emit(ec);
+                       
+                       ec.EmitLoadFromPtr (type);
+               }
+
+               public override object Accept (StructuralVisitor visitor)
+               {
+                       return visitor.Visit (this);
+               }
+       }
 }
index da337a8261ab40ed86f89ad0d63b53e2aec3c2cc..86bb028defcb766e3d46d3ff6bed497962cb470b 100644 (file)
@@ -700,6 +700,16 @@ namespace Mono.CSharp
                        return true;
                }
 
+               protected override void DoMemberTypeIndependentChecks ()
+               {
+                       if ((Parent.PartialContainer.ModFlags & Modifiers.READONLY) != 0 && (ModFlags & (Modifiers.READONLY | Modifiers.STATIC)) == 0) {
+                               Report.Error (8340, Location, "`{0}': Instance fields in readonly structs must be readonly",
+                                       GetSignatureForError ());
+                       }
+
+                       base.DoMemberTypeIndependentChecks ();
+               }
+
                protected override void DoMemberTypeDependentChecks ()
                {
                        if ((ModFlags & Modifiers.BACKING_FIELD) != 0)
index 1efba64ba575caf08f33deae99bafc47c5fc4e3f..625cd0c773f0588fefcd0b3055c1ddbc20d0e44a 100644 (file)
@@ -1543,6 +1543,9 @@ namespace Mono.CSharp {
                                        if (ec is PointerContainer)
                                                return PointerContainer.MakeType (context.Module, et);
 
+                                       if (ec is ReferenceContainer)
+                                               return ReferenceContainer.MakeType (context.Module, et);
+                                       
                                        throw new NotImplementedException ();
                                }
 
index 719ba23952cd714f0021ef68335b081af7a94640..1cddf7c01f4b8478f80c0a158e47a25a1b688873 100644 (file)
@@ -959,7 +959,8 @@ namespace Mono.CSharp
                                        }
                                }
 
-                               if (kind == MemberKind.Class) {
+                               switch (kind) {
+                               case MemberKind.Class:
                                        if ((ma & TypeAttributes.Sealed) != 0) {
                                                if ((ma & TypeAttributes.Abstract) != 0)
                                                        mod |= Modifiers.STATIC;
@@ -968,6 +969,13 @@ namespace Mono.CSharp
                                        } else if ((ma & TypeAttributes.Abstract) != 0) {
                                                mod |= Modifiers.ABSTRACT;
                                        }
+                                       break;
+                               case MemberKind.Struct:
+                                       if (HasAttribute (CustomAttributeData.GetCustomAttributes (type), "IsReadOnlyAttribute", CompilerServicesNamespace)) {
+                                               mod |= Modifiers.READONLY;
+                                       }
+
+                                       break;
                                }
                        }
 
index c0ccf129e74a77fd44b33e4c702b9e69412cd1e6..feb10844b8c7f0eac017a4454d3d7bf8a5d426b2 100644 (file)
@@ -1187,11 +1187,15 @@ namespace Mono.CSharp
                                return;
 
                        if (!CheckType (ret, parent, out iterator_type, out is_enumerable)) {
-                               parent.Compiler.Report.Error (1624, method.Location,
-                                             "The body of `{0}' cannot be an iterator block " +
-                                             "because `{1}' is not an iterator interface type",
-                                             method.GetSignatureForError (),
-                                             ret.GetSignatureForError ());
+                               if (ret.Kind == MemberKind.ByRef) {
+                                       parent.Compiler.Report.Error (8154, method.Location,
+                                                         "The body of `{0}' cannot be an iterator block because the method returns by reference",
+                                                         method.GetSignatureForError ());
+                               } else {
+                                       parent.Compiler.Report.Error (1624, method.Location,
+                                                         "The body of `{0}' cannot be an iterator block because `{1}' is not an iterator interface type",
+                                                         method.GetSignatureForError (), ret.GetSignatureForError ());
+                               }
                                return;
                        }
 
index 9c804ceca575e6730e194e54a8bce5735a24cb81..360c5c9463002d0d8e1956573bfcb688702589e4 100644 (file)
@@ -188,6 +188,11 @@ namespace Mono.CSharp {
 
                public override Expression CreateExpressionTree (ResolveContext ec)
                {
+                       if (Expr is ReferenceExpression) {
+                               ec.Report.Error (8155, Expr.Location, "Lambda expressions that return by reference cannot be converted to expression trees");
+                               return null;
+                       }
+
                        return Expr.CreateExpressionTree (ec);
                }
 
@@ -216,6 +221,12 @@ namespace Mono.CSharp {
                                if (Expr == null)
                                        return false;
 
+                               if (Expr is ReferenceExpression) {
+                                       // CSC: should be different error code
+                                       ec.Report.Error (8149, loc, "By-reference returns can only be used in lambda expressions that return by reference");
+                                       return false;
+                               }
+
                                statement = Expr as ExpressionStatement;
                                if (statement == null) {
                                        var reduced = Expr as IReducedExpressionStatement;
index d132c872bafced81c59fd1eaf5bc8fd8245eb9a1..eebf71b844b8e2a51337bf35a1560c7b13d7134f 100644 (file)
@@ -35,6 +35,7 @@ namespace Mono.CSharp {
                Enum            = 1 << 14,
                Interface       = 1 << 15,
                TypeParameter = 1 << 16,
+               ByRef           = 1 << 17,
 
                ArrayType = 1 << 19,
                PointerType = 1 << 20,
index 1de765fb4ac041eb7926c501e0aeb235c98579ad..d95f8f13956d867d0d60df079a4a10e9ebe98c80 100644 (file)
@@ -748,6 +748,11 @@ namespace Mono.CSharp {
                                                                Report.Error (737, container.Location,
                                                                        "`{0}' does not implement interface member `{1}' and the best implementing candidate `{2}' is not public",
                                                                        container.GetSignatureForError (), mi.GetSignatureForError (), candidate.GetSignatureForError ());
+                                                       } else if (mi.ReturnType.Kind == MemberKind.ByRef) {
+                                                               Report.Error (8152, container.Location,
+                                                                       "`{0}' does not implement interface member `{1}' and the best implementing candidate `{2}' return type `{3}' does not return by reference",
+                                                                       container.GetSignatureForError (), mi.GetSignatureForError (), candidate.GetSignatureForError (),
+                                                                       candidate.ReturnType.GetSignatureForError ());
                                                        } else {
                                                                Report.Error (738, container.Location,
                                                                        "`{0}' does not implement interface member `{1}' and the best implementing candidate `{2}' return type `{3}' does not match interface member return type `{4}'",
index 1dd8a86468eb1ab0f2727a649f67d3273ed6d8cd..c55432cf2d59171c7b4a9e3576a418ec8b12c300 100644 (file)
@@ -879,6 +879,17 @@ namespace Mono.CSharp
                                        return false;
                                }
 
+                               if (MemberType.Kind == MemberKind.ByRef) {
+                                       Report.Error (8145, Location, "Auto-implemented property `{0}' cannot return by reference",
+                                               GetSignatureForError ());
+                                       return false;
+                               }
+
+                               if ((Parent.PartialContainer.ModFlags & Modifiers.READONLY) != 0 && Set != null && !IsStatic) {
+                                       Report.Error (8341, Location, "Auto-implemented instance property `{0}' in readonly structs must be readonly",
+                                               GetSignatureForError ());
+                               }
+
                                if (Compiler.Settings.Version < LanguageVersion.V_3 && Initializer == null)
                                        Report.FeatureIsNotAvailable (Compiler, Location, "auto-implemented properties");
 
@@ -1186,6 +1197,16 @@ namespace Mono.CSharp
                        base.ApplyAttributeBuilder (a, ctor, cdata, pa);
                }
 
+               protected override void DoMemberTypeIndependentChecks ()
+               {
+                       if ((Parent.PartialContainer.ModFlags & Modifiers.READONLY) != 0 && (ModFlags & Modifiers.STATIC) == 0) {
+                               Report.Error (8342, Location, "`{0}': Field-like instance events are not allowed in readonly structs",
+                                       GetSignatureForError ());
+                       }
+
+                       base.DoMemberTypeIndependentChecks ();
+               }
+
                public override bool Define()
                {
                        var mod_flags_src = ModFlags;
index 98083a7e0ec4b46803e1d2eb34a312883e7d7151..37664187c71ff19aa466fb3abab4677f72b7e62a 100644 (file)
@@ -30,9 +30,12 @@ namespace Mono.CSharp {
                V_5 = 5,
                V_6 = 6,
                V_7 = 7,
+               V_7_1 = 71,
+               V_7_2 = 72,
                Experimental = 100,
 
                Default = V_7,
+               Latest = V_7_2
        }
 
        public enum RuntimeVersion
@@ -1143,36 +1146,57 @@ namespace Mono.CSharp {
                                switch (value.ToLowerInvariant ()) {
                                case "iso-1":
                                case "1":
+                               case "1.0":
                                        settings.Version = LanguageVersion.ISO_1;
                                        return ParseResult.Success;
                                case "default":
                                        settings.Version = LanguageVersion.Default;
                                        return ParseResult.Success;
                                case "2":
+                               case "2.0":
                                case "iso-2":
                                        settings.Version = LanguageVersion.ISO_2;
                                        return ParseResult.Success;
                                case "3":
+                               case "3.0":
                                        settings.Version = LanguageVersion.V_3;
                                        return ParseResult.Success;
                                case "4":
+                               case "4.0":
                                        settings.Version = LanguageVersion.V_4;
                                        return ParseResult.Success;
                                case "5":
+                               case "5.0":
                                        settings.Version = LanguageVersion.V_5;
                                        return ParseResult.Success;
                                case "6":
+                               case "6.0":
                                        settings.Version = LanguageVersion.V_6;
                                        return ParseResult.Success;
                                case "7":
+                               case "7.0":
                                        settings.Version = LanguageVersion.V_7;
                                        return ParseResult.Success;
+                               case "7.1":
+                                       settings.Version = LanguageVersion.V_7_1;
+                                       return ParseResult.Success;
+                               case "7.2":
+                                       settings.Version = LanguageVersion.V_7_2;
+                                       return ParseResult.Success;
+                               case "latest":
+                                       settings.Version = LanguageVersion.Latest;
+                                       return ParseResult.Success;
                                case "experimental":
                                        settings.Version = LanguageVersion.Experimental;
                                        return ParseResult.Success;
                                }
 
-                               report.Error (1617, "Invalid -langversion option `{0}'. It must be `ISO-1', `ISO-2', Default or value in range 1 to 7", value);
+                               if (value.StartsWith ("0", StringComparison.Ordinal)) {
+                                       report.Error (8303, "Specified language version `{0}' cannot have leading zeroes", value);
+                               } else {
+                                       report.Error (1617, "Invalid -langversion option `{0}'. It must be `ISO-1', `ISO-2', Default, Latest or value in range 1 to 7.2", value);
+                               }
+
                                return ParseResult.Error;
 
                        case "/codepage":
index 7a379fc172aff0bd375aefb7cdbee386f7e4f0c4..0c02bf0562a271da6811188fd102ecf836f0986a 100644 (file)
@@ -1272,16 +1272,38 @@ namespace Mono.CSharp {
                        if (expr == null)
                                return false;
 
+                       if (expr is ReferenceExpression && block_return_type.Kind != MemberKind.ByRef) {
+                               ec.Report.Error (8149, loc, "By-reference returns can only be used in methods that return by reference");
+                               return false;
+                       }
+
                        if (expr.Type != block_return_type && expr.Type != InternalType.ErrorType) {
-                               expr = Convert.ImplicitConversionRequired (ec, expr, block_return_type, loc);
+                               if (block_return_type.Kind == MemberKind.ByRef) {
+                                       var ref_expr = Expr as ReferenceExpression;
+                                       if (ref_expr == null) {
+                                               ec.Report.Error (8150, loc, "By-reference return is required when method returns by reference");
+                                               return false;
+                                       }
 
-                               if (expr == null) {
-                                       if (am != null && block_return_type == ec.ReturnType) {
-                                               ec.Report.Error (1662, loc,
-                                                       "Cannot convert `{0}' to delegate type `{1}' because some of the return types in the block are not implicitly convertible to the delegate return type",
-                                                       am.ContainerType, am.GetSignatureForError ());
+                                       var byref_return = (ReferenceContainer)block_return_type;
+
+                                       if (expr.Type != byref_return.Element) {
+                                               ec.Report.Error (8151, loc, "The return by reference expression must be of type `{0}' because this method returns by reference",
+                                                                                byref_return.GetSignatureForError ());
+                                               return false;
+                                       }
+                               } else {
+
+                                       expr = Convert.ImplicitConversionRequired (ec, expr, block_return_type, loc);
+
+                                       if (expr == null) {
+                                               if (am != null && block_return_type == ec.ReturnType) {
+                                                       ec.Report.Error (1662, loc,
+                                                               "Cannot convert `{0}' to delegate type `{1}' because some of the return types in the block are not implicitly convertible to the delegate return type",
+                                                               am.ContainerType, am.GetSignatureForError ());
+                                               }
+                                               return false;
                                        }
-                                       return false;
                                }
                        }
 
@@ -2185,7 +2207,7 @@ namespace Mono.CSharp {
                                }
 
                                if (type == null) {
-                                       type = type_expr.ResolveAsType (bc);
+                                       type = ResolveTypeExpression (bc);
                                        if (type == null)
                                                return false;
 
@@ -2208,6 +2230,25 @@ namespace Mono.CSharp {
                        }
 
                        if (initializer != null) {
+                               if (li.IsByRef) {
+                                       if (!(initializer is ReferenceExpression)) {
+                                               bc.Report.Error (8172, loc, "Cannot initialize a by-reference variable `{0}' with a value", li.Name);
+                                               return false;
+                                       }
+
+                                       if (bc.CurrentAnonymousMethod is AsyncInitializer) {
+                                               bc.Report.Error (8177, loc, "Async methods cannot use by-reference variables");
+                                       } else if (bc.CurrentIterator != null) {
+                                               bc.Report.Error (8176, loc, "Iterators cannot use by-reference variables");
+                                       }
+
+                               } else {
+                                       if (initializer is ReferenceExpression) {
+                                               bc.Report.Error (8171, loc, "Cannot initialize a by-value variable `{0}' with a reference expression", li.Name);
+                                               return false;
+                                       }
+                               }
+
                                initializer = ResolveInitializer (bc, li, initializer);
                                // li.Variable.DefinitelyAssigned 
                        }
@@ -2237,6 +2278,11 @@ namespace Mono.CSharp {
                        return a.ResolveStatement (bc);
                }
 
+               protected virtual TypeSpec ResolveTypeExpression (BlockContext bc)
+               {
+                       return type_expr.ResolveAsType (bc);
+               }
+
                protected override void DoEmit (EmitContext ec)
                {
                        li.CreateBuilder (ec);
@@ -2364,6 +2410,7 @@ namespace Mono.CSharp {
                        UsingVariable = 1 << 7,
                        IsLocked = 1 << 8,
                        SymbolFileHidden = 1 << 9,
+                       ByRef = 1 << 10,
 
                        ReadonlyMask = ForeachVariable | FixedVariable | UsingVariable
                }
@@ -2448,6 +2495,8 @@ namespace Mono.CSharp {
                        }
                }
 
+               public bool IsByRef => (flags & Flags.ByRef) != 0;
+
                public bool IsCompilerGenerated {
                        get {
                                return (flags & Flags.CompilerGenerated) != 0;
@@ -2550,10 +2599,15 @@ namespace Mono.CSharp {
                                throw new InternalErrorException ("Already created variable `{0}'", name);
                        }
 
-                       //
-                       // All fixed variabled are pinned, a slot has to be alocated
-                       //
-                       builder = ec.DeclareLocal (Type, IsFixed);
+                       if (IsByRef) {
+                               builder = ec.DeclareLocal (ReferenceContainer.MakeType (ec.Module, Type), IsFixed);
+                       } else {
+                               //
+                               // All fixed variabled are pinned, a slot has to be alocated
+                               //
+                               builder = ec.DeclareLocal(Type, IsFixed);
+                       }
+
                        if ((flags & Flags.SymbolFileHidden) == 0)
                                ec.DefineLocalVariable (name, builder);
                }
@@ -2602,7 +2656,10 @@ namespace Mono.CSharp {
                        if ((flags & Flags.CompilerGenerated) != 0)
                                CreateBuilder (ec);
 
-                       ec.Emit (OpCodes.Ldloca, builder);
+                       if (IsByRef)
+                               ec.Emit (OpCodes.Ldloc, builder);
+                       else
+                               ec.Emit (OpCodes.Ldloca, builder);
                }
 
                public static string GetCompilerGeneratedName (Block block)
index e6ee60c585a8780e1af95af20b7941356d0a160b..d14e1ead3e317c07b55873ca2e679a7d6d3205a9 100644 (file)
@@ -237,6 +237,8 @@ namespace Mono.CSharp
                        }
                }
 
+               public bool IsReadOnly => (modifiers & Modifiers.READONLY) != 0;
+
                //
                // Returns true for instances of any System.ValueTuple<......> type
                //
@@ -1991,10 +1993,11 @@ namespace Mono.CSharp
                }
        }
 
+       [System.Diagnostics.DebuggerDisplay("{DisplayDebugInfo()}")]
        class ReferenceContainer : ElementTypeSpec
        {
                ReferenceContainer (TypeSpec element)
-                       : base (MemberKind.Class, element, null)        // TODO: Kind.Class is most likely wrong
+                       : base (MemberKind.ByRef, element, null)
                {
                }
 
@@ -2004,6 +2007,11 @@ namespace Mono.CSharp
                        }
                }
 
+               string DisplayDebugInfo()
+               {
+                       return "ref " + GetSignatureForError();
+               }
+
                public override MetaType GetMetaInfo ()
                {
                        if (info == null) {
@@ -2013,8 +2021,16 @@ namespace Mono.CSharp
                        return info;
                }
 
+               public override string GetSignatureForError ()
+               {
+                       return Element.GetSignatureForError ();
+               }
+
                public static ReferenceContainer MakeType (ModuleContainer module, TypeSpec element)
                {
+                       if (element.Kind == MemberKind.ByRef)
+                               throw new ArgumentException ();
+
                        ReferenceContainer pc;
                        if (!module.ReferenceTypesCache.TryGetValue (element, out pc)) {
                                pc = new ReferenceContainer (element);
diff --git a/mcs/tests/test-readonly-01.cs b/mcs/tests/test-readonly-01.cs
new file mode 100644 (file)
index 0000000..7cce9e0
--- /dev/null
@@ -0,0 +1,16 @@
+// Compiler options: -langversion:latest
+
+using System;
+
+readonly struct S
+{
+       readonly int field;
+
+       static int sf;
+       static event Action e;
+       static int Prop { get; set; }
+
+       public static void Main ()
+       {
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-01.cs b/mcs/tests/test-ref-01.cs
new file mode 100644 (file)
index 0000000..60126a3
--- /dev/null
@@ -0,0 +1,38 @@
+// Compiler options: -unsafe
+
+public unsafe class X
+{
+       int field;
+       int* ufield;
+
+       public static void Main ()
+       {
+               int i = 5;
+               ref int j = ref i;
+
+               var x = new X ();
+               ref var v = ref x.TestMethod ();
+       }
+
+       ref int TestMethod ()
+       {
+               return ref field;
+       }
+
+       ref int TestProperty {
+               get {
+                       return ref field;
+               }
+       }
+
+       ref int this [long arg] {
+               get {
+                       return ref field;
+               }
+       }
+
+       unsafe ref int* Foo ()
+       {
+               return ref ufield;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-02.cs b/mcs/tests/test-ref-02.cs
new file mode 100644 (file)
index 0000000..9adf471
--- /dev/null
@@ -0,0 +1,35 @@
+using System;
+
+class X
+{
+       int field;
+
+       static void Main ()
+       {
+               var x = new X ();
+               x.Run ();
+       }
+
+       void Run ()
+       {
+               Test (ref this[0]);
+               Test (ref Prop);
+       }
+
+       static int Test (ref int y)
+       {
+               return y;
+       }
+
+       ref int this [int y] {
+               get {
+                       return ref field;
+               }
+       }
+
+       ref int Prop {
+               get {
+                       return ref field;
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-03.cs b/mcs/tests/test-ref-03.cs
new file mode 100644 (file)
index 0000000..201bd6c
--- /dev/null
@@ -0,0 +1,33 @@
+class X
+{
+       int x;
+
+       static void Main ()
+       {
+               var x = new X ();
+               Foo (ref x.Wrap (1));
+               Foo (ref x.Prop);
+               Foo (ref x[""]);                
+       }
+
+       ref int Wrap (int arg)
+       {
+               return ref x;
+       }
+
+       ref int Prop {
+               get {
+                       return ref x;
+               }
+       }
+
+       ref int this [string arg] {
+               get {
+                       return ref x;
+               }
+       }
+
+       static void Foo (ref int arg)
+       {
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-04.cs b/mcs/tests/test-ref-04.cs
new file mode 100644 (file)
index 0000000..af96f23
--- /dev/null
@@ -0,0 +1,45 @@
+class X
+{
+       int field;
+
+       public static int Main ()
+       {
+               var x = new X ();
+
+               x.field = 5;
+               if (!x.Test1 ())
+                       return 1;
+
+               x.Test2 ();
+
+               if (x.Test3 ()++ != 6)
+                       return 2;
+
+               if (x.field != 7)
+                       return 3;
+
+               return 0;
+       }
+
+       bool Test1 ()
+       {
+               ref var x = ref field;
+               int v = x;
+               ++x;
+
+               return x == 6;
+       }
+
+       void Test2 ()
+       {
+               ref int x = ref field;
+               x.ToString ();
+       }
+
+       ref int Test3 ()
+       {
+               ref int l = ref field;
+               ref int v = ref l;
+               return ref l;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-05.cs b/mcs/tests/test-ref-05.cs
new file mode 100644 (file)
index 0000000..4848468
--- /dev/null
@@ -0,0 +1,46 @@
+class X
+{
+       static int field;
+
+       public static int Main ()
+       {
+               Test () = 3;
+
+               if (field != (byte) 3)
+                       return 1;
+
+               G<string>.Test (ref field) = 6;
+               if (field != 6)
+                       return 2;
+
+               --Test ();
+               if (field != 5)
+                       return 3;
+
+               Test (ref Test (), ref Test ());
+
+               return 0;
+       }
+
+       static ref int Test ()
+       {
+               return ref field;
+       }
+
+       static void Test<T> (ref T a, ref int b)
+       {
+       }
+
+       static void Test2<T> (ref T arg)
+       {
+               Test (ref arg, ref Test ());
+       }
+}
+
+class G<U>
+{
+       public static ref T Test<T> (ref T arg)
+       {
+               return ref arg;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-ref-06.cs b/mcs/tests/test-ref-06.cs
new file mode 100644 (file)
index 0000000..74d35f4
--- /dev/null
@@ -0,0 +1,24 @@
+using System;
+
+class X
+{
+       public static int Main ()
+       {
+               var x = new X ();
+               x [0] = 3;
+               if (x.field != 3)
+                       return 1;
+               x.Prop = 5;
+               if (x.field != 5)
+                       return 2;
+
+               return 0;
+       }
+
+       int field;
+
+       ref int this [int idx] => ref field;
+
+       ref int Prop => ref field;
+
+}
\ No newline at end of file
index db5bfbd387c5090a47e7c7e01c8813a6cec6540e..636afd18a008618d542007d52c3a340bb8697323 100644 (file)
       </method>
     </type>
   </test>
+  <test name="test-readonly-01.cs">
+    <type name="S">
+      <method name="Void add_e(System.Action)" attrs="2193">
+        <size>40</size>
+      </method>
+      <method name="Void remove_e(System.Action)" attrs="2193">
+        <size>40</size>
+      </method>
+      <method name="Int32 get_Prop()" attrs="2193">
+        <size>13</size>
+      </method>
+      <method name="Void set_Prop(Int32)" attrs="2193">
+        <size>7</size>
+      </method>
+      <method name="Void Main()" attrs="150">
+        <size>2</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-01.cs">
+    <type name="X">
+      <method name="Void Main()" attrs="150">
+        <size>20</size>
+      </method>
+      <method name="Int32&amp; TestMethod()" attrs="129">
+        <size>15</size>
+      </method>
+      <method name="Int32&amp; get_TestProperty()" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Int32&amp; get_Item(Int64)" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Int32*&amp; Foo()" attrs="129">
+        <size>15</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-02.cs">
+    <type name="X">
+      <method name="Void Main()" attrs="145">
+        <size>14</size>
+      </method>
+      <method name="Void Run()" attrs="129">
+        <size>27</size>
+      </method>
+      <method name="Int32 Test(Int32 ByRef)" attrs="145">
+        <size>11</size>
+      </method>
+      <method name="Int32&amp; get_Item(Int32)" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Int32&amp; get_Prop()" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-03.cs">
+    <type name="X">
+      <method name="Void Main()" attrs="145">
+        <size>47</size>
+      </method>
+      <method name="Int32&amp; Wrap(Int32)" attrs="129">
+        <size>15</size>
+      </method>
+      <method name="Int32&amp; get_Prop()" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Int32&amp; get_Item(System.String)" attrs="2177">
+        <size>15</size>
+      </method>
+      <method name="Void Foo(Int32 ByRef)" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-04.cs">
+    <type name="X">
+      <method name="Int32 Main()" attrs="150">
+        <size>93</size>
+      </method>
+      <method name="Boolean Test1()" attrs="129">
+        <size>30</size>
+      </method>
+      <method name="Void Test2()" attrs="129">
+        <size>22</size>
+      </method>
+      <method name="Int32&amp; Test3()" attrs="129">
+        <size>19</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-05.cs">
+    <type name="X">
+      <method name="Int32 Main()" attrs="150">
+        <size>108</size>
+      </method>
+      <method name="Int32&amp; Test()" attrs="145">
+        <size>14</size>
+      </method>
+      <method name="Void Test[T](T ByRef, Int32 ByRef)" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void Test2[T](T ByRef)" attrs="145">
+        <size>13</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="G`1[U]">
+      <method name="T&amp; Test[T](T ByRef)" attrs="150">
+        <size>10</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-ref-06.cs">
+    <type name="X">
+      <method name="Int32 Main()" attrs="150">
+        <size>71</size>
+      </method>
+      <method name="Int32&amp; get_Item(Int32)" attrs="2177">
+        <size>14</size>
+      </method>
+      <method name="Int32&amp; get_Prop()" attrs="2177">
+        <size>14</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-static-using-01.cs">
     <type name="A.B.X">
       <method name="Int32 Test()" attrs="150">
index 713826839958b8dfb9d57f717b50dc6039e8e814..0902fb41fb84df8430700f6c918665f6e7f4e45a 100644 (file)
@@ -39,6 +39,7 @@ MONO_BTLS_SOURCES_FILES = \
 EXTRA_DIST = $(MONO_BTLS_SOURCES_FILES)
 
 CMAKE_VERBOSE=$(if $(V),VERBOSE=1,)
+NINJA_VERBOSE=$(if ($V),-v,)
 
 if NINJA
 NINJA_ARGS = -G Ninja
@@ -59,7 +60,7 @@ build-shared/$(BUILDFILE):
 
 if NINJA
 build-shared/libmono-btls-shared$(libsuffix): build-shared/$(BUILDFILE) $(MONO_BTLS_SOURCES_FILES)
-       ninja -C build-shared $(CMAKE_VERBOSE)
+       ninja -C build-shared $(NINJA_VERBOSE)
 else
 build-shared/libmono-btls-shared$(libsuffix): build-shared/$(BUILDFILE) $(MONO_BTLS_SOURCES_FILES)
        $(MAKE) -C build-shared $(CMAKE_VERBOSE)
index 2fbf826ceece5a6338eadd77b1deb9d5267801e0..8a9494054d94eaf9124c9c2731160131de14af16 100644 (file)
@@ -283,7 +283,9 @@ common_sources = \
        sre-save.c      \
        custom-attrs.c  \
        fdhandle.h      \
-       fdhandle.c
+       fdhandle.c      \
+       callspec.h      \
+       callspec.c
 
 # These source files have compile time dependencies on GC code
 gc_dependent_sources = \
diff --git a/mono/metadata/callspec.c b/mono/metadata/callspec.c
new file mode 100644 (file)
index 0000000..bf108d9
--- /dev/null
@@ -0,0 +1,348 @@
+/**
+ * \file
+ * Call specification facilities for the Mono Runtime.
+ *
+ * Author:
+ *   Paolo Molaro (lupus@ximian.com)
+ *   Dietmar Maurer (dietmar@ximian.com)
+ *
+ * (C) 2002 Ximian, Inc.
+ * Copyright 2011 Xamarin, Inc (http://www.xamarin.com)
+ * Licensed under the MIT license. See LICENSE file in the project root for full
+ * license information.
+ */
+#include "metadata.h"
+#include "callspec.h"
+#include "assembly.h"
+#include "class-internals.h"
+#include "debug-helpers.h"
+
+static MonoAssembly *prog_assembly;
+
+gboolean
+mono_callspec_eval_exception (MonoClass *klass, MonoCallSpec *spec)
+{
+       int include = 0;
+       int i;
+
+       if (!klass)
+               return FALSE;
+
+       for (i = 0; i < spec->len; i++) {
+               MonoTraceOperation *op = &spec->ops [i];
+               int inc = 0;
+
+               switch (op->op) {
+               case MONO_TRACEOP_EXCEPTION:
+                       if (strcmp ("", op->data) == 0 &&
+                           strcmp ("all", op->data2) == 0)
+                               inc = 1;
+                       else if (strcmp ("", op->data) == 0 ||
+                                strcmp (klass->name_space, op->data) == 0)
+                               if (strcmp (klass->name, op->data2) == 0)
+                                       inc = 1;
+                       break;
+               default:
+                       break;
+               }
+               if (op->exclude) {
+                       if (inc)
+                               include = 0;
+               } else if (inc)
+                       include = 1;
+       }
+
+       return include;
+}
+
+gboolean mono_callspec_eval (MonoMethod *method, const MonoCallSpec *spec)
+{
+       int include = 0;
+       int i;
+
+       for (i = 0; i < spec->len; i++) {
+               MonoTraceOperation *op = &spec->ops[i];
+               int inc = 0;
+
+               switch (op->op) {
+               case MONO_TRACEOP_ALL:
+                       inc = 1;
+                       break;
+               case MONO_TRACEOP_PROGRAM:
+                       if (prog_assembly &&
+                           (method->klass->image ==
+                            mono_assembly_get_image (prog_assembly)))
+                               inc = 1;
+                       break;
+               case MONO_TRACEOP_WRAPPER:
+                       if ((method->wrapper_type ==
+                            MONO_WRAPPER_NATIVE_TO_MANAGED) ||
+                           (method->wrapper_type ==
+                            MONO_WRAPPER_MANAGED_TO_NATIVE))
+                               inc = 1;
+                       break;
+               case MONO_TRACEOP_METHOD:
+                       if (mono_method_desc_full_match (
+                               (MonoMethodDesc *)op->data, method))
+                               inc = 1;
+                       break;
+               case MONO_TRACEOP_CLASS:
+                       if (strcmp (method->klass->name_space, op->data) == 0)
+                               if (strcmp (method->klass->name, op->data2) ==
+                                   0)
+                                       inc = 1;
+                       break;
+               case MONO_TRACEOP_ASSEMBLY:
+                       if (strcmp (mono_image_get_name (method->klass->image),
+                                   op->data) == 0)
+                               inc = 1;
+                       break;
+               case MONO_TRACEOP_NAMESPACE:
+                       if (strcmp (method->klass->name_space, op->data) == 0)
+                               inc = 1;
+                       break;
+               case MONO_TRACEOP_EXCEPTION:
+                       break;
+               }
+               if (op->exclude) {
+                       if (inc)
+                               include = 0;
+               } else if (inc) {
+                       include = 1;
+               }
+       }
+       return include;
+}
+
+static int is_filenamechar (char p)
+{
+       if (p >= 'A' && p <= 'Z')
+               return TRUE;
+       if (p >= 'a' && p <= 'z')
+               return TRUE;
+       if (p >= '0' && p <= '9')
+               return TRUE;
+       if (p == '.' || p == ':' || p == '_' || p == '-' || p == '`')
+               return TRUE;
+       return FALSE;
+}
+
+static char *get_string (char **in)
+{
+       char *start = *in;
+       char *p = *in;
+       while (is_filenamechar (*p)) {
+               p++;
+       }
+       size_t len = p - start;
+       char *ret = (char *)g_malloc (len + 1);
+       memcpy (ret, start, len);
+       ret [len] = 0;
+       *in = p;
+       return ret;
+}
+
+enum Token {
+       TOKEN_METHOD,
+       TOKEN_CLASS,
+       TOKEN_ALL,
+       TOKEN_PROGRAM,
+       TOKEN_EXCEPTION,
+       TOKEN_NAMESPACE,
+       TOKEN_WRAPPER,
+       TOKEN_STRING,
+       TOKEN_EXCLUDE,
+       TOKEN_DISABLED,
+       TOKEN_SEPARATOR,
+       TOKEN_END,
+       TOKEN_ERROR
+};
+
+static int get_token (char **in, char **extra, char **errstr)
+{
+       char *p = *in;
+       while (p[0] == '+')
+               p++;
+
+       *extra = NULL;
+
+       if (p[0] == '\0') {
+               *in = p;
+               return TOKEN_END;
+       }
+       if (p[0] == 'M' && p[1] == ':') {
+               p += 2;
+               *extra = get_string (&p);
+               *in = p;
+               return TOKEN_METHOD;
+       }
+       if (p[0] == 'N' && p[1] == ':') {
+               p += 2;
+               *extra = get_string (&p);
+               *in = p;
+               return TOKEN_NAMESPACE;
+       }
+       if (p[0] == 'T' && p[1] == ':') {
+               p += 2;
+               *extra = get_string (&p);
+               *in = p;
+               return TOKEN_CLASS;
+       }
+       if (p[0] == 'E' && p[1] == ':') {
+               p += 2;
+               *extra = get_string (&p);
+               *in = p;
+               return TOKEN_EXCEPTION;
+       }
+       if (*p == '-') {
+               p++;
+               *in = p;
+               return TOKEN_EXCLUDE;
+       }
+       if (is_filenamechar (*p)) {
+               *extra = get_string (&p);
+               *in = p;
+               if (strcmp (*extra, "all") == 0)
+                       return TOKEN_ALL;
+               if (strcmp (*extra, "program") == 0)
+                       return TOKEN_PROGRAM;
+               if (strcmp (*extra, "wrapper") == 0)
+                       return TOKEN_WRAPPER;
+               if (strcmp (*extra, "disabled") == 0)
+                       return TOKEN_DISABLED;
+               return TOKEN_STRING;
+       }
+       if (*p == ',') {
+               p++;
+               *in = p;
+               return TOKEN_SEPARATOR;
+       }
+
+       *errstr = g_strdup_printf ("Syntax error at or around '%s'", p);
+       return TOKEN_ERROR;
+}
+
+static int get_spec (char **in, MonoCallSpec *spec, char **errstr)
+{
+       int n = spec->len;
+       char *extra = NULL;
+
+       int token = get_token (in, &extra, errstr);
+       gboolean exclude = FALSE;
+       if (token == TOKEN_EXCLUDE) {
+               exclude = TRUE;
+               token = get_token (in, &extra, errstr);
+               if (token == TOKEN_EXCLUDE || token == TOKEN_DISABLED) {
+                       *errstr = g_strdup_printf ("Expecting an expression");
+                       token = TOKEN_ERROR;
+                       goto out;
+               }
+       }
+       if (token == TOKEN_END || token == TOKEN_SEPARATOR ||
+           token == TOKEN_ERROR)
+               goto out;
+
+       if (token == TOKEN_DISABLED) {
+               spec->enabled = FALSE;
+               goto out;
+       }
+
+       if (token == TOKEN_METHOD) {
+               MonoMethodDesc *desc = mono_method_desc_new (extra, TRUE);
+               if (desc == NULL) {
+                       *errstr =
+                           g_strdup_printf ("Invalid method name: %s", extra);
+                       token = TOKEN_ERROR;
+                       goto out;
+               }
+               spec->ops[n].op = MONO_TRACEOP_METHOD;
+               spec->ops[n].data = desc;
+       } else if (token == TOKEN_ALL)
+               spec->ops[n].op = MONO_TRACEOP_ALL;
+       else if (token == TOKEN_PROGRAM)
+               spec->ops[n].op = MONO_TRACEOP_PROGRAM;
+       else if (token == TOKEN_WRAPPER)
+               spec->ops[n].op = MONO_TRACEOP_WRAPPER;
+       else if (token == TOKEN_NAMESPACE) {
+               spec->ops[n].op = MONO_TRACEOP_NAMESPACE;
+               spec->ops[n].data = g_strdup (extra);
+       } else if (token == TOKEN_CLASS || token == TOKEN_EXCEPTION) {
+               char *p = strrchr (extra, '.');
+               if (p) {
+                       *p++ = 0;
+                       spec->ops[n].data = g_strdup (extra);
+                       spec->ops[n].data2 = g_strdup (p);
+               } else {
+                       spec->ops[n].data = g_strdup ("");
+                       spec->ops[n].data2 = g_strdup (extra);
+               }
+               spec->ops[n].op = token == TOKEN_CLASS ? MONO_TRACEOP_CLASS
+                                                      : MONO_TRACEOP_EXCEPTION;
+       } else if (token == TOKEN_STRING) {
+               spec->ops[n].op = MONO_TRACEOP_ASSEMBLY;
+               spec->ops[n].data = g_strdup (extra);
+       } else {
+               *errstr =
+                   g_strdup_printf ("Syntax error in method specification");
+               token = TOKEN_ERROR;
+               goto out;
+       }
+
+       if (exclude)
+               spec->ops[n].exclude = 1;
+
+       spec->len = n + 1;
+       token = TOKEN_SEPARATOR;
+out:
+       if (extra != NULL) {
+               g_free (extra);
+       }
+       return token;
+}
+
+gboolean
+mono_callspec_parse (const char *options, MonoCallSpec *spec, char **errstr)
+{
+       char *p = (char *)options;
+       int size = 1;
+       int token;
+
+       memset (spec, 0, sizeof (*spec));
+       *errstr = NULL;
+
+       spec->enabled = TRUE;
+       if (*p == 0) {
+               spec->len = 1;
+               spec->ops = g_new0 (MonoTraceOperation, 1);
+               spec->ops[0].op = MONO_TRACEOP_ALL;
+               return TRUE;
+       }
+
+       for (p = (char *)options; *p != 0; p++)
+               if (*p == ',')
+                       size++;
+
+       spec->ops = g_new0 (MonoTraceOperation, size);
+
+       p = (char *)options;
+
+       while ((token = (get_spec (&p, spec, errstr))) != TOKEN_END) {
+               if (token == TOKEN_ERROR)
+                       return FALSE;
+       }
+       return TRUE;
+}
+
+void mono_callspec_cleanup (MonoCallSpec *spec)
+{
+       if (spec->ops != NULL) {
+               g_free (spec->ops);
+       }
+       memset (spec, 0, sizeof (*spec));
+}
+
+void
+mono_callspec_set_assembly (MonoAssembly *assembly)
+{
+       prog_assembly = assembly;
+}
diff --git a/mono/metadata/callspec.h b/mono/metadata/callspec.h
new file mode 100644 (file)
index 0000000..c9f6998
--- /dev/null
@@ -0,0 +1,47 @@
+/**
+ * \file
+ */
+
+#ifndef __MONO_CALLSPEC_H__
+#define __MONO_CALLSPEC_H__
+#include <glib.h>
+#include <mono/utils/mono-compiler.h>
+
+typedef enum {
+       MONO_TRACEOP_ALL,
+       MONO_TRACEOP_PROGRAM,
+       MONO_TRACEOP_METHOD,
+       MONO_TRACEOP_ASSEMBLY,
+       MONO_TRACEOP_CLASS,
+       MONO_TRACEOP_NAMESPACE,
+       MONO_TRACEOP_EXCEPTION,
+       MONO_TRACEOP_WRAPPER,
+} MonoTraceOpcode;
+
+typedef struct {
+       MonoTraceOpcode op;
+       int exclude;
+       void *data, *data2;
+} MonoTraceOperation;
+
+typedef struct {
+       int len;
+       gboolean enabled;
+       MonoTraceOperation *ops;
+} MonoCallSpec;
+
+G_BEGIN_DECLS
+
+MONO_PROFILER_API gboolean mono_callspec_parse         (const char *options,
+                                                        MonoCallSpec *spec,
+                                                        char **errstr);
+MONO_PROFILER_API void     mono_callspec_cleanup       (MonoCallSpec *spec);
+MONO_PROFILER_API gboolean mono_callspec_eval_exception        (MonoClass *klass,
+                                                        MonoCallSpec *spec);
+MONO_PROFILER_API gboolean mono_callspec_eval          (MonoMethod *method,
+                                                        const MonoCallSpec *spec);
+void                      mono_callspec_set_assembly   (MonoAssembly *assembly);
+
+G_END_DECLS
+
+#endif /* __MONO_CALLSPEC_H__ */
index e3d9e18741752ec88e7136cda18776ea7d25c736..ed4190372cd80e57d5c04efc2927a0a40ba588ae 100644 (file)
@@ -111,7 +111,7 @@ struct _MonoMethodPInvoke {
        gpointer addr;
        /* add marshal info */
        guint16 piflags;  /* pinvoke flags */
-       guint16 implmap_idx;  /* index into IMPLMAP */
+       guint32 implmap_idx;  /* index into IMPLMAP */
 };
 
 /* 
index 7ddfad6165c8bfb97a1db3d5714fd10551c7e666..5057ab1cf2f27a0bc34d5bcf58dd4062f220b288 100644 (file)
@@ -24,7 +24,7 @@
 #define STATUS_SUCCESS 0x00000000L
 #define STATUS_INVALID_IMAGE_FORMAT 0xC000007BL
 
-STDAPI MonoFixupCorEE(HMODULE ModuleHandle);
+MONO_API STDAPI MonoFixupCorEE(HMODULE ModuleHandle);
 
 /* Defined by the linker. */
 #ifndef _MSC_VER
index a0fbf95003d08d3c0ee12cf5de77a73907982910..6ecb7ff9d5f40c58d05e8c72cff844bb9b1ee634 100644 (file)
@@ -221,34 +221,91 @@ mono_w32file_remove_directory (const gunichar2 *name)
        return res;
 }
 
+/*
+ * GetFileAttributes|Ex () seems to try opening the file, which might lead to sharing violation errors, whereas
+ * FindFirstFile always succeeds.
+ */
 guint32
 mono_w32file_get_attributes (const gunichar2 *name)
 {
        guint32 res;
+       guint32 error;
+       HANDLE find_handle;
+       WIN32_FIND_DATA find_data;
+
        MONO_ENTER_GC_SAFE;
        res = GetFileAttributes (name);
        MONO_EXIT_GC_SAFE;
-       return res;
+
+       if (res != INVALID_FILE_ATTRIBUTES)
+               return res;
+
+       error = GetLastError ();
+       if (error != ERROR_SHARING_VIOLATION)
+               return INVALID_FILE_ATTRIBUTES;
+
+       MONO_ENTER_GC_SAFE;
+       find_handle = FindFirstFile (name, &find_data);
+       MONO_EXIT_GC_SAFE;
+
+       if (find_handle == INVALID_HANDLE_VALUE)
+               return INVALID_FILE_ATTRIBUTES;
+
+       MONO_ENTER_GC_SAFE;
+       FindClose (find_handle);
+       MONO_EXIT_GC_SAFE;
+
+       return find_data.dwFileAttributes;
+}
+
+static gint64
+convert_filetime (const FILETIME *filetime)
+{
+       return (gint64) ((((guint64) filetime->dwHighDateTime) << 32) + filetime->dwLowDateTime);
 }
 
 gboolean
 mono_w32file_get_attributes_ex (const gunichar2 *name, MonoIOStat *stat)
 {
-       gboolean result;
-       WIN32_FILE_ATTRIBUTE_DATA data;
+       gboolean res;
+       guint32 error;
+       HANDLE find_handle;
+       WIN32_FIND_DATA find_data;
+       WIN32_FILE_ATTRIBUTE_DATA file_attribute_data;
 
        MONO_ENTER_GC_SAFE;
-       result = GetFileAttributesEx (name, GetFileExInfoStandard, &data);
+       res = GetFileAttributesEx (name, GetFileExInfoStandard, &file_attribute_data);
        MONO_EXIT_GC_SAFE;
-       if (result) {
-               stat->attributes = data.dwFileAttributes;
-               stat->creation_time = (gint64) ((((guint64) data.ftCreationTime.dwHighDateTime) << 32) + data.ftCreationTime.dwLowDateTime);
-               stat->last_access_time = (gint64) ((((guint64) data.ftLastAccessTime.dwHighDateTime) << 32) + data.ftLastAccessTime.dwLowDateTime);
-               stat->last_write_time = (gint64) ((((guint64) data.ftLastWriteTime.dwHighDateTime) << 32) + data.ftLastWriteTime.dwLowDateTime);
-               stat->length = ((gint64)data.nFileSizeHigh << 32) | data.nFileSizeLow;
+       if (res) {
+               stat->attributes = file_attribute_data.dwFileAttributes;
+               stat->creation_time = convert_filetime (&file_attribute_data.ftCreationTime);
+               stat->last_access_time = convert_filetime (&file_attribute_data.ftLastAccessTime);
+               stat->last_write_time = convert_filetime (&file_attribute_data.ftLastWriteTime);
+               stat->length = ((gint64)file_attribute_data.nFileSizeHigh << 32) | file_attribute_data.nFileSizeLow;
+               return TRUE;
        }
 
-       return result;
+       error = GetLastError ();
+       if (error != ERROR_SHARING_VIOLATION)
+               return FALSE;
+
+       MONO_ENTER_GC_SAFE;
+       find_handle = FindFirstFile (name, &find_data);
+       MONO_EXIT_GC_SAFE;
+
+       if (find_handle == INVALID_HANDLE_VALUE)
+               return FALSE;
+
+       MONO_ENTER_GC_SAFE;
+       FindClose (find_handle);
+       MONO_EXIT_GC_SAFE;
+
+       stat->attributes = find_data.dwFileAttributes;
+       stat->creation_time = convert_filetime (&find_data.ftCreationTime);
+       stat->last_access_time = convert_filetime (&find_data.ftLastAccessTime);
+       stat->last_write_time = convert_filetime (&find_data.ftLastWriteTime);
+       stat->length = ((gint64)find_data.nFileSizeHigh << 32) | find_data.nFileSizeLow;
+       return TRUE;
 }
 
 gboolean
index f10ae499645e1afd7093c4ca76c1d731d239a85e..03cac78ac1c8e71d6ca5076b44fe5767a24eeaff 100644 (file)
@@ -172,11 +172,6 @@ static guint32 convert_seekorigin(MonoSeekOrigin origin)
        return(w32origin);
 }
 
-static gint64 convert_filetime (const FILETIME *filetime)
-{
-       return (gint64) ((((guint64) filetime->dwHighDateTime) << 32) + filetime->dwLowDateTime);
-}
-
 /* Managed file attributes have nearly but not quite the same values
  * as the w32 equivalents.
  */
@@ -189,70 +184,6 @@ static guint32 convert_attrs(MonoFileAttributes attrs)
        return(attrs);
 }
 
-/*
- * On Win32, mono_w32file_get_attributes|_ex () seems to try opening the file,
- * which might lead to sharing violation errors, whereas mono_w32file_find_first
- * always succeeds. These 2 wrappers resort to mono_w32file_find_first if
- * mono_w32file_get_attributes|_ex () has failed.
- */
-static guint32
-get_file_attributes (const gunichar2 *path)
-{
-       guint32 res;
-       WIN32_FIND_DATA find_data;
-       HANDLE find_handle;
-       gint32 error;
-
-       res = mono_w32file_get_attributes (path);
-       if (res != -1)
-               return res;
-
-       error = mono_w32error_get_last ();
-
-       if (error != ERROR_SHARING_VIOLATION)
-               return res;
-
-       find_handle = mono_w32file_find_first (path, &find_data);
-
-       if (find_handle == INVALID_HANDLE_VALUE)
-               return res;
-
-       mono_w32file_find_close (find_handle);
-
-       return find_data.dwFileAttributes;
-}
-
-static gboolean
-get_file_attributes_ex (const gunichar2 *path, MonoIOStat *stat)
-{
-       gboolean res;
-       WIN32_FIND_DATA find_data;
-       HANDLE find_handle;
-       gint32 error;
-
-       res = mono_w32file_get_attributes_ex (path, stat);
-       if (res)
-               return TRUE;
-
-       error = mono_w32error_get_last ();
-       if (error != ERROR_SHARING_VIOLATION)
-               return FALSE;
-
-       find_handle = mono_w32file_find_first (path, &find_data);
-
-       if (find_handle == INVALID_HANDLE_VALUE)
-               return FALSE;
-
-       mono_w32file_find_close (find_handle);
-       
-       stat->attributes = find_data.dwFileAttributes;
-       stat->creation_time = convert_filetime (&find_data.ftCreationTime);
-       stat->last_access_time = convert_filetime (&find_data.ftLastAccessTime);
-       stat->last_write_time = convert_filetime (&find_data.ftLastWriteTime);
-       stat->length = ((gint64)find_data.nFileSizeHigh << 32) | find_data.nFileSizeLow;
-       return TRUE;
-}
-
 /* System.IO.MonoIO internal calls */
 
 MonoBoolean
@@ -455,7 +386,7 @@ ves_icall_System_IO_MonoIO_GetFileAttributes (MonoString *path, gint32 *error)
        gint32 ret;
        *error=ERROR_SUCCESS;
        
-       ret=get_file_attributes (mono_string_chars (path));
+       ret = mono_w32file_get_attributes (mono_string_chars (path));
 
        /* 
         * The definition of INVALID_FILE_ATTRIBUTES in the cygwin win32
@@ -510,7 +441,7 @@ ves_icall_System_IO_MonoIO_GetFileStat (MonoString *path, MonoIOStat *stat, gint
 
        *error=ERROR_SUCCESS;
        
-       result = get_file_attributes_ex (mono_string_chars (path), stat);
+       result = mono_w32file_get_attributes_ex (mono_string_chars (path), stat);
 
        if (!result) {
                *error=mono_w32error_get_last ();
@@ -554,7 +485,7 @@ ves_icall_System_IO_MonoIO_Open (MonoString *filename, gint32 mode,
 
        /* If we're opening a directory we need to set the extra flag
         */
-       attrs = get_file_attributes (chars);
+       attrs = mono_w32file_get_attributes (chars);
        if (attrs != INVALID_FILE_ATTRIBUTES) {
                if (attrs & FILE_ATTRIBUTE_DIRECTORY) {
                        attributes |= FILE_FLAG_BACKUP_SEMANTICS;
index 74e1fcceab52e3ea2d17a1eb0bdee60f2d4c98fc..28a5a63a5b42c892dd703e7d1f6f5a4f88d2e167 100644 (file)
@@ -54,6 +54,7 @@
 #include "fdhandle.h"
 #include "utils/mono-logger-internals.h"
 #include "utils/mono-poll.h"
+#include "utils/mono-compiler.h"
 
 typedef struct {
        MonoFDHandle fdhandle;
index d3b286cd0457418313aaee3dfb651e008074de6c..f50c59da1426efac09e863dd2c7655575b2b9c7b 100644 (file)
@@ -196,6 +196,15 @@ wasm_invoke_iiiiii (void *target_func, InterpMethodArguments *margs)
        *(int*)margs->retval = res;
 }
 
+static void
+wasm_invoke_iiiiiiiii (void *target_func, InterpMethodArguments *margs)
+{
+       int (*func)(gpointer a, gpointer b, gpointer c, gpointer d, gpointer e, gpointer f, gpointer g, gpointer h) = target_func;
+       int res = func (margs->iargs [0], margs->iargs [1], margs->iargs [2], margs->iargs [3], margs->iargs [4], margs->iargs [5], margs->iargs [6], margs->iargs [7]);
+       *(int*)margs->retval = res;
+}
+
+
 typedef union {
        gint64 l;
        struct {
@@ -363,6 +372,8 @@ wasm_enter_icall_trampoline (void *target_func, InterpMethodArguments *margs)
                wasm_invoke_iiiii (target_func, margs);
        else if (!strcmp ("IIIIII", cookie))
                wasm_invoke_iiiiii (target_func, margs);
+       else if (!strcmp ("IIIIIIIII", cookie))
+               wasm_invoke_iiiiiiiii (target_func, margs);
        else if (!strcmp ("L", cookie))
                wasm_invoke_l (target_func, margs);
        else if (!strcmp ("LL", cookie))
@@ -427,4 +438,8 @@ mono_aot_get_trampoline_full (const char *name, MonoTrampInfo **out_tinfo)
 
        return code;
 }
-#endif
+#else /* TARGET_WASM */
+
+MONO_EMPTY_SOURCE_FILE (aot_runtime_wasm);
+
+#endif /* TARGET_WASM */
index a364415e2575b91e95966579e838fdb30c633f2f..dbbb646297d7850c260d5732a98a05be25753627 100644 (file)
@@ -52,6 +52,7 @@
 #include "mono/utils/mono-hwcap.h"
 #include "mono/utils/mono-logger-internals.h"
 #include "mono/metadata/w32handle.h"
+#include "mono/metadata/callspec.h"
 
 #include "mini.h"
 #include "jit.h"
@@ -1454,7 +1455,7 @@ mono_jit_parse_options (int argc, char * argv[])
                 * Need to call this before mini_init () so we can trace methods 
                 * compiled there too.
                 */
-               mono_jit_trace_calls = mono_trace_parse_options (trace_options);
+               mono_jit_trace_calls = mono_trace_set_options (trace_options);
                if (mono_jit_trace_calls == NULL)
                        exit (1);
        }
@@ -2019,7 +2020,7 @@ mono_main (int argc, char* argv[])
                 * Need to call this before mini_init () so we can trace methods 
                 * compiled there too.
                 */
-               mono_jit_trace_calls = mono_trace_parse_options (trace_options);
+               mono_jit_trace_calls = mono_trace_set_options (trace_options);
                if (mono_jit_trace_calls == NULL)
                        exit (1);
        }
@@ -2140,8 +2141,7 @@ mono_main (int argc, char* argv[])
                return 2;
        }
 
-       if (trace_options != NULL)
-               mono_trace_set_assembly (assembly);
+       mono_callspec_set_assembly (assembly);
 
        if (mono_compile_aot || action == DO_EXEC) {
                const char *error;
@@ -2400,7 +2400,7 @@ mono_jit_aot_compiling (void)
 gboolean
 mono_jit_set_trace_options (const char* options)
 {
-       MonoTraceSpec *trace_opt = mono_trace_parse_options (options);
+       MonoCallSpec *trace_opt = mono_trace_set_options (options);
        if (trace_opt == NULL)
                return FALSE;
        mono_jit_trace_calls = trace_opt;
index fb8d1736c10ac7b69b803ea9d0174677b902b9e7..9e19a8d25e720d597476dad7277367f752da16d4 100644 (file)
@@ -43,7 +43,7 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        labels [0] = code;
        arm_cbzx (code, ARMREG_IP1, 0);
        for (i = 0; i < 32; ++i)
-               arm_ldrfpx (code, i, ctx_reg, MONO_STRUCT_OFFSET (MonoContext, fregs) + (i * 8));
+               arm_ldrfpx (code, i, ctx_reg, MONO_STRUCT_OFFSET (MonoContext, fregs) + (i * sizeof (MonoContextSimdReg)));
        mono_arm_patch (labels [0], code, MONO_R_ARM64_CBZ);
        /* Restore gregs */
        // FIXME: Restore less registers
@@ -124,7 +124,7 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        labels [0] = code;
        arm_cbzx (code, ARMREG_IP0, 0);
        for (i = 0; i < num_fregs; ++i)
-               arm_ldrfpx (code, ARMREG_D8 + i, ARMREG_R0, MONO_STRUCT_OFFSET (MonoContext, fregs) + ((i + 8) * 8));
+               arm_ldrfpx (code, ARMREG_D8 + i, ARMREG_R0, MONO_STRUCT_OFFSET (MonoContext, fregs) + ((i + 8) * sizeof (MonoContextSimdReg)));
        mono_arm_patch (labels [0], code, MONO_R_ARM64_CBZ);
        /* Load fp */
        arm_ldrx (code, ARMREG_FP, ARMREG_R0, MONO_STRUCT_OFFSET (MonoContext, regs) + (ARMREG_FP * 8));
@@ -393,7 +393,8 @@ mono_arm_throw_exception (gpointer arg, mgreg_t pc, mgreg_t *int_regs, gdouble *
        /* Initialize a ctx based on the arguments */
        memset (&ctx, 0, sizeof (MonoContext));
        memcpy (&(ctx.regs [0]), int_regs, sizeof (mgreg_t) * 32);
-       memcpy (&(ctx.fregs [ARMREG_D8]), fp_regs, sizeof (double) * 8);
+       for (int i = 0; i < 8; i++)
+               *((gdouble*)&ctx.fregs [ARMREG_D8 + i]) = fp_regs [i];
        ctx.has_fregs = 1;
        ctx.pc = pc;
 
@@ -422,7 +423,8 @@ mono_arm_resume_unwind (gpointer arg, mgreg_t pc, mgreg_t *int_regs, gdouble *fp
        /* Initialize a ctx based on the arguments */
        memset (&ctx, 0, sizeof (MonoContext));
        memcpy (&(ctx.regs [0]), int_regs, sizeof (mgreg_t) * 32);
-       memcpy (&(ctx.fregs [ARMREG_D8]), fp_regs, sizeof (double) * 8);
+       for (int i = 0; i < 8; i++)
+               *((gdouble*)&ctx.fregs [ARMREG_D8 + i]) = fp_regs [i];
        ctx.has_fregs = 1;
        ctx.pc = pc;
 
@@ -460,7 +462,8 @@ mono_arch_unwind_frame (MonoDomain *domain, MonoJitTlsData *jit_tls,
 
                memcpy (regs, &new_ctx->regs, sizeof (mgreg_t) * 32);
                /* v8..v15 are callee saved */
-               memcpy (regs + MONO_MAX_IREGS, &(new_ctx->fregs [8]), sizeof (mgreg_t) * 8);
+               for (int i = 0; i < 8; i++)
+                       (regs + MONO_MAX_IREGS) [i] = *((mgreg_t*)&new_ctx->fregs [8 + i]);
 
                mono_unwind_frame (unwind_info, unwind_info_len, ji->code_start, 
                                                   (guint8*)ji->code_start + ji->code_size,
@@ -468,7 +471,8 @@ mono_arch_unwind_frame (MonoDomain *domain, MonoJitTlsData *jit_tls,
                                                   save_locations, MONO_MAX_IREGS, &cfa);
 
                memcpy (&new_ctx->regs, regs, sizeof (mgreg_t) * 32);
-               memcpy (&(new_ctx->fregs [8]), regs + MONO_MAX_IREGS, sizeof (mgreg_t) * 8);
+               for (int i = 0; i < 8; i++)
+                       *((mgreg_t*)&new_ctx->fregs [8 + i]) = (regs + MONO_MAX_IREGS) [i];
 
                new_ctx->pc = regs [ARMREG_LR];
                new_ctx->regs [ARMREG_SP] = (mgreg_t)cfa;
index b5796520341be55f2ba19929cf8b695cde1a2395..1bc5a2cf720e6ea557da34f5fc621c3d13875b96 100644 (file)
@@ -3044,4 +3044,62 @@ L_3:
                                                                                                                                                           valuetype [mscorlib]System.Decimal)
                IL_0028:  ret
        }
+
+  .method private hidebysig static void  fail_inline() cil managed
+  {
+    // Code size       9 (0x9)
+    .maxstack  8
+    IL_0000:  ldc.i4.s   16
+    IL_0002:  conv.u
+    IL_0003:  ldc.i4.1
+    IL_0004:  mul.ovf.un
+    IL_0005:  localloc
+    IL_0007:  pop
+    IL_0008:  ret
+  }
+
+  .method private hidebysig static int32
+          always_inline(int32 op) cil managed aggressiveinlining
+  {
+    // Code size       24 (0x18)
+    .maxstack  8
+    IL_0000:  ldarg.0
+    IL_0001:  brfalse.s  IL_0009
+
+    IL_0003:  ldarg.0
+    IL_0004:  ldc.i4.2
+    IL_0005:  beq.s      IL_000b
+
+    IL_0007:  br.s       IL_000d
+
+    IL_0009:  ldc.i4.0
+    IL_000a:  ret
+
+    IL_000b:  ldc.i4.3
+    IL_000c:  ret
+
+    IL_000d:  call       void Tests::fail_inline()
+    IL_0012:  newobj     instance void [mscorlib]System.Exception::.ctor()
+    IL_0017:  throw
+  }
+
+  .method public hidebysig static int32 test_3_regress_59608() cil managed
+  {
+    .maxstack  8
+    IL_0000:  ldc.i4.2
+    IL_0001:  call       int32 Tests::always_inline(int32)
+    IL_000c:  ret
+  }
+
+  .method public hidebysig static int32 test_104_conv_u_and_string() cil managed
+  {
+    .maxstack  8
+       ldstr "hello"
+       conv.u
+       call int32 [mscorlib]System.Runtime.CompilerServices.RuntimeHelpers::get_OffsetToStringData()
+       add
+       ldind.u2
+       ret
+  }
+
 }
index 1868eb62c1024e74b43f95dd60d3930562ba25b5..0bdb158053412048eeb49db2387fdf86f22fbfb1 100644 (file)
@@ -2503,6 +2503,7 @@ generate (MonoMethod *method, InterpMethod *rtm, unsigned char *is_bb_start, Mon
 #endif
                                break;
                        case STACK_TYPE_MP:
+                       case STACK_TYPE_O:
                                break;
                        default:
                                g_assert_not_reached ();
index 3ac76cdfd8da9c4ea1327993de1364edac13c075..54e8c3580bf1ac6270c750908ad59a82b1165102 100644 (file)
@@ -1070,6 +1070,7 @@ type_from_op (MonoCompile *cfg, MonoInst *ins, MonoInst *src1, MonoInst *src2)
                        break;
                case STACK_PTR:
                case STACK_MP:
+               case STACK_OBJ:
 #if SIZEOF_VOID_P == 8
                        ins->opcode = OP_LCONV_TO_U;
 #else
@@ -6134,9 +6135,7 @@ inline_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig,
        prev_args = cfg->args;
        prev_arg_types = cfg->arg_types;
        prev_inlined_method = cfg->inlined_method;
-       cfg->inlined_method = cmethod;
-       cfg->ret_var_set = FALSE;
-       cfg->inline_depth ++;
+       prev_ret_var_set = cfg->ret_var_set;
        prev_real_offset = cfg->real_offset;
        prev_cbb_hash = cfg->cbb_hash;
        prev_cil_offset_to_bb = cfg->cil_offset_to_bb;
@@ -6146,9 +6145,12 @@ inline_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig,
        prev_cbb = cfg->cbb;
        prev_current_method = cfg->current_method;
        prev_generic_context = cfg->generic_context;
-       prev_ret_var_set = cfg->ret_var_set;
        prev_disable_inline = cfg->disable_inline;
 
+       cfg->inlined_method = cmethod;
+       cfg->ret_var_set = FALSE;
+       cfg->inline_depth ++;
+
        if (ip && *ip == CEE_CALLVIRT && !(cmethod->flags & METHOD_ATTRIBUTE_STATIC))
                virtual_ = TRUE;
 
index 73be22c7c6e91d531b43f47c54efdeb9be0424ec..aca60d498f487a1cd60bd8c6fada8741d10ebff4 100644 (file)
@@ -100,8 +100,6 @@ mono_thread_state_init_from_handle (MonoThreadUnwindState *tctx, MonoThreadInfo
        kern_return_t ret;
        mach_msg_type_number_t num_state, num_fpstate;
        thread_state_t state, fpstate;
-       ucontext_t ctx;
-       mcontext_t mctx;
        MonoJitTlsData *jit_tls;
        void *domain;
        MonoLMF *lmf = NULL;
@@ -116,7 +114,6 @@ mono_thread_state_init_from_handle (MonoThreadUnwindState *tctx, MonoThreadInfo
 
        state = (thread_state_t) alloca (mono_mach_arch_get_thread_state_size ());
        fpstate = (thread_state_t) alloca (mono_mach_arch_get_thread_fpstate_size ());
-       mctx = (mcontext_t) alloca (mono_mach_arch_get_mcontext_size ());
 
        do {
                ret = mono_mach_arch_get_thread_states (info->native_handle, state, &num_state, fpstate, &num_fpstate);
@@ -124,10 +121,7 @@ mono_thread_state_init_from_handle (MonoThreadUnwindState *tctx, MonoThreadInfo
        if (ret != KERN_SUCCESS)
                return FALSE;
 
-       mono_mach_arch_thread_states_to_mcontext (state, fpstate, mctx);
-       ctx.uc_mcontext = mctx;
-
-       mono_sigctx_to_monoctx (&ctx, &tctx->ctx);
+       mono_mach_arch_thread_states_to_mono_context (state, fpstate, &tctx->ctx);
 
        /* mono_set_jit_tls () sets this */
        jit_tls = mono_thread_info_tls_get (info, TLS_KEY_JIT_TLS);
index af04f0bb7966ac94eb40a7e290d3ca0d2b072549..dd2e12aa9512080c4494af31cf29b4c537535ce4 100644 (file)
@@ -79,7 +79,7 @@
 #include "mini-llvm.h"
 #include "lldb.h"
 
-MonoTraceSpec *mono_jit_trace_calls;
+MonoCallSpec *mono_jit_trace_calls;
 MonoMethodDesc *mono_inject_async_exc_method;
 int mono_inject_async_exc_pos;
 MonoMethodDesc *mono_break_at_bb_method;
index f8d052627cd72c45b10e5563471039bbb43eb0b9..1ce7a63264a5790cfeeef1afa271db606f938bc6 100644 (file)
 #include "mono/metadata/marshal.h"
 #include "mono/metadata/security-manager.h"
 #include "mono/metadata/exception.h"
+#include "mono/metadata/callspec.h"
 
 /*
  * The mini code should not have any compile time dependencies on the GC being used, so the same object file from mini/
  * can be linked into both mono and mono-sgen.
  */
+#if !defined(MONO_DLL_EXPORT) || !defined(_MSC_VER)
 #if defined(HAVE_BOEHM_GC) || defined(HAVE_SGEN_GC)
 #error "The code in mini/ should not depend on these defines."
 #endif
+#endif
 
 #ifndef __GNUC__
 /*#define __alignof__(a) sizeof(a)*/
@@ -537,9 +540,8 @@ typedef struct MonoMethodVar MonoMethodVar;
 typedef struct MonoBasicBlock MonoBasicBlock;
 typedef struct MonoLMF MonoLMF;
 typedef struct MonoSpillInfo MonoSpillInfo;
-typedef struct MonoTraceSpec MonoTraceSpec;
 
-extern MonoTraceSpec *mono_jit_trace_calls;
+extern MonoCallSpec *mono_jit_trace_calls;
 extern gboolean mono_break_on_exc;
 extern int mono_exc_esp_offset;
 extern gboolean mono_compile_aot;
@@ -2992,8 +2994,7 @@ MONO_API void      mono_debugger_run_finally             (MonoContext *start_ctx
 MONO_API gboolean mono_breakpoint_clean_code (guint8 *method_start, guint8 *code, int offset, guint8 *buf, int size);
 
 /* Tracing */
-MonoTraceSpec *mono_trace_parse_options         (const char *options);
-void           mono_trace_set_assembly          (MonoAssembly *assembly);
+MonoCallSpec *mono_trace_set_options           (const char *options);
 gboolean       mono_trace_eval                  (MonoMethod *method);
 
 extern void
index 568589ebe2758600e2b68e95d7b813c3903bafa1..940c19345e16e174ead8e7a28996fc89a858b3a4 100644 (file)
@@ -244,6 +244,7 @@ class Tests
                return 1;
        }
 
+       [Category ("!WASM")] //Stack traces / EH are super broken on WASM + Interpreter
        public static int test_0_stack_traces () {
                //
                // Get a stacktrace for an interp->jit->interp call stack
index 3c916a941b3ddf62af09f0ed8db444584e76c84e..0d6b19e857eb2c75b717b1d90e0ca8126c19a81f 100644 (file)
 #include <string.h>
 #include "mini.h"
 #include <mono/metadata/debug-helpers.h>
-#include <mono/metadata/assembly.h>
 #include <mono/utils/mono-time.h>
 #include <mono/utils/mono-memory-model.h>
 #include "trace.h"
+#include <mono/metadata/callspec.h>
 
 #if defined (HOST_ANDROID) || (defined (TARGET_IOS) && defined (TARGET_IOS))
 #  undef printf
 #  define fprintf(__ignore, ...) g_log ("mono-gc", G_LOG_LEVEL_MESSAGE, __VA_ARGS__)
 #endif
 
-static MonoTraceSpec trace_spec;
+static MonoCallSpec trace_spec;
 
 static volatile gint32 output_lock = 0;
 
-gboolean
-mono_trace_eval_exception (MonoClass *klass)
-{
-       int include = 0;
-       int i;
-
-       if (!klass)
-               return FALSE;
-
-       for (i = 0; i < trace_spec.len; i++) {
-               MonoTraceOperation *op = &trace_spec.ops [i];
-               int inc = 0;
-               
-               switch (op->op){
-               case MONO_TRACEOP_EXCEPTION:
-                       if (strcmp ("", op->data) == 0 && strcmp ("all", op->data2) == 0)
-                               inc = 1;
-                       else if (strcmp ("", op->data) == 0 || strcmp (klass->name_space, op->data) == 0)
-                               if (strcmp (klass->name, op->data2) == 0)
-                                       inc = 1;
-                       break;
-               default:
-                       break;
-               }
-               if (op->exclude){
-                       if (inc)
-                               include = 0;
-               } else if (inc)
-                       include = 1;
-       }
-
-       return include;
-}
-
-gboolean
-mono_trace_eval (MonoMethod *method)
-{
-       int include = 0;
-       int i;
-
-       for (i = 0; i < trace_spec.len; i++){
-               MonoTraceOperation *op = &trace_spec.ops [i];
-               int inc = 0;
-               
-               switch (op->op){
-               case MONO_TRACEOP_ALL:
-                       inc = 1;
-                       break;
-               case MONO_TRACEOP_PROGRAM:
-                       if (trace_spec.assembly && (method->klass->image == mono_assembly_get_image (trace_spec.assembly)))
-                               inc = 1;
-                       break;
-               case MONO_TRACEOP_WRAPPER:
-                       if ((method->wrapper_type == MONO_WRAPPER_NATIVE_TO_MANAGED) ||
-                               (method->wrapper_type == MONO_WRAPPER_MANAGED_TO_NATIVE))
-                               inc = 1;
-                       break;
-               case MONO_TRACEOP_METHOD:
-                       if (mono_method_desc_full_match ((MonoMethodDesc *) op->data, method))
-                               inc = 1;
-                       break;
-               case MONO_TRACEOP_CLASS:
-                       if (strcmp (method->klass->name_space, op->data) == 0)
-                               if (strcmp (method->klass->name, op->data2) == 0)
-                                       inc = 1;
-                       break;
-               case MONO_TRACEOP_ASSEMBLY:
-                       if (strcmp (mono_image_get_name (method->klass->image), op->data) == 0)
-                               inc = 1;
-                       break;
-               case MONO_TRACEOP_NAMESPACE:
-                       if (strcmp (method->klass->name_space, op->data) == 0)
-                               inc = 1;
-                       break;
-               case MONO_TRACEOP_EXCEPTION:
-                       break;
-               }
-               if (op->exclude) {
-                       if (inc)
-                               include = 0;
-               } else if (inc) {
-                       include = 1;
-               }
-       }
-       return include;
-}
-
-static int is_filenamechar (char p)
-{
-       if (p >= 'A' && p <= 'Z')
-               return TRUE;
-       if (p >= 'a' && p <= 'z')
-               return TRUE;
-       if (p >= '0' && p <= '9')
-               return TRUE;
-       if (p == '.' || p == ':' || p == '_' || p == '-' || p == '`')
-               return TRUE;
-       return FALSE;
-}
-
-static char *input;
-static char *value;
-
-static void get_string (void)
+gboolean mono_trace_eval_exception (MonoClass *klass)
 {
-       char *start = input;
-       while (is_filenamechar (*input)){
-               input++;
-       }
-       if (value != NULL)
-               g_free (value);
-       size_t len = input - start;
-       value = (char *)g_malloc (len + 1);
-       memcpy (value, start, len);
-       value [len] = 0;
+       return mono_callspec_eval_exception (klass, &trace_spec);
 }
 
-enum Token {
-       TOKEN_METHOD,
-       TOKEN_CLASS,
-       TOKEN_ALL,
-       TOKEN_PROGRAM,
-       TOKEN_EXCEPTION,
-       TOKEN_NAMESPACE,
-       TOKEN_WRAPPER,
-       TOKEN_STRING,
-       TOKEN_EXCLUDE,
-       TOKEN_DISABLED,
-       TOKEN_SEPARATOR,
-       TOKEN_END,
-       TOKEN_ERROR
-};
-
-static int
-get_token (void)
+gboolean mono_trace_eval (MonoMethod *method)
 {
-       while (input [0] == '+')
-               input++;
-
-       if (input [0] == '\0') {
-               return TOKEN_END;
-       }
-       if (input [0] == 'M' && input [1] == ':'){
-               input += 2;
-               get_string ();
-               return TOKEN_METHOD;
-       }
-       if (input [0] == 'N' && input [1] == ':'){
-               input += 2;
-               get_string ();
-               return TOKEN_NAMESPACE;
-       }
-       if (input [0] == 'T' && input [1] == ':'){
-               input += 2;
-               get_string ();
-               return TOKEN_CLASS;
-       }
-       if (input [0] == 'E' && input [1] == ':'){
-               input += 2;
-               get_string ();
-               return TOKEN_EXCEPTION;
-       }
-       if (*input == '-'){
-               input++;
-               return TOKEN_EXCLUDE;
-       }
-       if (is_filenamechar (*input)){
-               get_string ();
-               if (strcmp (value, "all") == 0)
-                       return TOKEN_ALL;
-               if (strcmp (value, "program") == 0)
-                       return TOKEN_PROGRAM;
-               if (strcmp (value, "wrapper") == 0)
-                       return TOKEN_WRAPPER;
-               if (strcmp (value, "disabled") == 0)
-                       return TOKEN_DISABLED;
-               return TOKEN_STRING;
-       }
-       if (*input == ','){
-               input++;
-               return TOKEN_SEPARATOR;
-       }
-
-       fprintf (stderr, "Syntax error at or around '%s'\n", input);    
-       return TOKEN_ERROR;
+       return mono_callspec_eval (method, &trace_spec);
 }
 
-static void
-cleanup (void)
+MonoCallSpec *mono_trace_set_options (const char *options)
 {
-       if (value != NULL)
-               g_free (value);
-}
-
-static int
-get_spec (int *last)
-{
-       int token = get_token ();
-       if (token == TOKEN_EXCLUDE){
-               token = get_spec (last);
-               if (token == TOKEN_EXCLUDE){
-                       fprintf (stderr, "Expecting an expression");
-                       return TOKEN_ERROR;
-               }
-               if (token == TOKEN_ERROR)
-                       return token;
-               trace_spec.ops [(*last)-1].exclude = 1;
-               return TOKEN_SEPARATOR;
-       }
-       if (token == TOKEN_END || token == TOKEN_SEPARATOR || token == TOKEN_ERROR)
-               return token;
-       
-       if (token == TOKEN_METHOD){
-               MonoMethodDesc *desc = mono_method_desc_new (value, TRUE);
-               if (desc == NULL){
-                       fprintf (stderr, "Invalid method name: %s\n", value);
-                       return TOKEN_ERROR;
-               }
-               trace_spec.ops [*last].op = MONO_TRACEOP_METHOD;
-               trace_spec.ops [*last].data = desc;
-       } else if (token == TOKEN_ALL)
-               trace_spec.ops [*last].op = MONO_TRACEOP_ALL;
-       else if (token == TOKEN_PROGRAM)
-               trace_spec.ops [*last].op = MONO_TRACEOP_PROGRAM;
-       else if (token == TOKEN_WRAPPER)
-               trace_spec.ops [*last].op = MONO_TRACEOP_WRAPPER;
-       else if (token == TOKEN_NAMESPACE){
-               trace_spec.ops [*last].op = MONO_TRACEOP_NAMESPACE;
-               trace_spec.ops [*last].data = g_strdup (value);
-       } else if (token == TOKEN_CLASS || token == TOKEN_EXCEPTION){
-               char *p = strrchr (value, '.');
-               if (p) {
-                       *p++ = 0;
-                       trace_spec.ops [*last].data = g_strdup (value);
-                       trace_spec.ops [*last].data2 = g_strdup (p);
-               }
-               else {
-                       trace_spec.ops [*last].data = g_strdup ("");
-                       trace_spec.ops [*last].data2 = g_strdup (value);
-               }
-               trace_spec.ops [*last].op = token == TOKEN_CLASS ? MONO_TRACEOP_CLASS : MONO_TRACEOP_EXCEPTION;
-       } else if (token == TOKEN_STRING){
-               trace_spec.ops [*last].op = MONO_TRACEOP_ASSEMBLY;
-               trace_spec.ops [*last].data = g_strdup (value);
-       } else if (token == TOKEN_DISABLED) {
-               trace_spec.enabled = FALSE;
-       } else {
-               fprintf (stderr, "Syntax error in trace option specification\n");
-               return TOKEN_ERROR;
+       char *errstr;
+       if (!mono_callspec_parse (options, &trace_spec, &errstr)) {
+               fprintf (stderr, "%s\n", errstr);
+               g_free (errstr);
+               return NULL;
        }
-       (*last)++;
-       return TOKEN_SEPARATOR;
-}
 
-MonoTraceSpec *
-mono_trace_parse_options (const char *options)
-{
-       char *p = (char*)options;
-       int size = 1;
-       int last_used;
-       int token;
-
-       trace_spec.enabled = TRUE;
-       if (*p == 0){
-               trace_spec.len = 1;
-               trace_spec.ops = g_new0 (MonoTraceOperation, 1);
-               trace_spec.ops [0].op = MONO_TRACEOP_ALL;
-               return &trace_spec;
-       }
-               
-       for (p = (char*)options; *p != 0; p++)
-               if (*p == ',')
-                       size++;
-       
-       trace_spec.ops = g_new0 (MonoTraceOperation, size);
-
-       input = (char*)options;
-       last_used = 0;
-       
-       while ((token = (get_spec (&last_used))) != TOKEN_END){
-               if (token == TOKEN_ERROR)
-                       return NULL;
-               if (token == TOKEN_SEPARATOR)
-                       continue;
-       }
-       trace_spec.len = last_used;
-       cleanup ();
        return &trace_spec;
 }
 
-void
-mono_trace_set_assembly (MonoAssembly *assembly)
-{
-       trace_spec.assembly = assembly;
-}
-
 static
 #ifdef HAVE_KW_THREAD
 __thread 
index 7f6d4562f7d4a1cbcddd01128fa5981618ff1fae..516fd8c60f712170ec1808f32239231107dd1f84 100644 (file)
@@ -7,31 +7,6 @@
 #include <glib.h>
 #include "mono/utils/mono-compiler.h"
 
-typedef enum {
-       MONO_TRACEOP_ALL,
-       MONO_TRACEOP_PROGRAM,
-       MONO_TRACEOP_METHOD,
-       MONO_TRACEOP_ASSEMBLY,
-       MONO_TRACEOP_CLASS,
-       MONO_TRACEOP_NAMESPACE,
-       MONO_TRACEOP_EXCEPTION,
-       MONO_TRACEOP_WRAPPER,
-} MonoTraceOpcode;
-
-typedef struct {
-       MonoTraceOpcode op;
-       int   exclude;
-       void *data, *data2;
-} MonoTraceOperation;
-
-struct MonoTraceSpec {
-       int len;
-       gboolean enabled;
-       MonoTraceOperation *ops;
-
-       MonoAssembly *assembly;
-};
-
 G_BEGIN_DECLS
 
 void
index 3cfadd1e5138ba73a8edc41cd0d618dceb975a53..b20444f31db4fc324d731d8c6a3d15301627bca8 100644 (file)
@@ -104,6 +104,24 @@ parse_arg (const char *arg, ProfilerConfig *config)
        } else if (match_option (arg, "calldepth", &val)) {
                char *end;
                config->max_call_depth = strtoul (val, &end, 10);
+       } else if (match_option (arg, "callspec", &val)) {
+               if (!val)
+                       val = "";
+               if (val[0] == '\"')
+                       ++val;
+               char *spec = g_strdup (val);
+               size_t speclen = strlen (val);
+               if (speclen > 0 && spec[speclen - 1] == '\"')
+                       spec[speclen - 1] = '\0';
+               char *errstr;
+               if (!mono_callspec_parse (spec, &config->callspec, &errstr)) {
+                       mono_profiler_printf_err (
+                           "Could not parse callspec: '%s': %s", spec,
+                           errstr);
+                       g_free (errstr);
+                       mono_callspec_cleanup (&config->callspec);
+               }
+               g_free (spec);
        } else if (match_option (arg, "covfilter-file", &val)) {
                if (config->cov_filter_files == NULL)
                        config->cov_filter_files = g_ptr_array_new ();
index f3dbc56cbad61ad5382d149c07877bdd0359877b..8a677c2720d48bba530592351a5f6283d87f970b 100644 (file)
@@ -1816,6 +1816,10 @@ method_exc_leave (MonoProfiler *prof, MonoMethod *method, MonoObject *exc)
 static MonoProfilerCallInstrumentationFlags
 method_filter (MonoProfiler *prof, MonoMethod *method)
 {
+       if (log_config.callspec.len > 0 &&
+           !mono_callspec_eval (method, &log_config.callspec))
+               return MONO_PROFILER_CALL_INSTRUMENTATION_NONE;
+
        return MONO_PROFILER_CALL_INSTRUMENTATION_ENTER |
               MONO_PROFILER_CALL_INSTRUMENTATION_LEAVE |
               MONO_PROFILER_CALL_INSTRUMENTATION_TAIL_CALL |
index f0503e4a4e423f7c9bc43c131d9ba5a3d3537642..e381d8975471a34d1895b98bb0f05b07a54db502 100644 (file)
@@ -4,6 +4,7 @@
 #include <glib.h>
 #define MONO_PROFILER_UNSTABLE_GC_ROOTS
 #include <mono/metadata/profiler.h>
+#include <mono/metadata/callspec.h>
 
 #define BUF_ID 0x4D504C01
 #define LOG_HEADER_ID 0x4D505A01
@@ -537,6 +538,9 @@ typedef struct {
 
        // Sample mode. Only used at startup.
        MonoProfilerSampleMode sampling_mode;
+
+       // Callspec config - which methods are to be instrumented
+       MonoCallSpec callspec;
 } ProfilerConfig;
 
 void proflog_parse_args (ProfilerConfig *config, const char *desc);
index e06ac6d3f83f22177fa54f48f5dc96fa23870e98..3f14d5ee7acab33c1d35ccb0b84b3640bc9eb7e8 100644 (file)
@@ -2167,7 +2167,7 @@ major_free_swept_blocks (size_t section_reserve)
 {
        SGEN_ASSERT (0, sweep_state == SWEEP_STATE_SWEPT, "Sweeping must have finished before freeing blocks");
 
-#if defined(HOST_WIN32) || defined(HOST_ORBIS)
+#if defined(HOST_WIN32) || defined(HOST_ORBIS) || defined (HOST_WASM)
                /*
                 * sgen_free_os_memory () asserts in mono_vfree () because windows doesn't like freeing the middle of
                 * a VirtualAlloc ()-ed block.
index 733f94c343cf1c93b90f3e769fbc0f12c0610e40..ceef5f25e459e0c94b91dee4a56c5084b581e4a7 100644 (file)
@@ -89,6 +89,7 @@ mono_mach_arch_thread_states_to_mono_context (thread_state_t state, thread_state
        context->gregs [AMD64_RCX] = arch_state->__rcx;
        context->gregs [AMD64_RDX] = arch_state->__rdx;
        context->gregs [AMD64_RDI] = arch_state->__rdi;
+       context->gregs [AMD64_RSI] = arch_state->__rsi;
        context->gregs [AMD64_RBP] = arch_state->__rbp;
        context->gregs [AMD64_RSP] = arch_state->__rsp;
        context->gregs [AMD64_R8] = arch_state->__r8;
index 5033eb19d66807abf1b506ce51700085d5858517..33c076974114e42346192fd12c7ed6503408e3d5 100644 (file)
@@ -70,18 +70,22 @@ void
 mono_mach_arch_thread_states_to_mcontext (thread_state_t state, thread_state_t fpstate, void *context)
 {
        arm_unified_thread_state_t *arch_state = (arm_unified_thread_state_t *) state;
+       arm_neon_state64_t *arch_fpstate = (arm_neon_state64_t*) fpstate;
        struct __darwin_mcontext64 *ctx = (struct __darwin_mcontext64 *) context;
 
        ctx->__ss = arch_state->ts_64;
+       ctx->__ns = *arch_fpstate;
 }
 
 void
 mono_mach_arch_mcontext_to_thread_states (void *context, thread_state_t state, thread_state_t fpstate)
 {
        arm_unified_thread_state_t *arch_state = (arm_unified_thread_state_t *) state;
+       arm_neon_state64_t *arch_fpstate = (arm_neon_state64_t*) fpstate;
        struct __darwin_mcontext64 *ctx = (struct __darwin_mcontext64 *) context;
 
        arch_state->ts_64 = ctx->__ss;
+       *arch_fpstate = ctx->__ns;
 }
 
 void
@@ -89,6 +93,8 @@ mono_mach_arch_thread_states_to_mono_context (thread_state_t state, thread_state
 {
        int i;
        arm_unified_thread_state_t *arch_state = (arm_unified_thread_state_t *) state;
+       arm_neon_state64_t *arch_fpstate = (arm_neon_state64_t*) fpstate;
+
        for (i = 0; i < 29; ++i)
                context->regs [i] = arch_state->ts_64.__x [i];
 
@@ -96,6 +102,9 @@ mono_mach_arch_thread_states_to_mono_context (thread_state_t state, thread_state
        context->regs [ARMREG_R30] = arch_state->ts_64.__lr;
        context->regs [ARMREG_SP] = arch_state->ts_64.__sp;
        context->pc = arch_state->ts_64.__pc;
+
+       for (i = 0; i < 32; ++i)
+               context->fregs [i] = arch_fpstate->__v [i];
 }
 
 int
@@ -114,18 +123,28 @@ kern_return_t
 mono_mach_arch_get_thread_states (thread_port_t thread, thread_state_t state, mach_msg_type_number_t *count, thread_state_t fpstate, mach_msg_type_number_t *fpcount)
 {
        arm_unified_thread_state_t *arch_state = (arm_unified_thread_state_t *) state;
+       arm_neon_state64_t *arch_fpstate = (arm_neon_state64_t *) fpstate;
        kern_return_t ret;
 
        *count = ARM_UNIFIED_THREAD_STATE_COUNT;
-
        ret = thread_get_state (thread, ARM_UNIFIED_THREAD_STATE, (thread_state_t) arch_state, count);
+       if (ret != KERN_SUCCESS)
+               return ret;
+
+       *fpcount = ARM_NEON_STATE64_COUNT;
+       ret = thread_get_state (thread, ARM_NEON_STATE64, (thread_state_t) arch_fpstate, fpcount);
        return ret;
 }
 
 kern_return_t
 mono_mach_arch_set_thread_states (thread_port_t thread, thread_state_t state, mach_msg_type_number_t count, thread_state_t fpstate, mach_msg_type_number_t fpcount)
 {
-       return thread_set_state (thread, ARM_UNIFIED_THREAD_STATE, state, count);
+       kern_return_t ret;
+       ret = thread_set_state (thread, ARM_UNIFIED_THREAD_STATE, state, count);
+       if (ret != KERN_SUCCESS)
+               return ret;
+       ret = thread_set_state (thread, ARM_NEON_STATE64, fpstate, fpcount);
+       return ret;
 }
 
 void *
index 3e1b4108b4e2a3c9e27df66843593c7fdea0aff4..50a91886fc17690f5e4ed2df3e7458bd8f10c227 100644 (file)
@@ -10,6 +10,9 @@
  * compiler behaviours.
  */
 #include <config.h>
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
 
 #ifdef __GNUC__
 #define MONO_ATTR_USED __attribute__ ((__used__))
@@ -130,5 +133,37 @@ typedef SSIZE_T ssize_t;
 #define MONO_NO_SANITIZE_THREAD
 #endif
 
+/* Used when building with Android NDK's unified headers */
+#if defined(HOST_ANDROID)
+#if __ANDROID_API__ < 21
+
+typedef int32_t __mono_off32_t;
+
+#ifdef HAVE_SYS_MMAN_H
+#include <sys/mman.h>
+#endif
+
+#if !defined(mmap)
+/* Unified headers before API 21 do not declare mmap when LARGE_FILES are used (via -D_FILE_OFFSET_BITS=64)
+ * which is always the case when Mono build targets Android. The problem here is that the unified headers
+ * map `mmap` to `mmap64` if large files are enabled but this api exists only in API21 onwards. Therefore
+ * we must carefully declare the 32-bit mmap here without changing the ABI along the way. Carefully because
+ * in this instance off_t is redeclared to be 64-bit and that's not what we want.
+ */
+void* mmap (void*, size_t, int, int, int, __mono_off32_t);
+#endif /* !mmap */
+
+#ifdef HAVE_SYS_SENDFILE_H
+#include <sys/sendfile.h>
+#endif
+
+#if !defined(sendfile)
+/* The same thing as with mmap happens with sendfile */
+ssize_t sendfile (int out_fd, int in_fd, __mono_off32_t* offset, size_t count);
+#endif /* !sendfile */
+
+#endif /* __ANDROID_API__ < 21 */
+#endif /* HOST_ANDROID */
+
 #endif /* __UTILS_MONO_COMPILER_H__*/
 
index b7488c7cf5214036b9720920751de1634391cce4..385eee9b1592d5fd88e81f0c161dff4783879948 100644 (file)
@@ -12,7 +12,7 @@
 #include <config.h>
 #include <glib.h>
 
-#if !defined (HAVE_COMPLEX_H)
+#if !defined (HAVE_COMPLEX_H) || (defined (ANDROID_UNIFIED_HEADERS) && __ANDROID_API__ < 23)
 #include <../../support/libm/complex.h>
 #else
 #include <complex.h>
index 3861e54f5e6a04b75c661be7308939c904008859..59ef74b215c1b642bc2967402a7f42d941be5ae5 100644 (file)
@@ -401,8 +401,7 @@ mono_sigctx_to_monoctx (void *sigctx, MonoContext *mctx)
 
        g_assert (fpctx->head.magic == FPSIMD_MAGIC);
        for (i = 0; i < 32; ++i)
-               /* Only store the bottom 8 bytes for now */
-               *(guint64*)&(mctx->fregs [i]) = fpctx->vregs [i];
+               mctx->fregs [i] = fpctx->vregs [i];
 #endif
        /* FIXME: apple */
 #endif
index 827e0ed9f813a197db765b5267bd4fbf6f75104b..367449edd8f7e0c36d94a9520661e742cbf9edff 100644 (file)
 #define MONO_CONTEXT_OFFSET(field, index, field_type) \
     "i" (offsetof (MonoContext, field) + (index) * sizeof (field_type))
 
+#if defined(TARGET_X86)
 #if defined(__APPLE__)
 typedef struct __darwin_xmm_reg MonoContextSimdReg;
 #endif
+#elif defined(TARGET_AMD64)
+#if defined(__APPLE__)
+typedef struct __darwin_xmm_reg MonoContextSimdReg;
+#elif defined(__linux__)
+typedef struct _libc_xmmreg MonoContextSimdReg;
+#endif
+#elif defined(TARGET_ARM64)
+typedef __uint128_t MonoContextSimdReg;
+#endif
 
 /*
  * General notes about mono-context.
@@ -237,7 +247,7 @@ typedef struct {
 
 typedef struct {
        mgreg_t gregs [AMD64_NREG];
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(__linux__)
        MonoContextSimdReg fregs [AMD64_XMM_NREG];
 #else
        double fregs [AMD64_XMM_NREG];
@@ -417,7 +427,8 @@ typedef struct {
 
 typedef struct {
        mgreg_t regs [32];
-       double fregs [32];
+       /* FIXME not fully saved in trampolines */
+       MonoContextSimdReg fregs [32];
        mgreg_t pc;
        /*
         * fregs might not be initialized if this context was created from a
@@ -438,12 +449,17 @@ typedef struct {
 
 #define MONO_CONTEXT_GET_CURRENT(ctx) do { \
        arm_unified_thread_state_t thread_state;        \
+       arm_neon_state64_t thread_fpstate;              \
        int state_flavor = ARM_UNIFIED_THREAD_STATE;    \
+       int fpstate_flavor = ARM_NEON_STATE64;  \
        unsigned state_count = ARM_UNIFIED_THREAD_STATE_COUNT;  \
+       unsigned fpstate_count = ARM_NEON_STATE64_COUNT;        \
        thread_port_t self = mach_thread_self ();       \
        kern_return_t ret = thread_get_state (self, state_flavor, (thread_state_t) &thread_state, &state_count);        \
        g_assert (ret == 0);    \
-       mono_mach_arch_thread_states_to_mono_context ((thread_state_t)&thread_state, (thread_state_t)NULL, &ctx); \
+       ret = thread_get_state (self, fpstate_flavor, (thread_state_t) &thread_fpstate, &fpstate_count);        \
+       g_assert (ret == 0);    \
+       mono_mach_arch_thread_states_to_mono_context ((thread_state_t) &thread_state, (thread_state_t) &thread_fpstate, &ctx); \
        mach_port_deallocate (current_task (), self);   \
 } while (0);
 
@@ -470,22 +486,22 @@ typedef struct {
                "stp x30, xzr, [x16], #8\n"     \
                "mov x30, sp\n"                         \
                "str x30, [x16], #8\n"          \
-               "stp d0, d1, [x16], #16\n"      \
-               "stp d2, d3, [x16], #16\n"      \
-               "stp d4, d5, [x16], #16\n"      \
-               "stp d6, d7, [x16], #16\n"      \
-               "stp d8, d9, [x16], #16\n"      \
-               "stp d10, d11, [x16], #16\n"    \
-               "stp d12, d13, [x16], #16\n"    \
-               "stp d14, d15, [x16], #16\n"    \
-               "stp d16, d17, [x16], #16\n"    \
-               "stp d18, d19, [x16], #16\n"    \
-               "stp d20, d21, [x16], #16\n"    \
-               "stp d22, d23, [x16], #16\n"    \
-               "stp d24, d25, [x16], #16\n"    \
-               "stp d26, d27, [x16], #16\n"    \
-               "stp d28, d29, [x16], #16\n"    \
-               "stp d30, d31, [x16], #16\n"    \
+               "stp q0, q1, [x16], #32\n"      \
+               "stp q2, q3, [x16], #32\n"      \
+               "stp q4, q5, [x16], #32\n"      \
+               "stp q6, q7, [x16], #32\n"      \
+               "stp q8, q9, [x16], #32\n"      \
+               "stp q10, q11, [x16], #32\n"    \
+               "stp q12, q13, [x16], #32\n"    \
+               "stp q14, q15, [x16], #32\n"    \
+               "stp q16, q17, [x16], #32\n"    \
+               "stp q18, q19, [x16], #32\n"    \
+               "stp q20, q21, [x16], #32\n"    \
+               "stp q22, q23, [x16], #32\n"    \
+               "stp q24, q25, [x16], #32\n"    \
+               "stp q26, q27, [x16], #32\n"    \
+               "stp q28, q29, [x16], #32\n"    \
+               "stp q30, q31, [x16], #32\n"            \
                :                                                       \
                : "r" (&ctx.regs)                       \
                : "x16", "x30", "memory"                \
index 479b8d4bf012b35782f41bfaa79fe8e74f0cc682..3837e698a168cdc77f3821a16456261bbbd5dd0b 100644 (file)
@@ -260,6 +260,7 @@ typedef struct ucontext {
        #define UCONTEXT_REG_R15(ctx) (((ucontext_t*)(ctx))->sc_r15)
 #elif !defined(HOST_WIN32)
        #define UCONTEXT_GREGS(ctx)     ((guint64*)&(((ucontext_t*)(ctx))->uc_mcontext.gregs))
+       #define UCONTEXT_FREGS(ctx)     (((ucontext_t*)(ctx))->uc_mcontext.fpregs->_xmm)
 #endif
 
 #ifdef UCONTEXT_GREGS
@@ -282,6 +283,26 @@ typedef struct ucontext {
 #define UCONTEXT_REG_R15(ctx) (UCONTEXT_GREGS ((ctx)) [REG_R15])
 #endif
 
+#ifdef UCONTEXT_FREGS
+#define UCONTEXT_REG_XMM
+#define UCONTEXT_REG_XMM0(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM0])
+#define UCONTEXT_REG_XMM1(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM1])
+#define UCONTEXT_REG_XMM2(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM2])
+#define UCONTEXT_REG_XMM3(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM3])
+#define UCONTEXT_REG_XMM4(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM4])
+#define UCONTEXT_REG_XMM5(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM5])
+#define UCONTEXT_REG_XMM6(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM6])
+#define UCONTEXT_REG_XMM7(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM7])
+#define UCONTEXT_REG_XMM8(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM8])
+#define UCONTEXT_REG_XMM9(ctx)  (UCONTEXT_FREGS ((ctx)) [AMD64_XMM9])
+#define UCONTEXT_REG_XMM10(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM10])
+#define UCONTEXT_REG_XMM11(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM11])
+#define UCONTEXT_REG_XMM12(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM12])
+#define UCONTEXT_REG_XMM13(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM13])
+#define UCONTEXT_REG_XMM14(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM14])
+#define UCONTEXT_REG_XMM15(ctx) (UCONTEXT_FREGS ((ctx)) [AMD64_XMM15])
+#endif
+
 #elif defined(__mono_ppc__)
 
 #if HAVE_UCONTEXT_H
index 5f762c83abe784c9b66e1457287e3e34ea1a2ac1..b39277393f5d87a979793202fcae936459086a32 100644 (file)
 #include <errno.h>
 #include <signal.h>
 
+#ifdef HAVE_ANDROID_LEGACY_SIGNAL_INLINES_H
+#include <android/legacy_signal_inlines.h>
+#endif
+
 #include "mono-threads-debug.h"
 
 gint
index e54aeff8d7e5a6415207d5a307bd2abb9f28b756..115e40709aae51ca8c5df9aa1dc4e4241490e57b 100644 (file)
@@ -4,14 +4,8 @@ VCXPROJS = $(wildcard *.vcxproj)
 EXTRA_DIST = \
             $(VCXPROJS) \
             README \
-            create-windef.pl \
-            mono.def \
             mono.props \
             mono.sln \
             monoposixhelper.def \
             runmdesc.bat \
             winsetup.bat
-
-update-def:
-       perl create-windef.pl mono.def ../mono/mini/.libs/libmonoboehm-2.0.so mono-2.0.dll
-       perl create-windef.pl monosgen.def ../mono/mini/.libs/libmonosgen-2.0.so monosgen-2.0.dll
index 1537d91921218dcae7d406e5bfcfb3aece212ec8..375febbdbb20e611fade4d0027c98ea77dcfd2c4 100755 (executable)
@@ -11,19 +11,28 @@ BUILDING
 
        From this directory type:
 
-            msbuild.exe mono.sln /p:Configuration=Debug_eglib
+            msbuild.exe mono.sln /p:Configuration=Debug /p:Platform=x64
 
        msbuild must be in your path, it comes with the .NET Framework.
 
 MAINTENANCE
 
-       When new exported API calls are added to the runtime, issue the
-       command:
+       Source files added to the different project .target files matches project makefile structure.
+       NOTE, all sources added to makefiles should also be added to corresponding targets files for consistency.
+       Files that should not be build on Windows should be excluded  using this configuration:
 
-               make update-def
+       <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-wasm.c">
+               <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+       </ClCompile>
 
-       in this directory and commit the resulting mono.def file.
+       and at the begning of the target file have a property set when to exclude files. This example will always
+       exclude the file, but could be condtional if needed:
 
-       This must happen on a Linux system, because we get the list of
-       the exported symbols from the generated shared library.
+       <PropertyGroup>
+               <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+       </PropertyGroup>
 
+       All header files added to makefiles should be included in the different targets files for consistency.
+
+       Each target file has a corresponding filter file, files added to target files should also be added to the corresponding
+       filter file.
diff --git a/msvc/create-windef.pl b/msvc/create-windef.pl
deleted file mode 100755 (executable)
index 7d588b9..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-
-my $outfile = shift || usage ();
-my $soname = shift || usage ();
-my $dllname = shift || usage ();
-my @symbols = ();
-my %excludes = ();
-my $cmd = "nm -D $soname";
-
-@excludes {qw(
-       mono_class_setup_vtable_general_new mono_debugger_init mono_debugger_main
-       mono_once mono_pthread_key_for_tls
-       mono_gc_pthread_create mono_gc_pthread_detach mono_gc_pthread_join
-       mono_gc_pthread_exit
-       mono_file_map_fileio mono_file_unmap_fileio
-       mono_file_map_set_allocator 
-)} = ();
-
-open (SYMS, "$cmd |") || die "Cannot run \$cmd': $!\n";
-while (<SYMS>) {
-       next unless / T (mono_.*)/;
-       next if exists $excludes {$1};
-       push @symbols, $1;
-}
-close (SYMS);
-push @symbols, "MonoFixupCorEE";
-@symbols = sort @symbols;
-
-open (OUT, ">$outfile") || die "Cannot open '$outfile': $!\n";
-print OUT "; file generated by create-windef.pl\n";
-print OUT "EXPORTS\n";
-print OUT join ("\n", @symbols);
-print OUT "\n";
-
-close (OUT);
-
-sub usage {
-       print "Usage: create-windef.pl output_file soname dllname\n";
-       exit (1);
-}
-
index fa56697667214d900e7cb4ebbd6df749a82bef7d..c847597bde1a3bf4399bb2795ac8d8d32428463d 100644 (file)
@@ -1,31 +1,36 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
+  <ItemGroup Label="common_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\eglib-remap.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\sort.frag.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\glib.h" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\garray.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gbytearray.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gerror.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\ghashtable.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\giconv.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\glist.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmarkup.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmem.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule.h" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\goutput.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpattern.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gptrarray.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gqsort.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstr.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gslist.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstring.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gptrarray.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\glist.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gqueue.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpath.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gshell.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gslist.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gspawn.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstr.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstring.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-posix.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpattern.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmarkup.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gutf8.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\unicode-data.h" />
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\glib.h" />
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule.h" />
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\sort.frag.h" />
+    <None Include="$(MonoSourceLocation)\mono\eglib\Makefile.am" />
   </ItemGroup>
 </Project>
index dcd4a5942fbed87ea4bc5076f660e25e340737f0..636adbe3e1f4e9032c13eddbe0abab22bfe4a5e0 100644 (file)
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
+  <ItemGroup Label="common_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\eglib-remap.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\sort.frag.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\glib.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClInclude>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\garray.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gbytearray.c">
-      <Filter>Source Files\Common</Filter>
-    </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gerror.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\ghashtable.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\giconv.c">
-      <Filter>Source Files\Common</Filter>
-    </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\glist.c">
-      <Filter>Source Files\Common</Filter>
-    </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmarkup.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmem.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClInclude>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\goutput.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpattern.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gqsort.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstr.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gslist.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstring.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gptrarray.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gqsort.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\glist.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gqueue.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gshell.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpath.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gslist.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gshell.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gspawn.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstr.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gstring.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-posix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode.c">
-      <Filter>Source Files\Common</Filter>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpattern.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmarkup.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gutf8.c">
-      <Filter>Source Files\Common</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
     </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\unicode-data.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\common</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\glib.h">
-      <Filter>Header Files\Common</Filter>
-    </ClInclude>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule.h">
-      <Filter>Header Files\Common</Filter>
-    </ClInclude>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\sort.frag.h">
-      <Filter>Header Files\Common</Filter>
-    </ClInclude>
+    <None Include="$(MonoSourceLocation)\mono\eglib\Makefile.am">
+      <Filter>Resource Files$(EGLibFilterSubFolder)\common</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(EGLibFilterSubFolder)\common">
+      <UniqueIdentifier>{04853f35-873a-4b07-990a-61dc8ebd5105}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(EGLibFilterSubFolder)\common">
+      <UniqueIdentifier>{453FE226-0B9E-4A07-B2F8-BB2955098E9E}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(EGLibFilterSubFolder)\common">
+      <UniqueIdentifier>{7a01f670-6a6a-4837-b3ac-cd6c08075b4e}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
 </Project>
index 8e5d3fa59253b34b07a3e4f1831477f1c5ed5058..4c1217eb1f33e3cb5e19bb2a64723c2e445e0979 100644 (file)
@@ -1,6 +1,26 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-posix.c" />
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdate-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdir-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmisc-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmodule-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gtimer-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
   </ItemGroup>
 </Project>
index 76265435b1491750d6476ceb9042ffa96e218527..49224ee4eef80c4b7dd7eba2fa3716b34cd15fa3 100644 (file)
@@ -1,8 +1,28 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-posix.c">
-      <Filter>Source Files\Posix</Filter>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdate-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdir-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmisc-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
     </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmodule-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gtimer-unix.c">
+      <Filter>Source Files$(EGLibFilterSubFolder)\posix</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(EGLibFilterSubFolder)\posix">
+      <UniqueIdentifier>{3c958a68-b6a1-40d3-834c-b50be09cb819}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
 </Project>
index 572c50626f944b0c1300bd7e5da748466f0bcade..fbe78bc87f5027db31770c30bea26b54ed1774a4 100644 (file)
@@ -1,16 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
+  <ItemGroup Label="win32_sources">
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdate-win32.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdir-win32.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-win32.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmisc-win32.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32.c" />
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpath.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32-internals.h" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gtimer-win32.c" />
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode-win32.c" />
-   </ItemGroup>
-   <ItemGroup>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32-internals.h" />
   </ItemGroup>
 </Project>
index a1ed81ba268983510fd9ac15eb2fdc39194e4d8d..c8483310937a8f2f17160e1a6e66f0c6204ec1b7 100644 (file)
@@ -1,34 +1,37 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
+  <ItemGroup Label="win32_sources">
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdate-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gdir-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gfile-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmisc-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32.c">
-      <Filter>Source Files\Win32</Filter>
-    </ClCompile>
-    <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gpath.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32-internals.h">
+      <Filter>Header Files$(EGLibFilterSubFolder)\win32</Filter>
+    </ClInclude>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gtimer-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
     <ClCompile Include="$(MonoSourceLocation)\mono\eglib\gunicode-win32.c">
-      <Filter>Source Files\Win32</Filter>
+      <Filter>Source Files$(EGLibFilterSubFolder)\win32</Filter>
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="$(MonoSourceLocation)\mono\eglib\gmodule-win32-internals.h">
-      <Filter>Header Files\Win32</Filter>
-    </ClInclude>
+    <Filter Include="Header Files$(EGLibFilterSubFolder)\win32">
+      <UniqueIdentifier>{80953075-5d05-41b9-be90-82497081b11c}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(EGLibFilterSubFolder)\win32">
+      <UniqueIdentifier>{c6e3ed6c-6b52-4823-bc4f-2dc9f84e3f5d}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
 </Project>
diff --git a/msvc/eglib.targets b/msvc/eglib.targets
new file mode 100644 (file)
index 0000000..5f9d4cd
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="eglib-common.targets" />
+  <Import Project="eglib-win32.targets" />
+  <Import Project="eglib-posix.targets" />
+</Project>
\ No newline at end of file
diff --git a/msvc/eglib.targets.filters b/msvc/eglib.targets.filters
new file mode 100644 (file)
index 0000000..5727d3c
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="eglib-common.targets.filters" />
+  <Import Project="eglib-win32.targets.filters" />
+  <Import Project="eglib-posix.targets.filters" />
+  <ItemGroup Condition="'$(EGLibFilterSubFolder)'!=''">
+    <Filter Include="Source Files$(EGLibFilterSubFolder)">
+      <UniqueIdentifier>{8B3E0DAF-48EA-4B5F-B573-4E8ED8525134}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files$(EGLibFilterSubFolder)">
+      <UniqueIdentifier>{1277B2DB-F7E8-44C0-9F8B-5933EB5BD879}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(EGLibFilterSubFolder)">
+      <UniqueIdentifier>{9B2D78CC-201F-48DF-8710-839BCDB0AEE9}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
index e4f706775c39d1c433398a4614696231f22fbb15..c4845c36745fad673f2f4b1ac7b09f6eeb0ace96 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </Command>\r
     </PreBuildEvent>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
   </ItemDefinitionGroup>\r
-  <Import Project="eglib-common.targets" />\r
-  <Import Project="eglib-win32.targets" />\r
-  <Import Project="eglib-posix.targets" />\r
+  <Import Project="eglib.targets" />\r
   <ItemGroup>\r
     <ProjectReference Include="build-init.vcxproj">\r
       <Project>{92ae7622-5f58-4234-9a26-9ec71876b3f4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\eglib\src\Makefile.am" />\r
-  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
index 3805150c83aa69aa8905f6b7ed230f483bffce8b..8836550d6cd1c3f0213af940e924ff1632458979 100644 (file)
@@ -1,8 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <Import Project="eglib-common.targets.filters" />\r
-  <Import Project="eglib-win32.targets.filters" />\r
-  <Import Project="eglib-posix.targets.filters" />\r
+  <Import Project="eglib.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Source Files">\r
       <UniqueIdentifier>{d16b81e3-5093-424e-a5d4-e7dd8da49dce}</UniqueIdentifier>\r
     <Filter Include="Resource Files">\r
       <UniqueIdentifier>{38a39ff1-842b-431b-b54b-24094e8283eb}</UniqueIdentifier>\r
     </Filter>\r
-    <Filter Include="Header Files\Common">\r
-      <UniqueIdentifier>{04853f35-873a-4b07-990a-61dc8ebd5105}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Header Files\Win32">\r
-      <UniqueIdentifier>{80953075-5d05-41b9-be90-82497081b11c}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files\Common">\r
-      <UniqueIdentifier>{7a01f670-6a6a-4837-b3ac-cd6c08075b4e}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files\Win32">\r
-      <UniqueIdentifier>{c6e3ed6c-6b52-4823-bc4f-2dc9f84e3f5d}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files\Posix">\r
-      <UniqueIdentifier>{3c958a68-b6a1-40d3-834c-b50be09cb819}</UniqueIdentifier>\r
-    </Filter>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\eglib\src\Makefile.am">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
   </ItemGroup>\r
 </Project>\r
index b6a4a81c1357b523855f2c0290c6febb61513de3..e89ff36571dd2252c2b7469cb77fdc2c12507e24 100644 (file)
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
     <PostBuildEvent />\r
     <CustomBuildStep>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>_DEBUG;__x86_64__;TARGET_AMD64;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;HAVE_CONFIG_H;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
     <PostBuildEvent />\r
     <CustomBuildStep>\r
       </HeaderFileName>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <StringPooling>true</StringPooling>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
     <PostBuildEvent />\r
     <CustomBuildStep>\r
       </HeaderFileName>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>NDEBUG;__x86_64__;TARGET_AMD64;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;HAVE_CONFIG_H;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <StringPooling>true</StringPooling>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <CompileAs>CompileAsC</CompileAs>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
     <PostBuildEvent />\r
     <CustomBuildStep>\r
diff --git a/msvc/libgc.targets b/msvc/libgc.targets
new file mode 100644 (file)
index 0000000..2dfb0bb
--- /dev/null
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+    <ExcludeBoehmGCFromBuild>true</ExcludeBoehmGCFromBuild>
+    <ExcludeBoehmGCFromBuild Condition="'$(MONO_TARGET_GC)'=='boehm' And '$(Platform)'=='Win32'">false</ExcludeBoehmGCFromBuild>
+  </PropertyGroup>
+  <ItemGroup Label="libmonogc_la_sources">
+    <ClCompile Include="$(MonoSourceLocation)\libgc\allchblk.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\alloc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\blacklst.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\checksums.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\dbg_mlc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\dyn_load.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\finalize.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\gc_dlopen.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\gcj_mlc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\headers.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\malloc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mallocx.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mark.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mark_rts.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\misc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\new_hblk.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\obj_map.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\os_dep.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pcr_interface.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\ptr_chck.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\real_malloc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\reclaim.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\solaris_pthreads.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\solaris_threads.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\specific.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\stubborn.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\typd_mlc.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\backgraph.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\win32_threads.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pthread_support.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pthread_stop_world.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\darwin_stop_world.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\openbsd_stop_world.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mach_dep.c">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gcconfig.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_priv.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_hdrs.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc_gcj.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc_mark.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_locks.h">
+      <ExcludedFromBuild>$(ExcludeBoehmGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\libgc\Makefile.am" />
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/libgc.targets.filters b/msvc/libgc.targets.filters
new file mode 100644 (file)
index 0000000..8f1ec7d
--- /dev/null
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="libmonogc_la_sources">
+    <ClCompile Include="$(MonoSourceLocation)\libgc\allchblk.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\alloc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\blacklst.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\checksums.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\dbg_mlc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\dyn_load.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\finalize.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\gc_dlopen.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\gcj_mlc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\headers.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\malloc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mallocx.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mark.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mark_rts.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\misc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\new_hblk.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\obj_map.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\os_dep.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pcr_interface.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\ptr_chck.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\real_malloc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\reclaim.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\solaris_pthreads.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\solaris_threads.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\specific.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\stubborn.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\typd_mlc.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\backgraph.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\win32_threads.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pthread_support.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\pthread_stop_world.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\darwin_stop_world.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\openbsd_stop_world.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\libgc\mach_dep.c">
+      <Filter>Source Files$(GCboehmFilterSubFolder)</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gcconfig.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_priv.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_hdrs.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc_gcj.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\gc_mark.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\libgc\include\private\gc_locks.h">
+      <Filter>Header Files$(GCboehmFilterSubFolder)</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\libgc\Makefile.am">
+      <Filter>Resource Files$(GCboehmFilterSubFolder)</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup Condition="'$(GCboehmFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(GCboehmFilterSubFolder)">
+      <UniqueIdentifier>{9671D54B-CA64-4CFA-89BD-D90D90D38F6B}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(GCboehmFilterSubFolder)">
+      <UniqueIdentifier>{AA2FEF48-1466-481B-AA60-BF0DA57967BC}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(GCboehmFilterSubFolder)">
+      <UniqueIdentifier>{67EC6108-4A9F-4B19-B019-734A71CDFE30}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
\ No newline at end of file
index 6999c3536b42fcaa8c956e6483363e141e7a794a..5f9fe4a265ce1ad4ad3fa11d82291452aad1ffc9 100644 (file)
       <AdditionalIncludeDirectories>$(MONO_LIBGC_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>_DEBUG;__i386__;TARGET_X86;i386;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;__STDC__;PACKAGE_NAME="libgc-mono";PACKAGE_TARNAME="libgc-mono";PACKAGE_VERSION="6.6";PACKAGE_STRING="libgc-mono 6.6";PACKAGE_BUGREPORT="Hans_Boehm%40hp.com";GC_WIN32_THREADS=1;NO_GETENV=1;GC_INSIDE_DLL=1;GC_NOT_DLL=1;STDC_HEADERS=1;HAVE_SYS_TYPES_H=1;HAVE_SYS_STAT_H=1;HAVE_STDLIB_H=1;HAVE_STRING_H=1;HAVE_MEMORY_H=1;HAVE_STRINGS_H=1;HAVE_INTTYPES_H=1;HAVE_STDINT_H=1;HAVE_UNISTD_H=1;SILENT=1;NO_SIGNALS=1;NO_EXECUTE_PERMISSION=1;JAVA_FINALIZATION=1;GC_GCJ_SUPPORT=1;ATOMIC_UNCOLLECTABLE=1;_IN_LIBGC=1;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-      <WarningLevel>Level1</WarningLevel>\r
+      <WarningLevel>Level3</WarningLevel>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
     </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
-    </Lib>\r
+    <Lib />\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_LIBGC_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>NDEBUG;__i386__;TARGET_X86;i386;i386;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;__STDC__;PACKAGE_NAME="libgc-mono";PACKAGE_TARNAME="libgc-mono";PACKAGE_VERSION="6.6";PACKAGE_STRING="libgc-mono 6.6";PACKAGE_BUGREPORT="Hans_Boehm%40hp.com";GC_WIN32_THREADS=1;NO_GETENV=1;GC_INSIDE_DLL=1;GC_NOT_DLL=1;STDC_HEADERS=1;HAVE_SYS_TYPES_H=1;HAVE_SYS_STAT_H=1;HAVE_STDLIB_H=1;HAVE_STRING_H=1;HAVE_MEMORY_H=1;HAVE_STRINGS_H=1;HAVE_INTTYPES_H=1;HAVE_STDINT_H=1;HAVE_UNISTD_H=1;SILENT=1;NO_SIGNALS=1;NO_EXECUTE_PERMISSION=1;JAVA_FINALIZATION=1;GC_GCJ_SUPPORT=1;ATOMIC_UNCOLLECTABLE=1;_IN_LIBGC=1;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
-    </Lib>\r
+    <Lib />\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <Midl>\r
       <AdditionalIncludeDirectories>$(MONO_LIBGC_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>_DEBUG;__x86_64__;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;__STDC__;PACKAGE_NAME="libgc-mono";PACKAGE_TARNAME="libgc-mono";PACKAGE_VERSION="6.6";PACKAGE_STRING="libgc-mono 6.6";PACKAGE_BUGREPORT="Hans_Boehm%40hp.com";GC_WIN32_THREADS=1;NO_GETENV=1;GC_INSIDE_DLL=1;GC_NOT_DLL=1;STDC_HEADERS=1;HAVE_SYS_TYPES_H=1;HAVE_SYS_STAT_H=1;HAVE_STDLIB_H=1;HAVE_STRING_H=1;HAVE_MEMORY_H=1;HAVE_STRINGS_H=1;HAVE_INTTYPES_H=1;HAVE_STDINT_H=1;HAVE_UNISTD_H=1;SILENT=1;NO_SIGNALS=1;NO_EXECUTE_PERMISSION=1;JAVA_FINALIZATION=1;GC_GCJ_SUPPORT=1;ATOMIC_UNCOLLECTABLE=1;_IN_LIBGC=1;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
     </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
-    </Lib>\r
+    <Lib />\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_LIBGC_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>NDEBUG;__x86_64__;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;__STDC__;PACKAGE_NAME="libgc-mono";PACKAGE_TARNAME="libgc-mono";PACKAGE_VERSION="6.6";PACKAGE_STRING="libgc-mono 6.6";PACKAGE_BUGREPORT="Hans_Boehm%40hp.com";GC_WIN32_THREADS=1;NO_GETENV=1;GC_INSIDE_DLL=1;GC_NOT_DLL=1;STDC_HEADERS=1;HAVE_SYS_TYPES_H=1;HAVE_SYS_STAT_H=1;HAVE_STDLIB_H=1;HAVE_STRING_H=1;HAVE_MEMORY_H=1;HAVE_STRINGS_H=1;HAVE_INTTYPES_H=1;HAVE_STDINT_H=1;HAVE_UNISTD_H=1;SILENT=1;NO_SIGNALS=1;NO_EXECUTE_PERMISSION=1;JAVA_FINALIZATION=1;GC_GCJ_SUPPORT=1;ATOMIC_UNCOLLECTABLE=1;_IN_LIBGC=1;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;WIN32_THREADS;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
-    </Lib>\r
+    <Lib />\r
   </ItemDefinitionGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\libgc\allchblk.c" />\r
-    <ClCompile Include="..\libgc\alloc.c" />\r
-    <ClCompile Include="..\libgc\blacklst.c" />\r
-    <ClCompile Include="..\libgc\dbg_mlc.c" />\r
-    <ClCompile Include="..\libgc\dyn_load.c" />\r
-    <ClCompile Include="..\libgc\finalize.c" />\r
-    <ClCompile Include="..\libgc\gcj_mlc.c" />\r
-    <ClCompile Include="..\libgc\headers.c" />\r
-    <ClCompile Include="..\libgc\mach_dep.c" />\r
-    <ClCompile Include="..\libgc\malloc.c" />\r
-    <ClCompile Include="..\libgc\mallocx.c" />\r
-    <ClCompile Include="..\libgc\mark.c" />\r
-    <ClCompile Include="..\libgc\mark_rts.c" />\r
-    <ClCompile Include="..\libgc\misc.c" />\r
-    <ClCompile Include="..\libgc\new_hblk.c" />\r
-    <ClCompile Include="..\libgc\obj_map.c" />\r
-    <ClCompile Include="..\libgc\os_dep.c" />\r
-    <ClCompile Include="..\libgc\ptr_chck.c" />\r
-    <ClCompile Include="..\libgc\reclaim.c" />\r
-    <ClCompile Include="..\libgc\stubborn.c" />\r
-    <ClCompile Include="..\libgc\typd_mlc.c" />\r
-    <ClCompile Include="..\libgc\win32_threads.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\libgc\include\gc.h" />\r
-    <ClInclude Include="..\libgc\include\private\gc_hdrs.h" />\r
-    <ClInclude Include="..\libgc\include\private\gc_locks.h" />\r
-    <ClInclude Include="..\libgc\include\gc_mark.h" />\r
-    <ClInclude Include="..\libgc\include\private\gc_pmark.h" />\r
-    <ClInclude Include="..\libgc\include\private\gc_priv.h" />\r
-    <ClInclude Include="..\libgc\include\private\gcconfig.h" />\r
-  </ItemGroup>\r
+  <Import Project="libgc.targets" />\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
index 6453cc0645f102e0acf7714f35b9983207933625..6b0061f7ff6d447f8f4343ff26975fc4a5872d61 100644 (file)
@@ -1,96 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\libgc\allchblk.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\alloc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\blacklst.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\dbg_mlc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\dyn_load.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\finalize.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\gcj_mlc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\headers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\mach_dep.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\malloc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\mallocx.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\mark.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\mark_rts.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\misc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\new_hblk.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\obj_map.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\os_dep.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\ptr_chck.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\reclaim.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\stubborn.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\typd_mlc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\libgc\win32_threads.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\libgc\include\gc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\private\gc_hdrs.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\private\gc_locks.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\gc_mark.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\private\gc_pmark.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\private\gc_priv.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\libgc\include\private\gcconfig.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
+  <Import Project="libgc.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
       <UniqueIdentifier>{699a2844-7533-4292-9d33-c8f0ff83fc43}</UniqueIdentifier>\r
diff --git a/msvc/libgcmonosgen.targets b/msvc/libgcmonosgen.targets
new file mode 100644 (file)
index 0000000..75e62cb
--- /dev/null
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeSGenGCFromBuild>true</ExcludeSGenGCFromBuild>
+    <ExcludeSGenGCFromBuild Condition="'$(MONO_TARGET_GC)'=='sgen'">false</ExcludeSGenGCFromBuild>
+  </PropertyGroup>
+  <ItemGroup Label="monosgen_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\gc-internal-agnostic.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-alloc.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-archdep.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-cardtable.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-cardtable.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-client.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-conf.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-copy-object.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-debug.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-descriptor.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-descriptor.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-fin-weak-hash.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gc.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-gc.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gchandles.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gray.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-gray.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-hash-table.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-hash-table.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-internal.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-layout-stats.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-layout-stats.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-los.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-major-copy-object.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-marksweep-drain-gray-stack.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-marksweep.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-memory-governor.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-memory-governor.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-minor-copy-object.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-minor-scan-object.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-nursery-allocator.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning-stats.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pointer-queue.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-pointer-queue.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-array-list.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-array-list.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol-def.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-qsort.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-qsort.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-scan-object.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-simple-nursery.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-split-nursery.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-tagged-pointer.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-thread-pool.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-thread-pool.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-workers.c">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-workers.h">
+      <ExcludedFromBuild>$(ExcludeSGenGCFromBuild)</ExcludedFromBuild>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\sgen\Makefile.am" />
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/libgcmonosgen.targets.filters b/msvc/libgcmonosgen.targets.filters
new file mode 100644 (file)
index 0000000..14c1299
--- /dev/null
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="monosgen_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\gc-internal-agnostic.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-alloc.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-archdep.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-cardtable.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-cardtable.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-client.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-conf.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-copy-object.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-debug.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-descriptor.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-descriptor.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-fin-weak-hash.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gc.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-gc.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gchandles.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-gray.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-gray.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-hash-table.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-hash-table.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-internal.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-layout-stats.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-layout-stats.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-los.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-major-copy-object.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-marksweep-drain-gray-stack.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-marksweep.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-memory-governor.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-memory-governor.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-minor-copy-object.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-minor-scan-object.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-nursery-allocator.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning-stats.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-pinning.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-pointer-queue.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-pointer-queue.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-array-list.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-array-list.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol-def.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-protocol.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-qsort.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-qsort.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-scan-object.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-simple-nursery.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-split-nursery.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-tagged-pointer.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-thread-pool.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-thread-pool.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\sgen\sgen-workers.c">
+      <Filter>Source Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\sgen\sgen-workers.h">
+      <Filter>Header Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\sgen\Makefile.am">
+      <Filter>Resource Files$(MonoGCsgenFilterSubFolder)</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup Condition="'$(MonoGCsgenFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(MonoGCsgenFilterSubFolder)">
+      <UniqueIdentifier>{09852EE2-29A8-4C5A-9DE0-748F4113132B}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoGCsgenFilterSubFolder)">
+      <UniqueIdentifier>{D551BA3A-A20D-4FB2-BFF4-0174A3CB19E1}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoGCsgenFilterSubFolder)">
+      <UniqueIdentifier>{37293C0E-9158-42C3-BE90-8FE4B63CDFF5}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
\ No newline at end of file
index e0979dbbee07d46d915e1984a3d051cd16c388da..f27c6652da10816e976b532aa4e980b329bce126 100644 (file)
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\sgen\sgen-alloc.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-array-list.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-cardtable.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-debug.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-descriptor.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-gc.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-gchandles.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-gray.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-hash-table.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-internal.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-los.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-marksweep.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-memory-governor.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-nursery-allocator.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-pinning-stats.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-pinning.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-pointer-queue.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-protocol.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-qsort.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-simple-nursery.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-split-nursery.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-thread-pool.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-workers.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-fin-weak-hash.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-layout-stats.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\sgen\gc-internal-agnostic.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-archdep.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-array-list.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-cardtable.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-client.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-conf.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-copy-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-descriptor.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-gc.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-gray.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-hash-table.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-layout-stats.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-major-copy-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-marksweep-drain-gray-stack.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-marksweep-scan-object-concurrent.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-memory-governor.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-minor-copy-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-minor-scan-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-pinning.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-pointer-queue.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-protocol-def.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-protocol.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-qsort.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-scan-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-tagged-pointer.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-thread-pool.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-workers.h" />\r
-  </ItemGroup>\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{C36612BD-22D3-4B95-85E2-7FDC4FC5D740}</ProjectGuid>\r
     <Keyword>Win32Proj</Keyword>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(SGEN_DEFINES);_LIB;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <OmitFramePointers>false</OmitFramePointers>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(SGEN_DEFINES);_LIB;_DEBUG;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(SGEN_DEFINES);_LIB;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(SGEN_DEFINES);_LIB;NDEBUG;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
   </ItemDefinitionGroup>\r
+  <Import Project="libgcmonosgen.targets" />\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
index b1c22545a6c7bdff143e26a4f54bf490bd33d539..f4982279c4279c44cd0394b4f042989eb7d0a0a1 100644 (file)
@@ -1,165 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\sgen\sgen-alloc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-cardtable.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-debug.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-descriptor.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-fin-weak-hash.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-gc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-gchandles.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-gray.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-hash-table.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-internal.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-layout-stats.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-los.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-marksweep.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-memory-governor.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-nursery-allocator.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-pinning.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-pinning-stats.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-pointer-queue.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-protocol.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-qsort.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-simple-nursery.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-split-nursery.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-thread-pool.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-workers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\sgen\sgen-array-list.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\sgen\gc-internal-agnostic.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-archdep.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-cardtable.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-client.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-conf.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-copy-object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-descriptor.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-gc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-gray.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-hash-table.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-layout-stats.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-major-copy-object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-marksweep-drain-gray-stack.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-marksweep-scan-object-concurrent.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-memory-governor.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-minor-copy-object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-minor-scan-object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-pinning.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-pointer-queue.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-protocol.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-protocol-def.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-qsort.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-scan-object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-tagged-pointer.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-thread-pool.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-workers.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\sgen-array-list.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
+  <Import Project="libgcmonosgen.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Resource Files">\r
       <UniqueIdentifier>{62eb1a19-26dd-4c17-8bd0-0a734673637d}</UniqueIdentifier>\r
diff --git a/msvc/libmini-arch.targets b/msvc/libmini-arch.targets
new file mode 100644 (file)
index 0000000..c02878f
--- /dev/null
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+    <ExcludeFromWindows32Build>false</ExcludeFromWindows32Build>
+    <ExcludeFromWindows64Build>false</ExcludeFromWindows64Build>
+    <ExcludeFromWindows32Build Condition="'$(Platform)'=='Win32'">true</ExcludeFromWindows32Build>
+    <ExcludeFromWindows64Build Condition="'$(Platform)'=='x64'">true</ExcludeFromWindows64Build>
+  </PropertyGroup>
+  <ItemGroup Label="arch_wasm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-wasm.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_x86_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-x86.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-x86.h"/>
+    <CustomBuildStep Include="$(MonoSourceLocation)\mono\mini\mini-x86.h">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </CustomBuildStep>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-x86.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-x86.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-x86-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-x86-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows64Build)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_amd64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-amd64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-amd64.h"/>
+    <CustomBuildStep Include="$(MonoSourceLocation)\mono\mini\mini-amd64.h">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </CustomBuildStep>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-amd64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-amd64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-amd64-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-amd64-gsharedvt.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-amd64-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_ppc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-ppc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-ppc.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-ppc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-ppc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-arm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm64.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-arm64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm64-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm64-gsharedvt.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm64-gsharedvt.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_mips_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-mips.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-mips.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-mips.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-mips.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_sparc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-sparc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-sparc.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-sparc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-sparc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_s390x_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-s390x.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-s390x.h"/>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\support-s390x.h"/>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-s390x.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-s390x.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-arch.targets.filters b/msvc/libmini-arch.targets.filters
new file mode 100644 (file)
index 0000000..901fb3c
--- /dev/null
@@ -0,0 +1,242 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="arch_wasm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-wasm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\wasm</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-wasm.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\wasm</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-wasm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\wasm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-wasm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\wasm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_x86_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-x86.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-x86.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-x86.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-x86.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-x86-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-x86-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_amd64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-amd64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-amd64.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-amd64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-amd64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-amd64-gsharedvt.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-amd64-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-amd64-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_ppc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-ppc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\ppc</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-ppc.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\ppc</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-ppc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\ppc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-ppc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\ppc</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-arm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm64.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-arm64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm64.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arm64-gsharedvt.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-arm64-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-arm64-gsharedvt.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_mips_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-mips.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\mips</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-mips.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\mips</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-mips.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\mips</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-mips.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\mips</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_sparc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-sparc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\sparc</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-sparc.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\sparc</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-sparc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\sparc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-sparc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\sparc</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_s390x_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-s390x.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\s390x</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-s390x.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\s390x</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\support-s390x.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\arch\s390x</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\exceptions-s390x.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\s390x</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-s390x.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\arch\s390x</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch">
+      <UniqueIdentifier>{819510FE-1354-40D8-93CA-2FF5EB410FED}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch">
+      <UniqueIdentifier>{9FD04D2D-B4F4-4EC6-82FF-26A2333D4467}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\wasm">
+      <UniqueIdentifier>{B6D0ED07-1561-4C73-97E6-3E0688E3FDB3}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\wasm">
+      <UniqueIdentifier>{1EBAD4C5-455D-425F-B036-9D31C3A1D5B5}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\x86">
+      <UniqueIdentifier>{4F64FA1A-0E4D-46ED-97DE-6913D02E6210}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\x86">
+      <UniqueIdentifier>{195D3978-2A6F-4319-8E1C-D0DB1210F6B2}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\amd64">
+      <UniqueIdentifier>{257C0357-BA3E-4E1C-9C35-466AB8436E8C}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\amd64">
+      <UniqueIdentifier>{54DD5925-EFC1-4795-A72F-567572A55127}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\ppc">
+      <UniqueIdentifier>{93654968-5AC2-47D6-B75A-2B2B389E755F}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\ppc">
+      <UniqueIdentifier>{BC2E6DB6-BE05-4CA1-8B7A-C6E479CF18B8}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\arm">
+      <UniqueIdentifier>{AD618FB9-5A86-4FB0-8954-D521472E4ABA}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\arm">
+      <UniqueIdentifier>{BEB75A74-7D5B-46FF-A3C8-54CD43CB3169}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\arm64">
+      <UniqueIdentifier>{215EE8BC-34C7-443B-913D-6C66A12D5423}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\arm64">
+      <UniqueIdentifier>{62141C1C-2506-47B6-87FC-A5BEC57E25C4}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\mips">
+      <UniqueIdentifier>{EAD92105-5ECB-4307-B7B1-E46505F8F663}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\mips">
+      <UniqueIdentifier>{36B76A9F-133A-4A05-BB24-8AF688194DF2}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\sparc">
+      <UniqueIdentifier>{9388C690-91E7-4FA1-86EE-FF8D2B146B23}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\sparc">
+      <UniqueIdentifier>{271C5D45-30DD-490B-B8F1-00BB955EAF71}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\arch\s390x">
+      <UniqueIdentifier>{E241E01E-29A9-4029-AD16-7A9E33B3153C}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\arch\s390x">
+      <UniqueIdentifier>{906B3D7C-D6B7-4EA6-A2B5-2B385C9C2A6C}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-common.targets b/msvc/libmini-common.targets
new file mode 100644 (file)
index 0000000..b201a6a
--- /dev/null
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="common_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-runtime.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\seq-points.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\seq-points.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\ir-emit.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\method-to-ir.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\cfgdump.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\cfgdump.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\decompose.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\version.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\optflags-def.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\jit-icalls.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\jit-icalls.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\trace.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\trace.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\patch-info.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-ops.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arch.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\dominators.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\cfold.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\regalloc.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\helpers.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\liveness.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\ssa.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\abcremoval.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\abcremoval.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\local-propagation.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\driver.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\debug-mini.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\linear-scan.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\aot-compiler.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-compiler.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-runtime.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-runtime-wasm.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\graph.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-codegen.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-exceptions.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-trampolines.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\branch-opts.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-generic-sharing.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\simd-methods.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tasklets.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\tasklets.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-native-types.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\simd-intrinsics.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-unwind.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\unwind.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\image-writer.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\image-writer.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\dwarfwriter.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\dwarfwriter.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-gc.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-gc.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\debugger-agent.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\debugger-agent.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\xdebug.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-llvm.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-llvm-cpp.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\llvm-jit.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\alias-analysis.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-cross-helpers.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\arch-stubs.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\llvm-runtime.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\type-checking.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\lldb.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\lldb.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\memory-access.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-profiler.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\mini\Makefile.am.in" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-common.targets.filters b/msvc/libmini-common.targets.filters
new file mode 100644 (file)
index 0000000..3d27a24
--- /dev/null
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="common_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-runtime.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\seq-points.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\seq-points.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\ir-emit.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\method-to-ir.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\cfgdump.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\cfgdump.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\decompose.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\version.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\optflags-def.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\jit-icalls.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\jit-icalls.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\trace.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\trace.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\patch-info.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-ops.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-arch.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\dominators.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\cfold.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\regalloc.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\helpers.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\liveness.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\ssa.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\abcremoval.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\abcremoval.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\local-propagation.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\driver.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\debug-mini.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\linear-scan.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\aot-compiler.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-compiler.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-runtime.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\aot-runtime-wasm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\graph.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-codegen.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-exceptions.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-trampolines.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\branch-opts.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-generic-sharing.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\simd-methods.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\tasklets.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\tasklets.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-native-types.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\simd-intrinsics.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-unwind.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\unwind.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\image-writer.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\image-writer.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\dwarfwriter.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\dwarfwriter.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-gc.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-gc.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\debugger-agent.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\debugger-agent.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\xdebug.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-llvm.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-llvm-cpp.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\llvm-jit.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\alias-analysis.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-cross-helpers.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\arch-stubs.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\llvm-runtime.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\type-checking.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\lldb.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\lldb.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\memory-access.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-profiler.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\mini\Makefile.am.in">
+      <Filter>Resource Files$(MonoMiniFilterSubFolder)\common</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\common">
+      <UniqueIdentifier>{5E1443AF-3832-4C37-AD99-0D264DE68344}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoMiniFilterSubFolder)\common">
+      <UniqueIdentifier>{D09DBA53-D0BA-4E90-B207-4B23A9E7709B}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\common">
+      <UniqueIdentifier>{C0C82F0C-77A6-447F-BED2-39FD6ACDDC3A}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-interp.targets b/msvc/libmini-interp.targets
new file mode 100644 (file)
index 0000000..350b8a6
--- /dev/null
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="interp_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\hacks.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\interp.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\interp-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\interp.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\interp-stubs.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\mintops.h" />
+    <None Include="$(MonoSourceLocation)\mono\mini\interp\mintops.def" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\mintops.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\transform.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-interp.targets.filters b/msvc/libmini-interp.targets.filters
new file mode 100644 (file)
index 0000000..afe32ef
--- /dev/null
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="interp_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\hacks.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\interp.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\interp-internals.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\interp.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\interp-stubs.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\interp\mintops.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClInclude>
+    <None Include="$(MonoSourceLocation)\mono\mini\interp\mintops.def">
+      <Filter>Resource Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </None>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\mintops.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\interp\transform.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\interp</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\interp">
+      <UniqueIdentifier>{9E07C63F-9DE3-45EC-AEF6-D55AE5E7B644}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoMiniFilterSubFolder)\interp">
+      <UniqueIdentifier>{1064DAD3-1B4C-4803-BD5F-D046F98052E4}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\interp">
+      <UniqueIdentifier>{5D14595A-15DA-44C8-AC7D-3B296DBC324D}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-llvm.targets b/msvc/libmini-llvm.targets
new file mode 100644 (file)
index 0000000..f4b6737
--- /dev/null
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="llvm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm-loaded.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\llvm-runtime.cpp">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm-cpp.cpp">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\llvm-jit.cpp">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-llvm.targets.filters b/msvc/libmini-llvm.targets.filters
new file mode 100644 (file)
index 0000000..8bbf121
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="llvm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm-loaded.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\llvm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\llvm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\llvm-runtime.cpp">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\llvm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-llvm-cpp.cpp">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\llvm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\llvm-jit.cpp">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\llvm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\llvm">
+      <UniqueIdentifier>{6FF52301-18F4-41A3-AF3B-6D129E50D8AB}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-posix.targets b/msvc/libmini-posix.targets
new file mode 100644 (file)
index 0000000..1213202
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="darwin_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-darwin.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-posix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-posix.targets.filters b/msvc/libmini-posix.targets.filters
new file mode 100644 (file)
index 0000000..02db2ec
--- /dev/null
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="darwin_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-darwin.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\darwin</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-posix.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\posix</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\darwin">
+      <UniqueIdentifier>{E3BEC2F7-4DE6-43BC-A38D-67414D6CAB8B}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\posix">
+      <UniqueIdentifier>{B80745E3-E5F0-47A7-BE31-CBEC8615EDFE}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-win32.targets b/msvc/libmini-win32.targets
new file mode 100644 (file)
index 0000000..33639ac
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="windows_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-windows.h" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini-win32.targets.filters b/msvc/libmini-win32.targets.filters
new file mode 100644 (file)
index 0000000..d7b6f8f
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="windows_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows.c">
+      <Filter>Source Files$(MonoMiniFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\mini\mini-windows.h">
+      <Filter>Header Files$(MonoMiniFilterSubFolder)\win32</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)\win32">
+      <UniqueIdentifier>{B67D965A-45EE-4B01-AE98-CC6470F6DC9E}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)\win32">
+      <UniqueIdentifier>{2F0E3758-B8D9-4009-8B48-47F48303D00E}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini.targets b/msvc/libmini.targets
new file mode 100644 (file)
index 0000000..999a576
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmini-common.targets" />
+  <Import Project="libmini-win32.targets" />
+  <Import Project="libmini-posix.targets" />
+  <Import Project="libmini-arch.targets" />
+  <Import Project="libmini-interp.targets" />
+  <Import Project="libmini-llvm.targets" />
+</Project>
diff --git a/msvc/libmini.targets.filters b/msvc/libmini.targets.filters
new file mode 100644 (file)
index 0000000..467de8a
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmini-common.targets.filters" />
+  <Import Project="libmini-win32.targets.filters" />
+  <Import Project="libmini-posix.targets.filters" />
+  <Import Project="libmini-arch.targets.filters" />
+  <Import Project="libmini-interp.targets.filters" />
+  <Import Project="libmini-llvm.targets.filters" />
+  <ItemGroup Condition="'$(MonoMiniFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(MonoMiniFilterSubFolder)">
+      <UniqueIdentifier>{b64924de-7e02-416b-9779-4cc7fe0270e6}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoMiniFilterSubFolder)">
+      <UniqueIdentifier>{95531242-a8da-43ec-9ddb-6da7551d9c2d}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoMiniFilterSubFolder)">
+      <UniqueIdentifier>{f66c7e0f-6887-449d-81a5-49168ddfc4db}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmini.vcxproj b/msvc/libmini.vcxproj
new file mode 100644 (file)
index 0000000..63f573a
--- /dev/null
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <ItemGroup Label="ProjectConfigurations">\r
+    <ProjectConfiguration Include="Debug|Win32">\r
+      <Configuration>Debug</Configuration>\r
+      <Platform>Win32</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Debug|x64">\r
+      <Configuration>Debug</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Release|Win32">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>Win32</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Release|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="eglib.vcxproj">\r
+      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
+    </ProjectReference>\r
+    <ProjectReference Include="genmdesc.vcxproj">\r
+      <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{88D2EB79-592D-45F8-B849-AE021C1D983A}</ProjectGuid>\r
+    <RootNamespace>libmini</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <PropertyGroup Label="UserMacros" />\r
+  <PropertyGroup>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <LinkIncremental>true</LinkIncremental>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <LinkIncremental>true</LinkIncremental>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <Optimization>Disabled</Optimization>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+    </Link>\r
+    <PostBuildEvent />\r
+    <Lib>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+    </Lib>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <Optimization>Disabled</Optimization>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+    </Link>\r
+    <PostBuildEvent />\r
+    <Lib>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+    </Lib>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <StringPooling>true</StringPooling>\r
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent />\r
+    <Lib>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+    </Lib>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <StringPooling>true</StringPooling>\r
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent />\r
+    <Lib>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+    </Lib>\r
+  </ItemDefinitionGroup>\r
+  <Import Project="libmini.targets" />\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
+  <ImportGroup Label="ExtensionTargets">\r
+  </ImportGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmini.vcxproj.filters b/msvc/libmini.vcxproj.filters
new file mode 100644 (file)
index 0000000..c66a747
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <Import Project="libmini.targets.filters" />\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{30FB3E7A-9BC7-47A9-BABB-D34F7CD6F466}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{A4810F67-8B76-40A9-9A43-6048BC8A65F1}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{3E49E932-95E1-4900-89D8-0ABFD8094726}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmono-dynamic.vcxproj b/msvc/libmono-dynamic.vcxproj
new file mode 100644 (file)
index 0000000..186bd7f
--- /dev/null
@@ -0,0 +1,257 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <ItemGroup Label="ProjectConfigurations">\r
+    <ProjectConfiguration Include="Debug|Win32">\r
+      <Configuration>Debug</Configuration>\r
+      <Platform>Win32</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Debug|x64">\r
+      <Configuration>Debug</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Release|Win32">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>Win32</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Release|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{675F4175-FFB1-480D-AD36-F397578844D4}</ProjectGuid>\r
+    <RootNamespace>libmono-dynamic</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
+    <UseOfMfc>false</UseOfMfc>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
+    <UseOfMfc>false</UseOfMfc>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
+    <UseOfMfc>false</UseOfMfc>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
+    <UseOfMfc>false</UseOfMfc>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="mono.props" />\r
+  </ImportGroup>\r
+  <PropertyGroup Label="UserMacros" />\r
+  <PropertyGroup>\r
+    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <LinkIncremental>true</LinkIncremental>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <LinkIncremental>true</LinkIncremental>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <Optimization>Disabled</Optimization>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
+    </ClCompile>\r
+    <ResourceCompile>\r
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <Culture>0x0409</Culture>\r
+    </ResourceCompile>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
+    <Link>\r
+      <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>\r
+      </ModuleDefinitionFile>\r
+      <DataExecutionPrevention>\r
+      </DataExecutionPrevention>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <Midl>\r
+      <TargetEnvironment>X64</TargetEnvironment>\r
+    </Midl>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <Optimization>Disabled</Optimization>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
+    </ClCompile>\r
+    <ResourceCompile>\r
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <Culture>0x0409</Culture>\r
+    </ResourceCompile>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
+    <Link>\r
+      <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>\r
+      </ModuleDefinitionFile>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <StringPooling>true</StringPooling>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <WarningLevel>Level3</WarningLevel>\r
+    </ClCompile>\r
+    <ResourceCompile>\r
+      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <Culture>0x0409</Culture>\r
+    </ResourceCompile>\r
+    <ProjectReference />\r
+    <Link>\r
+      <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>\r
+      </ModuleDefinitionFile>\r
+      <DataExecutionPrevention>\r
+      </DataExecutionPrevention>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
+    </PostBuildEvent>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <Midl>\r
+      <TargetEnvironment>X64</TargetEnvironment>\r
+    </Midl>\r
+    <ClCompile>\r
+      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);MONO_DLL_EXPORT;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <StringPooling>true</StringPooling>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <WarningLevel>Level3</WarningLevel>\r
+    </ClCompile>\r
+    <ResourceCompile>\r
+      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <Culture>0x0409</Culture>\r
+    </ResourceCompile>\r
+    <ProjectReference />\r
+    <Link>\r
+      <AdditionalDependencies Condition="'$(MONO_TARGET_GC)'=='boehm'">$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>\r
+      </ModuleDefinitionFile>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
+    </PostBuildEvent>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="genmdesc.vcxproj">\r
+      <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>\r
+    </ProjectReference>\r
+    <ProjectReference Include="libgc.vcxproj">\r
+      <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows-dllmain.c" />\r
+  </ItemGroup>\r
+  <Import Project="eglib.targets" />\r
+  <Import Project="libmonoutils.targets" />\r
+  <Import Project="libmonoruntime.targets" />\r
+  <Import Project="libmini.targets" />\r
+  <Import Project="libgcmonosgen.targets" />\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
+  <ImportGroup Label="ExtensionTargets">\r
+  </ImportGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmono-dynamic.vcxproj.filters b/msvc/libmono-dynamic.vcxproj.filters
new file mode 100644 (file)
index 0000000..dcdb261
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <MonoUtilsFilterSubFolder>\libmonoutils</MonoUtilsFilterSubFolder>\r
+    <MonoRuntimeFilterSubFolder>\libmonoruntime</MonoRuntimeFilterSubFolder>\r
+    <MonoMiniFilterSubFolder>\libmini</MonoMiniFilterSubFolder>\r
+    <MonoGCsgenFilterSubFolder>\libgcmonosgen</MonoGCsgenFilterSubFolder>\r
+    <EGLibFilterSubFolder>\eglib</EGLibFilterSubFolder>\r
+  </PropertyGroup>\r
+  <Import Project="eglib.targets.filters" />\r
+  <Import Project="libmonoutils.targets.filters" />\r
+  <Import Project="libmonoruntime.targets.filters" />\r
+  <Import Project="libmini.targets.filters" />\r
+  <Import Project="libgcmonosgen.targets.filters" />\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{09693EC3-6099-43FF-A22D-D0651643B146}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{851A7AF5-8521-4F03-9527-D162FB53D9E7}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{58EC90AB-A91B-433C-AE1E-6B09A6D43A3E}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="$(MonoSourceLocation)\mono\mini\mini-windows-dllmain.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index b23daec250520a61e23c30e04a16991f9cb7426b..0c606ddb6af19cb1b76d0fbcffcb493efe7d7740 100644 (file)
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\mini\alias-analysis.c" />\r
-    <ClCompile Include="..\mono\mini\arch-stubs.c" />\r
-    <ClCompile Include="..\mono\mini\exceptions-amd64.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\exceptions-x86.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-amd64.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-amd64-gsharedvt.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-runtime.c" />\r
-    <ClCompile Include="..\mono\mini\mini-windows.c" />\r
-    <ClCompile Include="..\mono\mini\mini-x86.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-x86-gsharedvt.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini.c" />\r
-    <ClCompile Include="..\mono\mini\memory-access.c" />\r
-    <ClInclude Include="..\mono\metadata\remoting.h" />\r
-    <ClInclude Include="..\mono\mini\ir-emit.h" />\r
-    <ClCompile Include="..\mono\mini\method-to-ir.c" />\r
-    <ClCompile Include="..\mono\mini\decompose.c" />\r
-    <ClInclude Include="..\mono\mini\mini-amd64.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-amd64-gsharedvt.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-windows.h" />\r
-    <ClInclude Include="..\mono\mini\mini-x86.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini.h" />\r
-    <ClInclude Include="..\mono\mini\seq-points.h" />\r
-    <ClInclude Include="..\mono\mini\version.h" />\r
-    <ClInclude Include="..\mono\mini\optflags-def.h" />\r
-    <ClInclude Include="..\mono\mini\cfgdump.h" />\r
-    <ClCompile Include="..\mono\mini\cfgdump.c" />\r
-    <ClInclude Include="..\mono\mini\jit-icalls.h " />\r
-    <ClCompile Include="..\mono\mini\jit-icalls.c " />\r
-    <ClCompile Include="..\mono\mini\seq-points.c" />\r
-    <ClCompile Include="..\mono\mini\trace.c" />\r
-    <ClInclude Include="..\mono\mini\trace.h" />\r
-    <ClInclude Include="..\mono\mini\patch-info.h" />\r
-    <ClInclude Include="..\mono\mini\mini-ops.h" />\r
-    <ClInclude Include="..\mono\mini\mini-arch.h" />\r
-    <ClCompile Include="..\mono\mini\dominators.c" />\r
-    <ClCompile Include="..\mono\mini\cfold.c" />\r
-    <ClInclude Include="..\mono\mini\regalloc.h" />\r
-    <ClCompile Include="..\mono\mini\helpers.c" />\r
-    <ClCompile Include="..\mono\mini\liveness.c" />\r
-    <ClCompile Include="..\mono\mini\ssa.c" />\r
-    <ClCompile Include="..\mono\mini\abcremoval.c" />\r
-    <ClInclude Include="..\mono\mini\abcremoval.h" />\r
-    <ClCompile Include="..\mono\mini\local-propagation.c" />\r
-    <ClCompile Include="..\mono\mini\driver.c" />\r
-    <ClCompile Include="..\mono\mini\debug-mini.c" />\r
-    <ClCompile Include="..\mono\mini\linear-scan.c" />\r
-    <ClCompile Include="..\mono\mini\aot-compiler.c" />\r
-    <ClCompile Include="..\mono\mini\aot-runtime.c" />\r
-    <ClCompile Include="..\mono\mini\graph.c" />\r
-    <ClCompile Include="..\mono\mini\mini-codegen.c" />\r
-    <ClCompile Include="..\mono\mini\mini-cross-helpers.c" />\r
-    <ClCompile Include="..\mono\mini\mini-exceptions.c" />\r
-    <ClCompile Include="..\mono\mini\mini-trampolines.c  " />\r
-    <ClCompile Include="..\mono\mini\tramp-amd64.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-amd64-gsharedvt.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-x86.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-x86-gsharedvt.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\branch-opts.c" />\r
-    <ClCompile Include="..\mono\mini\mini-generic-sharing.c" />\r
-    <ClInclude Include="..\mono\mini\simd-methods.h" />\r
-    <ClCompile Include="..\mono\mini\tasklets.c" />\r
-    <ClInclude Include="..\mono\mini\tasklets.h" />\r
-    <ClCompile Include="..\mono\mini\simd-intrinsics.c" />\r
-    <ClInclude Include="..\mono\mini\mini-unwind.h" />\r
-    <ClCompile Include="..\mono\mini\unwind.c" />\r
-    <ClInclude Include="..\mono\mini\image-writer.h" />\r
-    <ClCompile Include="..\mono\mini\image-writer.c" />\r
-    <ClInclude Include="..\mono\mini\dwarfwriter.h" />\r
-    <ClCompile Include="..\mono\mini\dwarfwriter.c" />\r
-    <ClInclude Include="..\mono\mini\mini-gc.h" />\r
-    <ClCompile Include="..\mono\mini\mini-gc.c" />\r
-    <ClInclude Include="..\mono\mini\debugger-agent.h " />\r
-    <ClCompile Include="..\mono\mini\debugger-agent.c" />\r
-    <ClCompile Include="..\mono\mini\xdebug.c" />\r
-    <ClInclude Include="..\mono\mini\mini-llvm.h" />\r
-    <ClInclude Include="..\mono\mini\mini-llvm-cpp.h" />\r
-    <ClCompile Include="..\mono\mini\mini-native-types.c" />\r
-    <ClCompile Include="..\mono\mini\type-checking.c" />\r
-    <ClCompile Include="..\mono\mini\lldb.c" />\r
-    <ClCompile Include="..\mono\mini\interp\interp-stubs.c" />\r
-    <ClCompile Include="..\mono\mini\mini-profiler.c" />\r
-  </ItemGroup>\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{CB0D9E92-293C-439C-9AC7-C5F59B6E0772}</ProjectGuid>\r
     <RootNamespace>libmono-static</RootNamespace>\r
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <BrowseInformation>false</BrowseInformation>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
     </Link>\r
     <PostBuildEvent />\r
+    <Lib />\r
+    <ProjectReference />\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <PreBuildEvent>\r
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <BrowseInformation>false</BrowseInformation>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
     </Link>\r
     <PostBuildEvent />\r
+    <Lib />\r
+    <ProjectReference />\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <PreBuildEvent>\r
     </PreBuildEvent>\r
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>MaxSpeed</Optimization>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
     <PostBuildEvent />\r
+    <Lib />\r
+    <ProjectReference />\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <PreBuildEvent>\r
     </PreBuildEvent>\r
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>MaxSpeed</Optimization>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
     <PostBuildEvent />\r
+    <Lib />\r
+    <ProjectReference />\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
-  <ItemGroup>\r
-    <CustomBuildStep Include="..\mono\mini\mini-x86.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </CustomBuildStep>\r
-    <CustomBuildStep Include="..\mono\mini\mini-amd64.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </CustomBuildStep>\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="genmdesc.vcxproj">\r
-      <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgc.vcxproj">\r
+    <ProjectReference Condition="'$(MONO_TARGET_GC)'=='boehm'" Include="libgc.vcxproj">\r
       <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="libgcmonosgen.vcxproj">\r
+    <ProjectReference Condition="'$(MONO_TARGET_GC)'=='sgen'" Include="libgcmonosgen.vcxproj">\r
       <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
     </ProjectReference>\r
+    <ProjectReference Include="libmini.vcxproj">\r
+      <Project>{88d2eb79-592d-45f8-b849-ae021c1d983a}</Project>\r
+    </ProjectReference>\r
     <ProjectReference Include="libmonoruntime.vcxproj">\r
       <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d739}</Project>\r
     </ProjectReference>\r
       <Project>{8fc2b0c8-51ad-49df-851f-5d01a77a75e4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\mini\Makefile.am.in" />\r
-  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
index 672e6052f41a69606d0d2f407964fa33ee1a5dd1..0d407ea4f940edc25a0d364ff323a36f41c96cb9 100644 (file)
@@ -1,252 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\mini\abcremoval.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\alias-analysis.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\aot-compiler.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\aot-runtime.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\arch-stubs.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\branch-opts.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\cfold.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\debugger-agent.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\debug-mini.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\decompose.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\dominators.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\driver.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\dwarfwriter.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\exceptions-amd64.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\exceptions-x86.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\graph.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\helpers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\image-writer.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\jit-icalls.c ">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\linear-scan.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\liveness.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\local-propagation.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\method-to-ir.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\memory-access.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-amd64.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-codegen.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-exceptions.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-gc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-generic-sharing.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-native-types.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-runtime.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-trampolines.c  ">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-x86.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\seq-points.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\simd-intrinsics.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\ssa.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tasklets.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\trace.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-amd64.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-x86.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\unwind.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\xdebug.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\cfgdump.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-amd64-gsharedvt.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-cross-helpers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-x86-gsharedvt.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-amd64-gsharedvt.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\tramp-x86-gsharedvt.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\type-checking.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\lldb.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\interp\interp-stubs.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\mini\mini-profiler.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\mini\abcremoval.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\debugger-agent.h ">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\dwarfwriter.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\ir-emit.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\image-writer.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\seq-points.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\jit-icalls.h ">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-amd64.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-arch.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-gc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-llvm.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-llvm-cpp.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-ops.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-unwind.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-x86.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\optflags-def.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\patch-info.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\regalloc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\remoting.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\simd-methods.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\tasklets.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\trace.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\version.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\cfgdump.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-amd64-gsharedvt.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\mini\mini-windows.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
       <UniqueIdentifier>{bdc9f80b-3045-49d2-bb7b-510450371395}</UniqueIdentifier>\r
       <UniqueIdentifier>{5370c3c4-b6ec-4f8a-8b21-ce4e782720a6}</UniqueIdentifier>\r
     </Filter>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\mini\Makefile.am.in">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
-  </ItemGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmono.vcxproj b/msvc/libmono.vcxproj
deleted file mode 100644 (file)
index 82eff33..0000000
+++ /dev/null
@@ -1,307 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug|Win32">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug|x64">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release|Win32">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release|x64">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
-  </ItemGroup>\r
-  <PropertyGroup Label="Globals">\r
-    <ProjectGuid>{CB0D9E92-293C-439C-9AC7-C5F59B6E0771}</ProjectGuid>\r
-    <RootNamespace>libmono</RootNamespace>\r
-    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
-  </PropertyGroup>\r
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v140</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v140</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v140</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v140</PlatformToolset>\r
-  </PropertyGroup>\r
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
-  <ImportGroup Label="ExtensionSettings">\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-    <Import Project="mono.props" />\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-    <Import Project="mono.props" />\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-    <Import Project="mono.props" />\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-    <Import Project="mono.props" />\r
-  </ImportGroup>\r
-  <PropertyGroup Label="UserMacros" />\r
-  <PropertyGroup>\r
-    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mono-2.0$(MONO_TARGET_SUFFIX)</TargetName>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
-    <LinkIncremental>true</LinkIncremental>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
-    <LinkIncremental>true</LinkIncremental>\r
-  </PropertyGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <ClCompile>\r
-      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>Disabled</Optimization>\r
-      <InlineFunctionExpansion>Default</InlineFunctionExpansion>\r
-      <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <PrecompiledHeaderOutputFile>\r
-      </PrecompiledHeaderOutputFile>\r
-      <BrowseInformation>true</BrowseInformation>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-      <DataExecutionPrevention>\r
-      </DataExecutionPrevention>\r
-      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <ProgramDatabaseFile>$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>Disabled</Optimization>\r
-      <InlineFunctionExpansion>Default</InlineFunctionExpansion>\r
-      <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <PrecompiledHeaderOutputFile>\r
-      </PrecompiledHeaderOutputFile>\r
-      <BrowseInformation>true</BrowseInformation>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <ClCompile>\r
-      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <StringPooling>true</StringPooling>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <PrecompiledHeaderOutputFile>\r
-      </PrecompiledHeaderOutputFile>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-      <DataExecutionPrevention>\r
-      </DataExecutionPrevention>\r
-      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <StringPooling>true</StringPooling>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <PrecompiledHeaderOutputFile>\r
-      </PrecompiledHeaderOutputFile>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
-      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>.\libmono.bat "$(MONO_INCLUDE_DIR)" "$(SolutionDir)include\mono" -q</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemGroup>\r
-    <CustomBuildStep Include="..\mono\mini\mini-x86.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </CustomBuildStep>\r
-    <CustomBuildStep Include="..\mono\mini\mini-amd64.h">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </CustomBuildStep>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="genmdesc.vcxproj">\r
-      <Project>{b7098dfa-31e6-4006-8a15-1c9a4e925149}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgc.vcxproj">\r
-      <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgcmonosgen.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono-static.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0772}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmonoruntime.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d739}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmonoutils.vcxproj">\r
-      <Project>{8fc2b0c8-51ad-49df-851f-5d01a77a75e4}</Project>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\mini\mini-windows-dllmain.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="mono.def" />\r
-  </ItemGroup>\r
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
-  <ImportGroup Label="ExtensionTargets">\r
-  </ImportGroup>\r
-</Project>
\ No newline at end of file
diff --git a/msvc/libmono.vcxproj.filters b/msvc/libmono.vcxproj.filters
deleted file mode 100644 (file)
index 91861b6..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <Filter Include="Header Files">\r
-      <UniqueIdentifier>{bdc9f80b-3045-49d2-bb7b-510450371395}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Resource Files">\r
-      <UniqueIdentifier>{f7700495-afaa-4d16-9aac-79d54d10de23}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files">\r
-      <UniqueIdentifier>{5370c3c4-b6ec-4f8a-8b21-ce4e782720a6}</UniqueIdentifier>\r
-    </Filter>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\mini\mini-windows-dllmain.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="mono.def">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
-  </ItemGroup>\r
-</Project>
\ No newline at end of file
index b8d2520fd58a58ef2e84e05d71fd52e0ea5f74a3..b016f7b90077bab71ca3d5f55be02ba97e5f3d78 100644 (file)
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
       <Optimization>Disabled</Optimization>\r
-      <InlineFunctionExpansion>Default</InlineFunctionExpansion>\r
-      <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <PrecompiledHeaderOutputFile>\r
       </PrecompiledHeaderOutputFile>\r
-      <BrowseInformation>true</BrowseInformation>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <Culture>0x0409</Culture>\r
     </ResourceCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <ModuleDefinitionFile>\r
       </ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
+      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>\r
     </Midl>\r
     <ClCompile>\r
       <AdditionalOptions>/D /NODEFAULTLIB:LIBCD" " %(AdditionalOptions)</AdditionalOptions>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <StringPooling>true</StringPooling>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <PrecompiledHeaderOutputFile>\r
       </PrecompiledHeaderOutputFile>\r
-      <CompileAs>CompileAsC</CompileAs>\r
+      <WarningLevel>Level3</WarningLevel>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <Culture>0x0409</Culture>\r
     </ResourceCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <ModuleDefinitionFile>\r
       </ModuleDefinitionFile>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
     <PostBuildEvent>\r
       <Command>\r
       </Command>\r
     </PostBuildEvent>\r
   </ItemDefinitionGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ClCompile Include="..\mono\mini\mini-windows-dlldac.c" />\r
   </ItemGroup>\r
diff --git a/msvc/libmonoruntime-common.targets b/msvc/libmonoruntime-common.targets
new file mode 100644 (file)
index 0000000..2a18201
--- /dev/null
@@ -0,0 +1,227 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="common_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\appdomain.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\domain.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\appdomain-icalls.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\assembly.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\assembly-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\attach.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\attach.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cil-coff.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class-inlines.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class-accessors.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\cominterop.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cominterop.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\console-io.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\coree.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\coree.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\coree-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\culture-info.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\culture-info-tables.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-helpers.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-mono-symfile.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-mono-ppdb.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-mono-ppdb.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\decimal-ms.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\decimal-ms.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\domain-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\environment.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\exception.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\exception-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\filewatcher.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\filewatcher.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\gc-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\icall.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-def.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\image.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\image-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\jit-info.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\loader.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\locales.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\locales.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\lock-tracer.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\lock-tracer.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\marshal.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mempool.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mempool.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mempool-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata-verify.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\metadata-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\method-builder.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\method-builder.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-basic-block.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-basic-block.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-config.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-debug.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-endian.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-endian.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-hash.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-conc-hash.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-mlist.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-mlist.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters-def.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-ptr-array.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-route.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-route.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\monitor.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\normalization-tables.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\number-formatter.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\number-ms.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\number-ms.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\object.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\opcodes.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\property-bag.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\property-bag.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32socket.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32socket-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\profiler.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler-private.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\rand.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\rand.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\remoting.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\remoting.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\runtime.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-security.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\security-core-clr.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security-core-clr.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\security-manager.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security-manager.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\string-icalls.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\string-icalls.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sysmath.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sysmath.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\tabledefs.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threads.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threads-types.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool-worker-default.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool-worker.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool-io.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool-io.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\verify.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\verify-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\wrapper-types.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\dynamic-image-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\dynamic-stream.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\dynamic-stream-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection-cache.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\custom-attrs-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sre-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\file-mmap-posix.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\file-mmap-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\file-mmap.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object-offsets.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\abi-details.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata-cross-helpers.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\seq-points-data.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\seq-points-data.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\handle.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\handle.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32mutex.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32semaphore.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32event.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32handle-namespace.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32handle-namespace.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32handle.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32handle.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32error.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\reflection.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\dynamic-image.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre-encode.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre-save.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\custom-attrs.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\fdhandle.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\fdhandle.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\callspec.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\callspec.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\runtime.h" />
+  </ItemGroup>
+  <ItemGroup Label="config_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-config-dirs.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-config-dirs.c" />
+  </ItemGroup>
+  <ItemGroup Label="null_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-null.c">
+      <ExcludedFromBuild>true</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="null_gc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\null-gc.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\null-gc-handles.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\null-gc-handles.c" />
+  </ItemGroup>
+  <ItemGroup Label="gc_dependent_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\gc-stats.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\gc.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\monitor.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-hash.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-conc-hash.c" />
+  </ItemGroup>
+  <ItemGroup Label="boehm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\boehm-gc.c" />
+  </ItemGroup>
+  <ItemGroup Label="sgen_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-old-bridge.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-new-bridge.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-tarjan-bridge.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-toggleref.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-toggleref.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-stw.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-mono.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-client-mono.h" />
+  </ItemGroup>
+  <ItemGroup Label="libmonoruntimeinclude_headers">
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\assembly.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\attrdefs.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\appdomain.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\blob.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-helpers.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-mono-symfile.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threads.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\environment.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\exception.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\image.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\loader.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\metadata.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-config.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-debug.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-gc.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\opcodes.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler-events.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\row-indexes.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\tokentype.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\verify.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\metadata\Makefile.am" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoruntime-common.targets.filters b/msvc/libmonoruntime-common.targets.filters
new file mode 100644 (file)
index 0000000..ed6eb91
--- /dev/null
@@ -0,0 +1,683 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="common_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\appdomain.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\domain.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\appdomain-icalls.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\assembly.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\assembly-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\attach.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\attach.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cil-coff.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class-inlines.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class-accessors.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\cominterop.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cominterop.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\console-io.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\coree.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\coree.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\coree-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\culture-info.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\culture-info-tables.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-helpers.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-mono-symfile.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-mono-ppdb.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\debug-mono-ppdb.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\decimal-ms.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\decimal-ms.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\domain-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\environment.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\exception.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\exception-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\filewatcher.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\filewatcher.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\gc-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\icall.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-def.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\image.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\image-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\jit-info.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\loader.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\locales.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\locales.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\lock-tracer.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\lock-tracer.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\marshal.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mempool.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mempool.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mempool-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata-verify.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\metadata-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\method-builder.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\method-builder.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-basic-block.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-basic-block.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-config.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-debug.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-endian.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-endian.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-hash.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-conc-hash.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-mlist.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-mlist.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-perfcounters-def.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-ptr-array.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-route.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-route.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\monitor.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\normalization-tables.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\number-formatter.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\number-ms.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\number-ms.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\object.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\opcodes.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\property-bag.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\property-bag.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32socket.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32socket-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\profiler.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler-private.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\rand.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\rand.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\remoting.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\remoting.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\runtime.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-security.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\security-core-clr.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security-core-clr.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\security-manager.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\security-manager.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\string-icalls.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\string-icalls.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sysmath.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sysmath.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\tabledefs.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threads.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threads-types.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool-worker-default.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool-worker.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\threadpool-io.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threadpool-io.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\verify.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\verify-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\wrapper-types.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\dynamic-image-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\dynamic-stream.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\dynamic-stream-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection-cache.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\custom-attrs-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sre-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\file-mmap-posix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\file-mmap-windows.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\file-mmap.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object-offsets.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\abi-details.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\metadata-cross-helpers.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\seq-points-data.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\seq-points-data.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\handle.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\handle.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32mutex.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32semaphore.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32event.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32handle-namespace.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32handle-namespace.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32handle.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32handle.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32error.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\reflection.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\dynamic-image.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre-encode.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sre-save.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\custom-attrs.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\fdhandle.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\fdhandle.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\callspec.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\callspec.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\runtime.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup Label="config_sources">
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-config-dirs.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\config</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-config-dirs.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\config</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="null_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-null.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\null</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="null_gc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\null-gc.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\null</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\null-gc-handles.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\null</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\null-gc-handles.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\null</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="gc_dependent_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\gc-stats.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\gc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\gc.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\gc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\monitor.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\gc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-hash.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\gc</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-conc-hash.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\gc</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="boehm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\boehm-gc.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\boehm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="sgen_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-old-bridge.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-new-bridge.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-tarjan-bridge.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-toggleref.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-toggleref.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-stw.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\sgen-mono.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-client-mono.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\sgen</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup Label="libmonoruntimeinclude_headers">
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\assembly.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\attrdefs.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\appdomain.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\blob.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-helpers.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\debug-mono-symfile.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\threads.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\environment.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\exception.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\image.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\loader.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\metadata.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-config.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-debug.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-gc.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\sgen-bridge.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\object.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\opcodes.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\profiler-events.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\reflection.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\row-indexes.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\tokentype.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\verify.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\metadata\Makefile.am">
+      <Filter>Resource Files$(MonoRuntimeFilterSubFolder)\common</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\common">
+      <UniqueIdentifier>{843B5CD9-EDFA-4AAC-991D-61DFA21371BC}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoRuntimeFilterSubFolder)\common">
+      <UniqueIdentifier>{A02993B9-96B7-4706-8DBC-C308D8E73728}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common">
+      <UniqueIdentifier>{7DF7F41B-D8FA-4360-97E0-B489AF16A4A1}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\common\config">
+      <UniqueIdentifier>{315FC157-3666-4A1D-9B57-E7109B4DB660}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common\config">
+      <UniqueIdentifier>{07DDD063-86C3-4F17-AC99-EBB8FBC893A8}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\common\null">
+      <UniqueIdentifier>{99F530B5-33A8-4BB4-ADEE-728D8E12DABD}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common\null">
+      <UniqueIdentifier>{8257808E-1E66-4361-9389-7C37D89FEE87}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common\gc">
+      <UniqueIdentifier>{410dd556-6715-4c4e-beff-c5dd7a6b78a1}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common\boehm">
+      <UniqueIdentifier>{728e57f8-14d3-42f4-b92a-be03cd2acdfa}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\common\sgen">
+      <UniqueIdentifier>{5fede250-d478-466b-aa2a-36d2222de065}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\common\sgen">
+      <UniqueIdentifier>{d5996ea0-8b43-4267-a46c-715270aaee2b}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\common\public">
+      <UniqueIdentifier>{D27FE656-8C2C-4D3B-8F25-4BAEAEAB7C6D}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/libmonoruntime-posix.targets b/msvc/libmonoruntime-posix.targets
new file mode 100644 (file)
index 0000000..ff25348
--- /dev/null
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32mutex-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32semaphore-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32event-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-osx.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-bsd.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-haiku.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-default.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-unix-glob.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-unix-glob.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32error-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoruntime-posix.targets.filters b/msvc/libmonoruntime-posix.targets.filters
new file mode 100644 (file)
index 0000000..5718e6a
--- /dev/null
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32mutex-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32semaphore-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32event-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-osx.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-bsd.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-haiku.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-unix-default.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-unix-glob.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-unix-glob.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32error-unix.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\posix</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\posix">
+      <UniqueIdentifier>{A7AC4663-8099-40E7-8527-BB3E157E4724}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\posix">
+      <UniqueIdentifier>{C3BF4A1D-8504-4891-9682-8DA7F355F8A3}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoruntime-win32.targets b/msvc/libmonoruntime-win32.targets
new file mode 100644 (file)
index 0000000..93830b0
--- /dev/null
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="win32_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-win32.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\console-win32-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cominterop-win32-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-win32.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-win32-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\icall-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\marshal-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-security-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-security-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32mutex-win32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32semaphore-win32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32event-win32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-win32.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-win32-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket-win32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32error-win32.c" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoruntime-win32.targets.filters b/msvc/libmonoruntime-win32.targets.filters
new file mode 100644 (file)
index 0000000..3b360da
--- /dev/null
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="win32_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\console-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\console-win32-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\cominterop-win32-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32file-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32file-win32-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\icall-windows.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\icall-windows-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\marshal-windows.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\marshal-windows-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\mono-security-windows.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\mono-security-windows-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32mutex-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32semaphore-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32event-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32process-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\metadata\w32process-win32-internals.h">
+      <Filter>Header Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32socket-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\metadata\w32error-win32.c">
+      <Filter>Source Files$(MonoRuntimeFilterSubFolder)\win32</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)\win32">
+      <UniqueIdentifier>{C6938EF2-A57F-4941-90EB-FCD7CF1E035D}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)\win32">
+      <UniqueIdentifier>{56DCE5E4-A83E-487B-BFED-577E1F784C14}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoruntime.targets b/msvc/libmonoruntime.targets
new file mode 100644 (file)
index 0000000..2db90bd
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmonoruntime-common.targets" />
+  <Import Project="libmonoruntime-win32.targets" />
+  <Import Project="libmonoruntime-posix.targets" />
+</Project>
diff --git a/msvc/libmonoruntime.targets.filters b/msvc/libmonoruntime.targets.filters
new file mode 100644 (file)
index 0000000..cad037a
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmonoruntime-common.targets.filters" />
+  <Import Project="libmonoruntime-win32.targets.filters" />
+  <Import Project="libmonoruntime-posix.targets.filters" />
+  <ItemGroup Condition="'$(MonoRuntimeFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(MonoRuntimeFilterSubFolder)">
+      <UniqueIdentifier>{992766FD-0584-4B49-A4F7-B59947CD8488}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoRuntimeFilterSubFolder)">
+      <UniqueIdentifier>{12D2E658-65D0-48E9-8F7A-6355482F17DA}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoRuntimeFilterSubFolder)">
+      <UniqueIdentifier>{DC656245-EE35-4C36-AA40-A109905666F3}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
\ No newline at end of file
index d2e5ad512cd78a353af0e1e05eb4308b9bd287b6..b9b512dddb3c8e78358483bf31e09a4e015de98b 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\metadata\appdomain.c" />\r
-    <ClCompile Include="..\mono\metadata\assembly.c" />\r
-    <ClCompile Include="..\mono\metadata\attach.c" />\r
-    <ClCompile Include="..\mono\metadata\boehm-gc.c" />\r
-    <ClCompile Include="..\mono\metadata\class-accessors.c" />\r
-    <ClCompile Include="..\mono\metadata\class.c" />\r
-    <ClCompile Include="..\mono\metadata\cominterop.c" />\r
-    <ClCompile Include="..\mono\metadata\console-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\property-bag.c" />\r
-    <ClCompile Include="..\mono\metadata\w32socket-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32file-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32error-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\icall-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\marshal-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-security-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\w32mutex-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32semaphore-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32event-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32process.c" />\r
-    <ClCompile Include="..\mono\metadata\w32process-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\coree.c" />\r
-    <ClCompile Include="..\mono\metadata\custom-attrs.c" />\r
-    <ClCompile Include="..\mono\metadata\debug-helpers.c" />\r
-    <ClCompile Include="..\mono\metadata\debug-mono-ppdb.c" />\r
-    <ClCompile Include="..\mono\metadata\debug-mono-symfile.c" />\r
-    <ClCompile Include="..\mono\metadata\decimal-ms.c" />\r
-    <ClCompile Include="..\mono\metadata\dynamic-image.c" />\r
-    <ClCompile Include="..\mono\metadata\dynamic-stream.c" />\r
-    <ClCompile Include="..\mono\metadata\domain.c" />\r
-    <ClCompile Include="..\mono\metadata\environment.c" />\r
-    <ClCompile Include="..\mono\metadata\exception.c" />\r
-    <ClCompile Include="..\mono\metadata\w32file.c" />\r
-    <ClCompile Include="..\mono\metadata\file-mmap-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\filewatcher.c" />\r
-    <ClCompile Include="..\mono\metadata\gc-stats.c" />\r
-    <ClCompile Include="..\mono\metadata\gc.c" />\r
-    <ClCompile Include="..\mono\metadata\handle.c" />\r
-    <ClCompile Include="..\mono\metadata\icall.c" />\r
-    <ClCompile Include="..\mono\metadata\image.c" />\r
-    <ClCompile Include="..\mono\metadata\jit-info.c" />\r
-    <ClCompile Include="..\mono\metadata\loader.c" />\r
-    <ClCompile Include="..\mono\metadata\locales.c" />\r
-    <ClCompile Include="..\mono\metadata\lock-tracer.c" />\r
-    <ClCompile Include="..\mono\metadata\marshal.c" />\r
-    <ClCompile Include="..\mono\metadata\mempool.c" />\r
-    <ClCompile Include="..\mono\metadata\metadata-verify.c" />\r
-    <ClCompile Include="..\mono\metadata\metadata.c" />\r
-    <ClCompile Include="..\mono\metadata\metadata-cross-helpers.c" />\r
-    <ClCompile Include="..\mono\metadata\method-builder.c" />\r
-    <ClCompile Include="..\mono\metadata\monitor.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-basic-block.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-config.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-config-dirs.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-debug.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-endian.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-hash.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-conc-hash.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-mlist.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-perfcounters.c" />\r
-    <ClCompile Include="..\mono\metadata\null-gc.c" />\r
-    <ClCompile Include="..\mono\metadata\number-ms.c" />\r
-    <ClCompile Include="..\mono\metadata\object.c" />\r
-    <ClCompile Include="..\mono\metadata\opcodes.c" />\r
-    <ClCompile Include="..\mono\metadata\profiler.c" />\r
-    <ClCompile Include="..\mono\metadata\rand.c" />\r
-    <ClCompile Include="..\mono\metadata\reflection.c" />\r
-    <ClCompile Include="..\mono\metadata\remoting.c" />\r
-    <ClCompile Include="..\mono\metadata\runtime.c" />\r
-    <ClCompile Include="..\mono\metadata\security-core-clr.c" />\r
-    <ClCompile Include="..\mono\metadata\security-manager.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-security.c" />\r
-    <ClCompile Include="..\mono\metadata\seq-points-data.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-mono.c" />\r
-    <ClCompile Include="..\mono\metadata\threadpool-io.c" />\r
-    <ClCompile Include="..\mono\metadata\threadpool.c" />\r
-    <ClCompile Include="..\mono\metadata\threadpool-worker-default.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-bridge.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-new-bridge.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-old-bridge.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-tarjan-bridge.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-toggleref.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-stw.c" />\r
-    <ClCompile Include="..\mono\metadata\w32socket.c" />\r
-    <ClCompile Include="..\mono\metadata\sre.c" />\r
-    <ClCompile Include="..\mono\metadata\sre-encode.c" />\r
-    <ClCompile Include="..\mono\metadata\sre-save.c" />\r
-    <ClCompile Include="..\mono\metadata\string-icalls.c" />\r
-    <ClCompile Include="..\mono\metadata\sysmath.c" />\r
-    <ClCompile Include="..\mono\metadata\threads.c" />\r
-    <ClCompile Include="..\mono\metadata\verify.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\metadata\appdomain.h" />\r
-    <ClInclude Include="..\mono\metadata\appdomain-icalls.h" />\r
-    <ClInclude Include="..\mono\metadata\assembly.h" />\r
-    <ClInclude Include="..\mono\metadata\attach.h" />\r
-    <ClInclude Include="..\mono\metadata\cil-coff.h" />\r
-    <ClInclude Include="..\mono\metadata\class-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\class.h" />\r
-    <ClInclude Include="..\mono\metadata\cominterop-win32-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\cominterop.h" />\r
-    <ClInclude Include="..\mono\metadata\console-io.h" />\r
-    <ClInclude Include="..\mono\metadata\console-win32-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\coree-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\coree.h" />\r
-    <ClInclude Include="..\mono\metadata\culture-info-tables.h" />\r
-    <ClInclude Include="..\mono\metadata\culture-info.h" />\r
-    <ClInclude Include="..\mono\metadata\custom-attrs-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\debug-helpers.h" />\r
-    <ClInclude Include="..\mono\metadata\debug-mono-ppdb.h" />\r
-    <ClInclude Include="..\mono\metadata\debug-mono-symfile.h" />\r
-    <ClInclude Include="..\mono\metadata\domain-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\dynamic-image-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\dynamic-stream-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\environment.h" />\r
-    <ClInclude Include="..\mono\metadata\exception.h" />\r
-    <ClInclude Include="..\mono\metadata\w32file-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\w32file-win32-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\w32file.h" />\r
-    <ClInclude Include="..\mono\metadata\w32error.h" />\r
-    <ClInclude Include="..\mono\utils\w32api.h" />\r
-    <ClInclude Include="..\mono\metadata\filewatcher.h" />\r
-    <ClInclude Include="..\mono\metadata\gc-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\handle.h" />\r
-    <ClInclude Include="..\mono\metadata\icall-windows-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\icall-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\marshal-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\marshal-windows-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-security-windows-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\number-ms.h" />\r
-    <ClInclude Include="..\mono\metadata\property-bag.h" />\r
-    <ClInclude Include="..\mono\metadata\w32process.h" />\r
-    <ClInclude Include="..\mono\metadata\w32process-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\w32process-win32-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\remoting.h" />\r
-    <ClInclude Include="..\mono\metadata\seq-points-data.h" />\r
-    <ClInclude Include="..\mono\metadata\sgen-bridge-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\sgen-client-mono.h" />\r
-    <ClInclude Include="..\mono\metadata\w32socket-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\threadpool-io.h" />\r
-    <ClInclude Include="..\mono\metadata\threadpool.h" />\r
-    <ClInclude Include="..\mono\metadata\threadpool-worker.h" />\r
-    <ClInclude Include="..\mono\sgen\gc-internal-agnostic.h" />\r
-    <ClInclude Include="..\mono\metadata\icall-def.h" />\r
-    <ClInclude Include="..\mono\metadata\image.h" />\r
-    <ClInclude Include="..\mono\metadata\loader.h" />\r
-    <ClInclude Include="..\mono\metadata\locales.h" />\r
-    <ClInclude Include="..\mono\metadata\lock-tracer.h" />\r
-    <ClInclude Include="..\mono\metadata\marshal.h" />\r
-    <ClInclude Include="..\mono\metadata\mempool-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\mempool.h" />\r
-    <ClInclude Include="..\mono\metadata\metadata-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\metadata.h" />\r
-    <ClInclude Include="..\mono\metadata\method-builder.h" />\r
-    <ClInclude Include="..\mono\metadata\monitor.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-basic-block.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-config.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-config-dirs.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-debug-debugger.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-debug.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-endian.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-hash.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-conc-hash.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-mlist.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-perfcounters-def.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-perfcounters.h" />\r
-    <ClInclude Include="..\mono\metadata\mono-ptr-array.h" />\r
-    <ClInclude Include="..\mono\metadata\normalization-tables.h" />\r
-    <ClInclude Include="..\mono\metadata\number-formatter.h" />\r
-    <ClInclude Include="..\mono\metadata\object-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\object.h" />\r
-    <ClInclude Include="..\mono\metadata\opcodes.h" />\r
-    <ClInclude Include="..\mono\metadata\profiler-events.h" />\r
-    <ClInclude Include="..\mono\metadata\profiler-private.h" />\r
-    <ClInclude Include="..\mono\metadata\profiler.h" />\r
-    <ClInclude Include="..\mono\metadata\rand.h" />\r
-    <ClInclude Include="..\mono\metadata\reflection.h" />\r
-    <ClInclude Include="..\mono\metadata\reflection-cache.h" />\r
-    <ClInclude Include="..\mono\metadata\reflection-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\runtime.h" />\r
-    <ClInclude Include="..\mono\metadata\security-core-clr.h" />\r
-    <ClInclude Include="..\mono\metadata\security-manager.h" />\r
-    <ClInclude Include="..\mono\metadata\security.h" />\r
-    <ClInclude Include="..\mono\metadata\sgen-bridge.h" />\r
-    <ClInclude Include="..\mono\metadata\sgen-toggleref.h" />\r
-    <ClInclude Include="..\mono\metadata\w32socket.h" />\r
-    <ClInclude Include="..\mono\metadata\sre-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\string-icalls.h" />\r
-    <ClInclude Include="..\mono\metadata\sysmath.h" />\r
-    <ClInclude Include="..\mono\metadata\tabledefs.h" />\r
-    <ClInclude Include="..\mono\metadata\threads-types.h" />\r
-    <ClInclude Include="..\mono\metadata\verify-internals.h" />\r
-    <ClInclude Include="..\mono\metadata\verify.h" />\r
-    <ClInclude Include="..\mono\metadata\wrapper-types.h" />\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\metadata\Makefile.am" />\r
-  </ItemGroup>\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{C36612BD-22D3-4B95-85E2-7FDC4FC5D739}</ProjectGuid>\r
     <Keyword>Win32Proj</Keyword>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_LIB;$(GC_DEFINES);_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_LIB;$(GC_DEFINES);WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_LIB;$(GC_DEFINES);NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_LIB;$(GC_DEFINES);WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
     </Link>\r
     <Lib />\r
   </ItemDefinitionGroup>\r
+  <Import Project="libmonoruntime.targets" />\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
index ce8d2a1b1b14988b46efe31fc602ae100a5828fa..3ac14af44719ffc479813d8359ab076ea7cc1cec 100644 (file)
@@ -1,585 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\metadata\assembly.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\attach.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\class.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\cominterop.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\console-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32mutex-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32semaphore-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32event-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\coree.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\debug-helpers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\debug-mono-ppdb.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\debug-mono-symfile.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\decimal-ms.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\environment.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\exception.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32file.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\file-mmap-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\filewatcher.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\handle.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\icall.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\image.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\jit-info.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\loader.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\locales.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\lock-tracer.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\marshal.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mempool.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\metadata.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\metadata-verify.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\method-builder.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-basic-block.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-config.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-config-dirs.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-debug.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-endian.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-mlist.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-perfcounters.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-security.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\null-gc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\number-ms.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\opcodes.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32process.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32process-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\profiler.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\rand.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\remoting.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\runtime.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\security-core-clr.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\security-manager.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\seq-points-data.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32socket.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\string-icalls.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sysmath.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\threadpool.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\threadpool-worker-default.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\threadpool-io.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\threads.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\verify.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\boehm-gc.c">\r
-      <Filter>Source Files\boehm</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\appdomain.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\domain.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\gc-stats.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\gc.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\monitor.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-hash.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-conc-hash.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\object.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\reflection.c">\r
-      <Filter>Source Files\gc</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-bridge.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-old-bridge.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-new-bridge.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-tarjan-bridge.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-toggleref.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-stw.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sgen-mono.c">\r
-      <Filter>Source Files\sgen</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\metadata-cross-helpers.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\custom-attrs.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\dynamic-image.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\dynamic-stream.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sre.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sre-encode.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sre-save.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32socket-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32file-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32error-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\icall-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\marshal-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-security-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\class-accessors.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\property-bag.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\metadata\appdomain.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\assembly.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\attach.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\cil-coff.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\class.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\class-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\cominterop.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\console-io.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\coree.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\culture-info.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\culture-info-tables.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\debug-helpers.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\debug-mono-ppdb.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\debug-mono-symfile.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\domain-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\environment.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\exception.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32file.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32error.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\w32api.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\filewatcher.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\handle.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\icall-def.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\image.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\loader.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\locales.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\lock-tracer.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\marshal.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mempool.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mempool-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\metadata.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\metadata-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\method-builder.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\monitor.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-basic-block.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-config.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-config-dirs.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-debug.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-debug-debugger.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-endian.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-hash.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-conc-hash.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-mlist.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-perfcounters.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-perfcounters-def.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-ptr-array.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\normalization-tables.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\number-formatter.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\number-ms.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\object.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\object-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\opcodes.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32process.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32process-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32process-win32-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\profiler-events.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\profiler-private.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\profiler.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\rand.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\reflection.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\remoting.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\runtime.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\security.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\security-core-clr.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\security-manager.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\seq-points-data.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32socket.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\string-icalls.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sysmath.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\tabledefs.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\threadpool.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\threadpool-worker.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\wrapper-types.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\threadpool-io.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\threads-types.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\verify.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\verify-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sgen-bridge.h">\r
-      <Filter>Header Files\sgen</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sgen-bridge-internals.h">\r
-      <Filter>Header Files\sgen</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sgen-toggleref.h">\r
-      <Filter>Header Files\sgen</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sgen-client-mono.h">\r
-      <Filter>Header Files\sgen</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\sgen\gc-internal-agnostic.h">\r
-      <Filter>Header Files\gc</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\gc-internals.h">\r
-      <Filter>Header Files\gc</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\custom-attrs-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\dynamic-image-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\dynamic-stream-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\reflection-cache.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\reflection-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\sre-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32socket-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\coree-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\console-win32-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32file-win32-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\w32file-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\icall-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\icall-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\marshal-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\marshal-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\mono-security-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\property-bag.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\cominterop-win32-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\metadata\appdomain-icalls.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
+  <Import Project="libmonoruntime.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
       <UniqueIdentifier>{eb8a6a4d-924c-494d-99c1-663e4c09a806}</UniqueIdentifier>\r
     <Filter Include="Source Files">\r
       <UniqueIdentifier>{3f4ff222-41cc-4bbc-b36b-cac0c21266ad}</UniqueIdentifier>\r
     </Filter>\r
-    <Filter Include="Source Files\boehm">\r
-      <UniqueIdentifier>{728e57f8-14d3-42f4-b92a-be03cd2acdfa}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files\sgen">\r
-      <UniqueIdentifier>{d5996ea0-8b43-4267-a46c-715270aaee2b}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Header Files\boehm">\r
-      <UniqueIdentifier>{2446a0bf-5f8b-4789-91ab-6107f72b8539}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Header Files\sgen">\r
-      <UniqueIdentifier>{5fede250-d478-466b-aa2a-36d2222de065}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Source Files\gc">\r
-      <UniqueIdentifier>{410dd556-6715-4c4e-beff-c5dd7a6b78a1}</UniqueIdentifier>\r
-    </Filter>\r
-    <Filter Include="Header Files\gc">\r
-      <UniqueIdentifier>{e37c9a88-bfb3-47dd-948c-a74dea25b3ad}</UniqueIdentifier>\r
-    </Filter>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\metadata\Makefile.am">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
   </ItemGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmonoutils-arch.targets b/msvc/libmonoutils-arch.targets
new file mode 100644 (file)
index 0000000..041daa7
--- /dev/null
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+    <ExcludeFromWindows32Build>false</ExcludeFromWindows32Build>
+    <ExcludeFromWindows64Build>false</ExcludeFromWindows64Build>
+    <ExcludeFromWindows32Build Condition="'$(Platform)'=='Win32'">true</ExcludeFromWindows32Build>
+    <ExcludeFromWindows64Build Condition="'$(Platform)'=='x64'">true</ExcludeFromWindows64Build>
+  </PropertyGroup>
+  <ItemGroup Label="arch_x86_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-x86.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-x86.c" />
+  </ItemGroup>
+  <ItemGroup Label="arch_amd64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-amd64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <MASM Include="$(MonoSourceLocation)\mono\utils\win64.asm">
+      <FileType>Document</FileType>
+      <ExcludedFromBuild>$(ExcludeFromWindows32Build)</ExcludedFromBuild>
+      <PreprocessorDefinitions>X64</PreprocessorDefinitions>
+    </MASM>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-arm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-arm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-arm64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-arm64.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_mips_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-mips.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_ppc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-ppc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_sparc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-sparc.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_s390x_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-os390x.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_wasm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_unknown_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-unknown.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_cross_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-cross.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+  <ImportGroup Label="ExtensionSettings">
+    <Import Project="$(MonoSourceLocation)\msvc\masm.fixed.props" />
+    <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
+  </ImportGroup>
+</Project>
diff --git a/msvc/libmonoutils-arch.targets.filters b/msvc/libmonoutils-arch.targets.filters
new file mode 100644 (file)
index 0000000..836b30f
--- /dev/null
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="arch_x86_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-x86.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-x86.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\x86</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_amd64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-amd64.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\amd64</Filter>
+    </ClCompile>
+    <MASM Include="$(MonoSourceLocation)\mono\utils\win64.asm">
+      <Filter>Resource Files$(MonoUtilsFilterSubFolder)\arch\amd64</Filter>
+    </MASM>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-arm.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-arm.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\arm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_arm64_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-arm64.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-arm64.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\arm64</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_mips_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-mips.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\mips</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_ppc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-ppc.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\ppc</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_sparc_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-sparc.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\sparc</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_s390x_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-os390x.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\s390x</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_wasm_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-wasm.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\wasm</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_unknown_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support-unknown.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\unknown</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup Label="arch_cross_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-cross.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\arch\cross</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Resource Files$(MonoUtilsFilterSubFolder)\arch">
+      <UniqueIdentifier>{CF1B494F-7FC7-4B1F-9356-1E6F4C3AA151}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch">
+      <UniqueIdentifier>{6603FB44-3F5A-490C-A2FB-3FCD4818EA6A}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\x86">
+      <UniqueIdentifier>{9931E7C8-6C44-48E6-8752-AD0E3CB99A40}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Resource Files$(MonoUtilsFilterSubFolder)\arch\amd64">
+      <UniqueIdentifier>{6F39D983-0414-4906-A8B4-F3EE6D66ADB2}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\amd64">
+      <UniqueIdentifier>{711787B7-91B8-4FDF-937B-35C28B17F264}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\arm">
+      <UniqueIdentifier>{BF9E07DE-1E58-485B-8A1D-E98B51AA3335}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\arm64">
+      <UniqueIdentifier>{7F0740FA-7CF3-4281-B044-76AA9D603173}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\mips">
+      <UniqueIdentifier>{C994366B-5CDF-4221-9F02-0889EE48AE84}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\ppc">
+      <UniqueIdentifier>{350298FD-D211-4A13-9FDD-5CFFE2693D3E}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\sparc">
+      <UniqueIdentifier>{58B688AA-3E02-4D79-A17F-FC287BC36BD4}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\s390x">
+      <UniqueIdentifier>{D0DAB5B3-50DB-4122-81A2-FB82F6569DC7}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\wasm">
+      <UniqueIdentifier>{CCF0AA6D-4EC2-4D0B-80DE-3D304D3F1B06}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\unknown">
+      <UniqueIdentifier>{1241F641-C6B5-4139-87D9-9981D309FFBA}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\arch\cross">
+      <UniqueIdentifier>{23738EAA-81C9-4974-B742-6054F15292A4}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-common.targets b/msvc/libmonoutils-common.targets
new file mode 100644 (file)
index 0000000..d9da645
--- /dev/null
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="monoutils_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-md5.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-sha1.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-logger.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-codeman.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\dlmalloc.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\dlmalloc.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-counters.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-compiler.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-complex.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-windows.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-darwin.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-posix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-windows.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-common.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-posix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-android.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-darwin.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-internal-hash.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-internal-hash.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-io-portability.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-io-portability.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\monobitset.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-filemap.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-math.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-mmap.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-mmap-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap-windows-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-mutex.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-os-mutex.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-wait.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-coop-mutex.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-once.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-lazy-init.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-networkinterfaces.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-networkinterfaces.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-proclib.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-proclib-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-proclib.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-proclib-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-publib.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-string.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-time.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-time.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\strenc.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\strenc.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-uri.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-poll.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-path.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-semaphore.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-coop-semaphore.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-sigcontext.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-stdlib.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-property-hash.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-property-hash.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-value-hash.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-value-hash.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf_common.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf32.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf64.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-dwarf.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\dtrace.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\gc_wrapper.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-error.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-error-internals.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\monobitset.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-codeman.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-digest.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-machine.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-math.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-membar.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-path.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-poll.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-uri.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-stdlib.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\valgrind.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mach-support.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\memcheck.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-context.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-context.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-stack-unwinding.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\hazard-pointer.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\hazard-pointer.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-queue.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-queue.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-alloc.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-alloc.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-array-queue.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-array-queue.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-linked-list-set.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-linked-list-set.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-state-machine.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-posix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-posix-signals.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-mach.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-mach-helper.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-windows.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-linux.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-freebsd.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-netbsd.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-openbsd.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-android.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-haiku.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-wasm.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-debug.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-api.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-coop.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-coop.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-tls.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-tls.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\linux_magic.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-memory-model.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\atomic.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\atomic.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-hwcap.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-vars.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\bsearch.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\bsearch.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-signal-handler.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-conc-hashtable.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-conc-hashtable.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\json.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\json.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-posix.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-fallback.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-missing.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\networking.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-rand.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-rand-windows.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-rand.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-rand-windows-internals.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\memfuncs.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\memfuncs.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\parse.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\parse.h" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\checked-build.c" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\checked-build.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\os-event.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\refcount.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\w32api.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\unlocked.h" />
+  </ItemGroup>
+  <ItemGroup Label="libmonoutilsinclude_headers">
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-error.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-publib.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl-fallback.h" />
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-counters.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\utils\Makefile.am" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-common.targets.filters b/msvc/libmonoutils-common.targets.filters
new file mode 100644 (file)
index 0000000..3852bf9
--- /dev/null
@@ -0,0 +1,502 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="monoutils_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-md5.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-sha1.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-logger.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-codeman.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\dlmalloc.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\dlmalloc.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-counters.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-compiler.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-complex.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-darwin.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-posix.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-dl-wasm.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl-windows-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-common.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-posix.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-android.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-log-darwin.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-internal-hash.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-internal-hash.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-io-portability.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-io-portability.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\monobitset.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-filemap.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-math.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-mmap.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-mmap-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-mmap-windows-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-mutex.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-os-mutex.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-wait.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-coop-mutex.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-once.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-lazy-init.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-networkinterfaces.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-networkinterfaces.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-proclib.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-proclib-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-proclib.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-proclib-windows-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-publib.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-string.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-time.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-time.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\strenc.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\strenc.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-uri.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-poll.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-path.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-os-semaphore.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-coop-semaphore.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-sigcontext.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-stdlib.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-property-hash.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-property-hash.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-value-hash.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-value-hash.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf_common.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf32.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-elf64.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\freebsd-dwarf.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\dtrace.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\gc_wrapper.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-error.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-error-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\monobitset.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-codeman.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-digest.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-machine.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-math.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-membar.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-path.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-poll.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-uri.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-stdlib.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\valgrind.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mach-support.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mach-support.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\memcheck.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-context.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-context.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-stack-unwinding.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\hazard-pointer.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\hazard-pointer.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-queue.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-queue.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-alloc.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-alloc.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\lock-free-array-queue.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\lock-free-array-queue.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-linked-list-set.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-linked-list-set.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-state-machine.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-posix.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-posix-signals.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-mach.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-mach-helper.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-linux.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-freebsd.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-netbsd.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-openbsd.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-android.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-haiku.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-wasm.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-debug.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-api.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-threads-coop.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-threads-coop.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-tls.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-tls.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\linux_magic.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-memory-model.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\atomic.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\atomic.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-hwcap.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-hwcap.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-hwcap-vars.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\bsearch.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\bsearch.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-signal-handler.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-conc-hashtable.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-conc-hashtable.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\json.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\json.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-posix.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-fallback.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-missing.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\networking-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\networking.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-rand.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-rand-windows.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-rand.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-rand-windows-internals.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\memfuncs.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\memfuncs.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\parse.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\parse.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\checked-build.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClCompile>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\checked-build.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\os-event.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\refcount.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\w32api.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\unlocked.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup Label="libmonoutilsinclude_headers">
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-error.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-publib.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-dl-fallback.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-counters.h">
+      <Filter>Header Files$(MonoUtilsFilterSubFolder)\common\public</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="$(MonoSourceLocation)\mono\utils\Makefile.am">
+      <Filter>Resource Files$(MonoUtilsFilterSubFolder)\common</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoUtilsFilterSubFolder)\common">
+      <UniqueIdentifier>{467B47D6-631B-4DFD-83B7-70CD1E314F7F}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoUtilsFilterSubFolder)\common">
+      <UniqueIdentifier>{E4760A93-A38F-48E5-B89D-78487FA2805D}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\common">
+      <UniqueIdentifier>{0CB40928-2D3E-46B9-A8DF-D7F63A35A6CD}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Header Files$(MonoUtilsFilterSubFolder)\common\public">
+      <UniqueIdentifier>{23D97CF3-2DE0-42A1-8AF7-40D6981EB259}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-posix.targets b/msvc/libmonoutils-posix.targets
new file mode 100644 (file)
index 0000000..16da381
--- /dev/null
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+  </PropertyGroup>
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\os-event-unix.c">
+      <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+    </ClCompile>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-posix.targets.filters b/msvc/libmonoutils-posix.targets.filters
new file mode 100644 (file)
index 0000000..956b3ac
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="posix_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\os-event-unix.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\posix</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\posix">
+      <UniqueIdentifier>{CFAFABB9-9646-402C-BD4E-A0E1EF4F3595}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-win32.targets b/msvc/libmonoutils-win32.targets
new file mode 100644 (file)
index 0000000..c1484ed
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="win32_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\os-event-win32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-os-wait-win32.c" />
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils-win32.targets.filters b/msvc/libmonoutils-win32.targets.filters
new file mode 100644 (file)
index 0000000..122e39e
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="win32_sources">
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\os-event-win32.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\win32</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-os-wait-win32.c">
+      <Filter>Source Files$(MonoUtilsFilterSubFolder)\win32</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)\win32">
+      <UniqueIdentifier>{56DCE5E4-A83E-487B-BFED-577E1F784C14}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
diff --git a/msvc/libmonoutils.targets b/msvc/libmonoutils.targets
new file mode 100644 (file)
index 0000000..a9a9582
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmonoutils-common.targets" />
+  <Import Project="libmonoutils-win32.targets" />
+  <Import Project="libmonoutils-posix.targets" />
+  <Import Project="libmonoutils-arch.targets" />
+</Project>
diff --git a/msvc/libmonoutils.targets.filters b/msvc/libmonoutils.targets.filters
new file mode 100644 (file)
index 0000000..9a23e04
--- /dev/null
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="libmonoutils-common.targets.filters" />
+  <Import Project="libmonoutils-win32.targets.filters" />
+  <Import Project="libmonoutils-posix.targets.filters" />
+  <Import Project="libmonoutils-arch.targets.filters" />
+  <ItemGroup Condition="'$(MonoUtilsFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(MonoUtilsFilterSubFolder)">
+      <UniqueIdentifier>{1ACFEA26-DBB0-44B9-8297-414DD74D7E22}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoUtilsFilterSubFolder)">
+      <UniqueIdentifier>{A52D473E-5928-4BD9-AA2D-284C4A04D9D4}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoUtilsFilterSubFolder)">
+      <UniqueIdentifier>{69B9EC3D-597F-46CE-8F9F-55B732E95CCC}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
index beba4278b8e64cf515143a124e9b3f5b39c13b94..fd727132bc650fcb5ef9b7e2ed56fd66bf1a7903 100644 (file)
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\utils\dlmalloc.c" />\r
-    <ClCompile Include="..\mono\utils\hazard-pointer.c" />\r
-    <ClCompile Include="..\mono\utils\json.c" />\r
-    <ClCompile Include="..\mono\utils\lock-free-alloc.c" />\r
-    <ClCompile Include="..\mono\utils\lock-free-array-queue.c" />\r
-    <ClCompile Include="..\mono\utils\lock-free-queue.c" />\r
-    <ClCompile Include="..\mono\utils\mach-support-amd64.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support-arm.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support-x86.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-codeman.c" />\r
-    <ClCompile Include="..\mono\utils\mono-conc-hashtable.c" />\r
-    <ClCompile Include="..\mono\utils\mono-context.c" />\r
-    <ClCompile Include="..\mono\utils\mono-counters.c" />\r
-    <ClCompile Include="..\mono\utils\mono-dl-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-dl.c" />\r
-    <ClCompile Include="..\mono\utils\mono-error.c" />\r
-    <ClCompile Include="..\mono\utils\mono-filemap.c" />\r
-    <ClCompile Include="..\mono\utils\mono-internal-hash.c" />\r
-    <ClCompile Include="..\mono\utils\mono-io-portability.c" />\r
-    <ClCompile Include="..\mono\utils\mono-linked-list-set.c" />\r
-    <ClCompile Include="..\mono\utils\mono-logger.c" />\r
-    <ClCompile Include="..\mono\utils\mono-log-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-log-common.c" />\r
-    <ClCompile Include="..\mono\utils\mono-math.c" />\r
-    <ClCompile Include="..\mono\utils\mono-md5.c" />\r
-    <ClCompile Include="..\mono\utils\mono-mmap-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-mmap.c" />\r
-    <ClCompile Include="..\mono\utils\mono-networkinterfaces.c" />\r
-    <ClCompile Include="..\mono\utils\mono-os-wait-win32.c" />\r
-    <ClCompile Include="..\mono\utils\mono-proclib-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-rand-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-rand.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads-state-machine.c" />\r
-    <ClCompile Include="..\mono\utils\networking.c" />\r
-    <ClCompile Include="..\mono\utils\networking-posix.c" />\r
-    <ClCompile Include="..\mono\utils\networking-missing.c" />\r
-    <ClCompile Include="..\mono\utils\networking-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-path.c" />\r
-    <ClCompile Include="..\mono\utils\mono-poll.c" />\r
-    <ClCompile Include="..\mono\utils\mono-proclib.c" />\r
-    <ClCompile Include="..\mono\utils\mono-property-hash.c" />\r
-    <ClCompile Include="..\mono\utils\mono-publib.c" />\r
-    <ClCompile Include="..\mono\utils\mono-sha1.c" />\r
-    <ClCompile Include="..\mono\utils\mono-stdlib.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads-mach.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-posix.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-posix-signals.c">\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-windows.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads-coop.c" />\r
-    <ClCompile Include="..\mono\utils\mono-time.c" />\r
-    <ClCompile Include="..\mono\utils\mono-tls.c" />\r
-    <ClCompile Include="..\mono\utils\mono-uri.c" />\r
-    <ClCompile Include="..\mono\utils\mono-value-hash.c" />\r
-    <ClCompile Include="..\mono\utils\monobitset.c" />\r
-    <ClCompile Include="..\mono\utils\mono-os-mutex.c" />\r
-    <ClCompile Include="..\mono\utils\os-event-win32.c" />\r
-    <ClCompile Include="..\mono\utils\strenc.c" />\r
-    <ClCompile Include="..\mono\utils\atomic.c" />\r
-    <ClCompile Include="..\mono\utils\mono-hwcap.c" />\r
-    <ClCompile Include="..\mono\utils\mono-hwcap-x86.c" />\r
-    <ClCompile Include="..\mono\utils\bsearch.c" />\r
-    <ClCompile Include="..\mono\utils\memfuncs.c" />\r
-    <ClCompile Include="..\mono\utils\parse.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\utils\dlmalloc.h" />\r
-    <ClInclude Include="..\mono\utils\dtrace.h" />\r
-    <ClInclude Include="..\mono\utils\freebsd-dwarf.h" />\r
-    <ClInclude Include="..\mono\utils\freebsd-elf32.h" />\r
-    <ClInclude Include="..\mono\utils\freebsd-elf64.h" />\r
-    <ClInclude Include="..\mono\utils\freebsd-elf_common.h" />\r
-    <ClInclude Include="..\mono\utils\gc_wrapper.h" />\r
-    <ClInclude Include="..\mono\utils\hazard-pointer.h" />\r
-    <ClInclude Include="..\mono\utils\json.h" />\r
-    <ClInclude Include="..\mono\utils\linux_magic.h" />\r
-    <ClInclude Include="..\mono\utils\lock-free-alloc.h" />\r
-    <ClInclude Include="..\mono\utils\lock-free-array-queue.h" />\r
-    <ClInclude Include="..\mono\utils\lock-free-queue.h" />\r
-    <ClInclude Include="..\mono\utils\mach-support.h" />\r
-    <ClInclude Include="..\mono\utils\memcheck.h" />\r
-    <ClInclude Include="..\mono\utils\mono-codeman.h" />\r
-    <ClInclude Include="..\mono\utils\mono-compiler.h" />\r
-    <ClInclude Include="..\mono\utils\mono-complex.h" />\r
-    <ClInclude Include="..\mono\utils\mono-conc-hashtable.h" />\r
-    <ClInclude Include="..\mono\utils\mono-context.h" />\r
-    <ClInclude Include="..\mono\utils\mono-coop-mutex.h" />\r
-    <ClInclude Include="..\mono\utils\mono-coop-semaphore.h" />\r
-    <ClInclude Include="..\mono\utils\mono-counters.h" />\r
-    <ClInclude Include="..\mono\utils\mono-digest.h" />\r
-    <ClInclude Include="..\mono\utils\mono-dl-fallback.h" />\r
-    <ClInclude Include="..\mono\utils\mono-dl-windows-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-dl.h" />\r
-    <ClInclude Include="..\mono\utils\mono-error-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-error.h" />\r
-    <ClInclude Include="..\mono\utils\mono-internal-hash.h" />\r
-    <ClInclude Include="..\mono\utils\mono-io-portability.h" />\r
-    <ClInclude Include="..\mono\utils\mono-linked-list-set.h" />\r
-    <ClInclude Include="..\mono\utils\mono-logger-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-logger.h" />\r
-    <ClInclude Include="..\mono\utils\mono-machine.h" />\r
-    <ClInclude Include="..\mono\utils\mono-math.h" />\r
-    <ClInclude Include="..\mono\utils\mono-membar.h" />\r
-    <ClInclude Include="..\mono\utils\mono-memory-model.h" />\r
-    <ClInclude Include="..\mono\utils\mono-mmap-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-mmap-windows-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-mmap.h" />\r
-    <ClInclude Include="..\mono\utils\mono-networkinterfaces.h" />\r
-    <ClInclude Include="..\mono\utils\mono-once.h" />\r
-    <ClInclude Include="..\mono\utils\mono-os-mutex.h" />\r
-    <ClInclude Include="..\mono\utils\mono-os-semaphore.h" />\r
-    <ClInclude Include="..\mono\utils\mono-os-wait.h" />\r
-    <ClInclude Include="..\mono\utils\mono-path.h" />\r
-    <ClInclude Include="..\mono\utils\mono-poll.h" />\r
-    <ClInclude Include="..\mono\utils\mono-proclib-windows-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-proclib.h" />\r
-    <ClInclude Include="..\mono\utils\mono-property-hash.h" />\r
-    <ClInclude Include="..\mono\utils\mono-publib.h" />\r
-    <ClInclude Include="..\mono\utils\mono-rand-windows-internals.h" />\r
-    <ClInclude Include="..\mono\utils\mono-rand.h" />\r
-    <ClInclude Include="..\mono\utils\mono-sigcontext.h" />\r
-    <ClInclude Include="..\mono\utils\mono-stack-unwinding.h" />\r
-    <ClInclude Include="..\mono\utils\mono-stdlib.h" />\r
-    <ClInclude Include="..\mono\utils\mono-string.h" />\r
-    <ClInclude Include="..\mono\utils\mono-threads.h" />\r
-    <ClInclude Include="..\mono\utils\mono-threads-api.h" />\r
-    <ClInclude Include="..\mono\utils\mono-threads-coop.h" />\r
-    <ClInclude Include="..\mono\utils\mono-time.h" />\r
-    <ClInclude Include="..\mono\utils\mono-tls.h" />\r
-    <ClInclude Include="..\mono\utils\mono-uri.h" />\r
-    <ClInclude Include="..\mono\utils\mono-value-hash.h" />\r
-    <ClInclude Include="..\mono\utils\monobitset.h" />\r
-    <ClInclude Include="..\mono\utils\os-event.h" />\r
-    <ClInclude Include="..\mono\utils\strenc.h" />\r
-    <ClInclude Include="..\mono\utils\valgrind.h" />\r
-    <ClInclude Include="..\mono\utils\atomic.h" />\r
-    <ClInclude Include="..\mono\utils\unlocked.h" />\r
-    <ClInclude Include="..\mono\utils\mono-hwcap.h" />\r
-    <ClInclude Include="..\mono\utils\mono-hwcap-x86.h" />\r
-    <ClInclude Include="..\mono\utils\bsearch.h" />\r
-    <ClInclude Include="..\mono\utils\memfuncs.h" />\r
-    <ClInclude Include="..\mono\utils\parse.h" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <MASM Include="..\mono\utils\win64.asm">\r
-      <FileType>Document</FileType>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-    </MASM>\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\utils\Makefile.am" />\r
-  </ItemGroup>\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}</ProjectGuid>\r
     <Keyword>Win32Proj</Keyword>\r
     <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
-  <ImportGroup Label="ExtensionSettings">\r
-    <Import Project=".\masm.fixed.props" />\r
-  </ImportGroup>\r
   <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
     <Import Project="mono.props" />\r
       <Optimization>Disabled</Optimization>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <Command>\r
       </Command>\r
     </PreBuildEvent>\r
-    <MASM>\r
-      <PreprocessorDefinitions>X64</PreprocessorDefinitions>\r
-    </MASM>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <WarningLevel>Level3</WarningLevel>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <Optimization>MaxSpeed</Optimization>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <Command>\r
       </Command>\r
     </PreBuildEvent>\r
-    <MASM>\r
-      <PreprocessorDefinitions>X64</PreprocessorDefinitions>\r
-    </MASM>\r
   </ItemDefinitionGroup>\r
+  <Import Project="libmonoutils.targets" />\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
-  <ImportGroup Label="ExtensionTargets">\r
-    <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />\r
-  </ImportGroup>\r
 </Project>
\ No newline at end of file
index e4b82690a1821a115451b8f47e75ab4f9aecaa44..def4467d313bf2965f480584892a1582c5134f0c 100644 (file)
@@ -1,432 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\mono\utils\atomic.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\bsearch.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\dlmalloc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\hazard-pointer.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\json.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\lock-free-alloc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\lock-free-array-queue.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\lock-free-queue.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support-amd64.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support-arm.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mach-support-x86.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\memfuncs.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\monobitset.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-codeman.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-conc-hashtable.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-context.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-counters.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-dl.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-dl-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-error.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-filemap.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-hwcap.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-hwcap-x86.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-internal-hash.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-io-portability.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-linked-list-set.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-logger.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-math.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-md5.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-mmap.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-networkinterfaces.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-path.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-poll.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-proclib.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-property-hash.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-publib.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-rand.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-sha1.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-stdlib.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-coop.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-mach.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-posix.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-posix-signals.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-state-machine.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-threads-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-time.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-tls.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-uri.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-value-hash.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\networking.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\networking-missing.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\networking-posix.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\networking-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\parse.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\strenc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-log-common.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-log-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-rand-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-proclib-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-mmap-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\os-event-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-os-mutex.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-os-wait-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\mono\utils\atomic.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\bsearch.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\dlmalloc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\dtrace.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\freebsd-dwarf.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\freebsd-elf_common.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\freebsd-elf32.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\freebsd-elf64.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\gc_wrapper.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\hazard-pointer.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\json.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\linux_magic.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\lock-free-alloc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\lock-free-array-queue.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\lock-free-queue.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mach-support.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\memcheck.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\memfuncs.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\monobitset.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-codeman.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-compiler.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-complex.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-conc-hashtable.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-context.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-coop-mutex.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-coop-semaphore.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-counters.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-digest.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-dl.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-dl-fallback.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-error.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-error-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-hwcap.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-hwcap-x86.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-internal-hash.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-io-portability.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-linked-list-set.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-logger.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-logger-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-machine.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-math.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-membar.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-memory-model.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-mmap.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-networkinterfaces.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-once.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-os-mutex.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-os-semaphore.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-path.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-poll.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-proclib.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-property-hash.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-publib.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-rand.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-sigcontext.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-stack-unwinding.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-stdlib.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-string.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-threads.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-threads-api.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-threads-coop.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-time.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-tls.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-uri.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-value-hash.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\parse.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\strenc.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\valgrind.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-mmap-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-mmap-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-proclib-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-rand-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-dl-windows-internals.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\os-event.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\unlocked.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\mono\utils\mono-os-wait.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
+  <Import Project="libmonoutils.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
       <UniqueIdentifier>{7d1240fd-7e95-4e21-ab1a-365dd69355de}</UniqueIdentifier>\r
       <UniqueIdentifier>{82f9c5a2-bc7b-4424-ae85-a203027fd038}</UniqueIdentifier>\r
     </Filter>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <MASM Include="..\mono\utils\win64.asm">\r
-      <Filter>Resource Files</Filter>\r
-    </MASM>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="..\mono\utils\Makefile.am">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
-  </ItemGroup>\r
 </Project>
\ No newline at end of file
index 27a44e3ae8cb8675b56bba9e4659ab9f6ff20c84..a6d25fbb2b1a95a76e3c918324199a8125e3e272 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
diff --git a/msvc/mono.def b/msvc/mono.def
deleted file mode 100644 (file)
index a07e7c7..0000000
+++ /dev/null
@@ -1,985 +0,0 @@
-; file generated by create-windef.pl
-EXPORTS
-MonoFixupCorEE
-mono_add_internal_call
-mono_aot_register_module
-mono_array_addr_with_size
-mono_array_class_get
-mono_array_clone
-mono_array_element_size
-mono_array_length
-mono_array_new
-mono_array_new_full
-mono_array_new_specific
-mono_assemblies_cleanup
-mono_assemblies_init
-mono_assembly_addref
-mono_assembly_close
-mono_assembly_fill_assembly_name
-mono_assembly_foreach
-mono_assembly_get_assemblyref
-mono_assembly_get_image
-mono_assembly_get_main
-mono_assembly_get_name
-mono_assembly_get_object
-mono_assembly_getrootdir
-mono_assembly_invoke_load_hook
-mono_assembly_invoke_search_hook
-mono_assembly_load
-mono_assembly_load_from
-mono_assembly_load_from_full
-mono_assembly_load_full
-mono_assembly_load_module
-mono_assembly_load_module_checked
-mono_assembly_load_reference
-mono_assembly_load_references
-mono_assembly_load_with_partial_name
-mono_assembly_loaded
-mono_assembly_loaded_full
-mono_assembly_name_free
-mono_assembly_name_get_culture
-mono_assembly_name_get_name
-mono_assembly_name_get_pubkeytoken
-mono_assembly_name_get_version
-mono_assembly_name_new
-mono_assembly_names_equal
-mono_assembly_open
-mono_assembly_open_full
-mono_assembly_set_main
-mono_assembly_setrootdir
-mono_bitset_alloc_size
-mono_bitset_clear
-mono_bitset_clear_all
-mono_bitset_clone
-mono_bitset_copyto
-mono_bitset_count
-mono_bitset_equal
-mono_bitset_find_first
-mono_bitset_find_first_unset
-mono_bitset_find_last
-mono_bitset_find_start
-mono_bitset_foreach
-mono_bitset_free
-mono_bitset_intersection
-mono_bitset_intersection_2
-mono_bitset_invert
-mono_bitset_mem_new
-mono_bitset_new
-mono_bitset_set
-mono_bitset_set_all
-mono_bitset_size
-mono_bitset_sub
-mono_bitset_test
-mono_bitset_test_bulk
-mono_bitset_union
-mono_bounded_array_class_get
-mono_breakpoint_clean_code
-mono_check_corlib_version
-mono_class_array_element_size
-mono_class_data_size
-mono_class_describe_statics
-mono_class_enum_basetype
-mono_class_from_generic_parameter
-mono_class_from_mono_type
-mono_class_from_name
-mono_class_from_name_case
-mono_class_from_typeref
-mono_class_from_typeref_checked
-mono_class_get
-mono_class_get_byref_type
-mono_class_get_context
-mono_class_get_element_class
-mono_class_get_event_token
-mono_class_get_events
-mono_class_get_field
-mono_class_get_field_from_name
-mono_class_get_field_token
-mono_class_get_fields
-mono_class_get_flags
-mono_class_get_full
-mono_class_get_image
-mono_class_get_interfaces
-mono_class_get_method_from_name
-mono_class_get_method_from_name_flags
-mono_class_get_methods
-mono_class_get_name
-mono_class_get_namespace
-mono_class_get_nested_types
-mono_class_get_nesting_type
-mono_class_get_parent
-mono_class_get_properties
-mono_class_get_property_from_name
-mono_class_get_property_token
-mono_class_get_rank
-mono_class_get_type
-mono_class_get_type_token
-mono_class_implements_interface
-mono_class_inflate_generic_method
-mono_class_inflate_generic_type
-mono_class_init
-mono_class_instance_size
-mono_class_interface_offset
-mono_class_is_assignable_from
-mono_class_is_delegate
-mono_class_is_enum
-mono_class_is_subclass_of
-mono_class_is_valid_enum
-mono_class_is_valuetype
-mono_class_min_align
-mono_class_name_from_token
-mono_class_num_events
-mono_class_num_fields
-mono_class_num_methods
-mono_class_num_properties
-mono_class_value_size
-mono_class_vtable
-mono_cli_rva_image_map
-mono_code_manager_cleanup
-mono_code_manager_commit
-mono_code_manager_destroy
-mono_code_manager_init
-mono_code_manager_install_callbacks
-mono_code_manager_invalidate
-mono_code_manager_new
-mono_code_manager_new_dynamic
-mono_code_manager_reserve
-mono_code_manager_reserve_align
-mono_code_manager_set_read_only
-mono_code_manager_size
-mono_compile_method
-mono_conc_hashtable_destroy
-mono_conc_hashtable_foreach
-mono_conc_hashtable_foreach_steal
-mono_conc_hashtable_insert
-mono_conc_hashtable_lookup
-mono_conc_hashtable_new
-mono_conc_hashtable_new_full
-mono_conc_hashtable_remove
-mono_config_cleanup
-mono_config_for_assembly
-mono_config_get_cpu
-mono_config_get_os
-mono_config_get_wordsize
-mono_config_is_server_mode
-mono_config_parse
-mono_config_parse_memory
-mono_config_set_server_mode
-mono_config_string_for_assembly_file
-mono_context_get
-mono_context_get_desc
-mono_context_get_domain_id
-mono_context_get_id
-mono_context_init
-mono_context_set
-mono_counter_get_name
-mono_counter_get_section
-mono_counter_get_size
-mono_counter_get_type
-mono_counter_get_unit
-mono_counter_get_variance
-mono_counters_cleanup
-mono_counters_dump
-mono_counters_enable
-mono_counters_foreach
-mono_counters_init
-mono_counters_on_register
-mono_counters_register
-mono_counters_register_with_size
-mono_counters_sample
-mono_cpu_count
-mono_custom_attrs_construct
-mono_custom_attrs_free
-mono_custom_attrs_from_assembly
-mono_custom_attrs_from_class
-mono_custom_attrs_from_event
-mono_custom_attrs_from_field
-mono_custom_attrs_from_index
-mono_custom_attrs_from_method
-mono_custom_attrs_from_param
-mono_custom_attrs_from_property
-mono_custom_attrs_get_attr
-mono_custom_attrs_has_attr
-mono_debug_add_delegate_trampoline
-mono_debug_add_method
-mono_debug_cleanup
-mono_debug_close_image
-mono_debug_close_mono_symbol_file
-mono_debug_domain_create
-mono_debug_domain_unload
-mono_debug_enabled
-mono_debug_find_method
-mono_debug_free_locals
-mono_debug_free_method_jit_info
-mono_debug_free_source_location
-mono_debug_il_offset_from_address
-mono_debug_init
-mono_debug_lookup_locals
-mono_debug_lookup_method
-mono_debug_lookup_method_addresses
-mono_debug_lookup_source_location
-mono_debug_open_image_from_memory
-mono_debug_open_mono_symbols
-mono_debug_print_stack_frame
-mono_debug_print_vars
-mono_debug_remove_method
-mono_debug_symfile_free_location
-mono_debug_symfile_is_loaded
-mono_debug_symfile_lookup_locals
-mono_debug_symfile_lookup_location
-mono_debug_symfile_lookup_method
-mono_debugger_agent_parse_options
-mono_debugger_agent_register_transport
-mono_debugger_agent_transport_handshake
-mono_debugger_insert_breakpoint
-mono_debugger_method_has_breakpoint
-mono_debugger_run_finally
-mono_declsec_flags_from_assembly
-mono_declsec_flags_from_class
-mono_declsec_flags_from_method
-mono_declsec_get_assembly_action
-mono_declsec_get_class_action
-mono_declsec_get_demands
-mono_declsec_get_inheritdemands_class
-mono_declsec_get_inheritdemands_method
-mono_declsec_get_linkdemands
-mono_declsec_get_method_action
-mono_digest_get_public_token
-mono_disasm_code
-mono_disasm_code_one
-mono_dl_fallback_register
-mono_dl_fallback_unregister
-mono_dl_open
-mono_dllmap_insert
-mono_domain_assembly_open
-mono_domain_create
-mono_domain_create_appdomain
-mono_domain_finalize
-mono_domain_foreach
-mono_domain_free
-mono_domain_from_appdomain
-mono_domain_get
-mono_domain_get_by_id
-mono_domain_get_friendly_name
-mono_domain_get_id
-mono_domain_has_type_resolve
-mono_domain_is_unloading
-mono_domain_owns_vtable_slot
-mono_domain_set
-mono_domain_set_config
-mono_domain_set_internal
-mono_domain_try_type_resolve
-mono_domain_try_unload
-mono_domain_unload
-mono_environment_exitcode_get
-mono_environment_exitcode_set
-mono_error_cleanup
-mono_error_get_error_code
-mono_error_get_message
-mono_error_init
-mono_error_init_flags
-mono_error_ok
-mono_escape_uri_string
-mono_event_get_add_method
-mono_event_get_flags
-mono_event_get_name
-mono_event_get_object
-mono_event_get_parent
-mono_event_get_raise_method
-mono_event_get_remove_method
-mono_exception_from_name
-mono_exception_from_name_domain
-mono_exception_from_name_msg
-mono_exception_from_name_two_strings
-mono_exception_from_token
-mono_exception_from_token_two_strings
-mono_exception_walk_trace
-mono_field_from_token
-mono_field_full_name
-mono_field_get_data
-mono_field_get_flags
-mono_field_get_name
-mono_field_get_object
-mono_field_get_offset
-mono_field_get_parent
-mono_field_get_type
-mono_field_get_value
-mono_field_get_value_object
-mono_field_set_value
-mono_field_static_get_value
-mono_field_static_set_value
-mono_file_map
-mono_file_map_close
-mono_file_map_fd
-mono_file_map_open
-mono_file_map_size
-mono_file_unmap
-mono_free
-mono_free_bstr
-mono_free_method
-mono_free_verify_list
-mono_g_hash_table_destroy
-mono_g_hash_table_find
-mono_g_hash_table_foreach
-mono_g_hash_table_foreach_remove
-mono_g_hash_table_insert
-mono_g_hash_table_lookup
-mono_g_hash_table_lookup_extended
-mono_g_hash_table_new_type
-mono_g_hash_table_print_stats
-mono_g_hash_table_remove
-mono_g_hash_table_replace
-mono_g_hash_table_size
-mono_gc_collect
-mono_gc_collection_count
-mono_gc_finalize_notify
-mono_gc_get_generation
-mono_gc_get_heap_size
-mono_gc_get_used_size
-mono_gc_invoke_finalizers
-mono_gc_max_generation
-mono_gc_pending_finalizers
-mono_gc_reference_queue_add
-mono_gc_reference_queue_free
-mono_gc_reference_queue_new
-mono_gc_register_finalizer_callbacks
-mono_gc_register_root
-mono_gc_toggleref_add
-mono_gc_toggleref_register_callback
-mono_gc_walk_heap
-mono_gc_wbarrier_arrayref_copy
-mono_gc_wbarrier_generic_nostore
-mono_gc_wbarrier_generic_store
-mono_gc_wbarrier_generic_store_atomic
-mono_gc_wbarrier_object_copy
-mono_gc_wbarrier_set_arrayref
-mono_gc_wbarrier_set_field
-mono_gc_wbarrier_value_copy
-mono_gchandle_free
-mono_gchandle_get_target
-mono_gchandle_new
-mono_gchandle_new_weakref
-mono_get_array_class
-mono_get_boolean_class
-mono_get_byte_class
-mono_get_char_class
-mono_get_config_dir
-mono_get_corlib
-mono_get_dbnull_object
-mono_get_delegate_begin_invoke
-mono_get_delegate_end_invoke
-mono_get_delegate_invoke
-mono_get_double_class
-mono_get_enum_class
-mono_get_exception_appdomain_unloaded
-mono_get_exception_argument
-mono_get_exception_argument_null
-mono_get_exception_argument_out_of_range
-mono_get_exception_arithmetic
-mono_get_exception_array_type_mismatch
-mono_get_exception_bad_image_format
-mono_get_exception_bad_image_format2
-mono_get_exception_cannot_unload_appdomain
-mono_get_exception_class
-mono_get_exception_divide_by_zero
-mono_get_exception_execution_engine
-mono_get_exception_field_access
-mono_get_exception_file_not_found
-mono_get_exception_file_not_found2
-mono_get_exception_index_out_of_range
-mono_get_exception_invalid_cast
-mono_get_exception_invalid_operation
-mono_get_exception_io
-mono_get_exception_method_access
-mono_get_exception_missing_field
-mono_get_exception_missing_method
-mono_get_exception_not_implemented
-mono_get_exception_not_supported
-mono_get_exception_null_reference
-mono_get_exception_out_of_memory
-mono_get_exception_overflow
-mono_get_exception_reflection_type_load
-mono_get_exception_runtime_wrapped
-mono_get_exception_security
-mono_get_exception_serialization
-mono_get_exception_stack_overflow
-mono_get_exception_synchronization_lock
-mono_get_exception_thread_abort
-mono_get_exception_thread_interrupted
-mono_get_exception_thread_state
-mono_get_exception_type_initialization
-mono_get_exception_type_load
-mono_get_inflated_method
-mono_get_int16_class
-mono_get_int32_class
-mono_get_int64_class
-mono_get_intptr_class
-mono_get_machine_config
-mono_get_method
-mono_get_method_constrained
-mono_get_method_full
-mono_get_object_class
-mono_get_root_domain
-mono_get_runtime_build_info
-mono_get_sbyte_class
-mono_get_single_class
-mono_get_string_class
-mono_get_thread_class
-mono_get_uint16_class
-mono_get_uint32_class
-mono_get_uint64_class
-mono_get_uintptr_class
-mono_get_void_class
-mono_guid_to_string
-mono_guid_to_string_minimal
-mono_hazard_pointer_get
-mono_image_add_to_name_cache
-mono_image_addref
-mono_image_close
-mono_image_ensure_section
-mono_image_ensure_section_idx
-mono_image_fixup_vtable
-mono_image_get_assembly
-mono_image_get_entry_point
-mono_image_get_filename
-mono_image_get_guid
-mono_image_get_name
-mono_image_get_public_key
-mono_image_get_resource
-mono_image_get_strong_name
-mono_image_get_table_info
-mono_image_get_table_rows
-mono_image_has_authenticode_entry
-mono_image_init
-mono_image_init_name_cache
-mono_image_is_dynamic
-mono_image_load_file_for_image
-mono_image_load_module
-mono_image_loaded
-mono_image_loaded_by_guid
-mono_image_loaded_by_guid_full
-mono_image_loaded_full
-mono_image_lookup_resource
-mono_image_open
-mono_image_open_from_data
-mono_image_open_from_data_full
-mono_image_open_from_data_with_name
-mono_image_open_full
-mono_image_rva_map
-mono_image_strerror
-mono_image_strong_name_position
-mono_images_cleanup
-mono_images_init
-mono_init
-mono_init_from_assembly
-mono_init_version
-mono_install_assembly_load_hook
-mono_install_assembly_postload_refonly_search_hook
-mono_install_assembly_postload_search_hook
-mono_install_assembly_preload_hook
-mono_install_assembly_refonly_preload_hook
-mono_install_assembly_refonly_search_hook
-mono_install_assembly_search_hook
-mono_install_ftnptr_eh_callback
-mono_install_load_aot_data_hook
-mono_install_runtime_cleanup
-mono_install_unhandled_exception_hook
-mono_is_debugger_attached
-mono_jit_cleanup
-mono_jit_exec
-mono_jit_info_get_code_size
-mono_jit_info_get_code_start
-mono_jit_info_get_method
-mono_jit_info_table_find
-mono_jit_init
-mono_jit_init_version
-mono_jit_parse_options
-mono_jit_set_aot_mode
-mono_jit_set_aot_only
-mono_jit_set_domain
-mono_jit_set_trace_options
-mono_jit_thread_attach
-mono_ldstr
-mono_ldtoken
-mono_lls_find
-mono_lls_get_hazardous_pointer_with_mask
-mono_lls_init
-mono_lls_insert
-mono_lls_remove
-mono_load_remote_field
-mono_load_remote_field_new
-mono_loader_register_module
-mono_lock_free_alloc
-mono_lock_free_allocator_check_consistency
-mono_lock_free_allocator_init_allocator
-mono_lock_free_allocator_init_size_class
-mono_lock_free_free
-mono_lock_free_queue_dequeue
-mono_lock_free_queue_enqueue
-mono_lock_free_queue_init
-mono_lock_free_queue_node_init
-mono_lock_free_queue_node_unpoison
-mono_locks_dump
-mono_lookup_icall_symbol
-mono_lookup_internal_call
-mono_lookup_pinvoke_call
-mono_main
-mono_marshal_string_to_utf16
-mono_md5_final
-mono_md5_get_digest
-mono_md5_get_digest_from_file
-mono_md5_init
-mono_md5_update
-mono_mem_account_register_counters
-mono_mem_account_type_name
-mono_mempool_alloc
-mono_mempool_alloc0
-mono_mempool_contains_addr
-mono_mempool_destroy
-mono_mempool_get_allocated
-mono_mempool_invalidate
-mono_mempool_new
-mono_mempool_new_size
-mono_mempool_stats
-mono_mempool_strdup
-mono_metadata_blob_heap
-mono_metadata_cleanup
-mono_metadata_compute_size
-mono_metadata_custom_attrs_from_index
-mono_metadata_declsec_from_index
-mono_metadata_decode_blob_size
-mono_metadata_decode_row
-mono_metadata_decode_row_col
-mono_metadata_decode_signed_value
-mono_metadata_decode_table_row
-mono_metadata_decode_table_row_col
-mono_metadata_decode_value
-mono_metadata_encode_value
-mono_metadata_events_from_typedef
-mono_metadata_field_info
-mono_metadata_field_info_with_mempool
-mono_metadata_free_array
-mono_metadata_free_inflated_signature
-mono_metadata_free_marshal_spec
-mono_metadata_free_method_signature
-mono_metadata_free_mh
-mono_metadata_free_type
-mono_metadata_generic_class_is_valuetype
-mono_metadata_get_constant_index
-mono_metadata_get_generic_param_row
-mono_metadata_get_inflated_signature
-mono_metadata_get_marshal_info
-mono_metadata_guid_heap
-mono_metadata_implmap_from_method
-mono_metadata_init
-mono_metadata_interfaces_from_typedef
-mono_metadata_load_generic_param_constraints_checked
-mono_metadata_load_generic_params
-mono_metadata_locate
-mono_metadata_locate_token
-mono_metadata_methods_from_event
-mono_metadata_methods_from_property
-mono_metadata_nested_in_typedef
-mono_metadata_nesting_typedef
-mono_metadata_packing_from_typedef
-mono_metadata_parse_array
-mono_metadata_parse_custom_mod
-mono_metadata_parse_field_type
-mono_metadata_parse_marshal_spec
-mono_metadata_parse_method_signature
-mono_metadata_parse_method_signature_full
-mono_metadata_parse_mh
-mono_metadata_parse_mh_full
-mono_metadata_parse_param
-mono_metadata_parse_signature
-mono_metadata_parse_type
-mono_metadata_parse_typedef_or_ref
-mono_metadata_properties_from_typedef
-mono_metadata_signature_alloc
-mono_metadata_signature_dup
-mono_metadata_signature_equal
-mono_metadata_string_heap
-mono_metadata_token_from_dor
-mono_metadata_translate_token_index
-mono_metadata_type_equal
-mono_metadata_type_hash
-mono_metadata_typedef_from_field
-mono_metadata_typedef_from_method
-mono_metadata_user_string
-mono_method_body_get_object
-mono_method_can_access_field
-mono_method_can_access_method
-mono_method_desc_free
-mono_method_desc_from_method
-mono_method_desc_full_match
-mono_method_desc_match
-mono_method_desc_new
-mono_method_desc_search_in_class
-mono_method_desc_search_in_image
-mono_method_full_name
-mono_method_get_class
-mono_method_get_context
-mono_method_get_flags
-mono_method_get_generic_container
-mono_method_get_header
-mono_method_get_header_checked
-mono_method_get_index
-mono_method_get_last_managed
-mono_method_get_marshal_info
-mono_method_get_name
-mono_method_get_object
-mono_method_get_param_names
-mono_method_get_param_token
-mono_method_get_signature
-mono_method_get_signature_full
-mono_method_get_token
-mono_method_get_unmanaged_thunk
-mono_method_has_marshal_info
-mono_method_header_get_clauses
-mono_method_header_get_code
-mono_method_header_get_locals
-mono_method_header_get_num_clauses
-mono_method_print_code
-mono_method_signature
-mono_method_signature_checked
-mono_method_verify
-mono_mlist_alloc
-mono_mlist_append
-mono_mlist_get_data
-mono_mlist_last
-mono_mlist_length
-mono_mlist_next
-mono_mlist_prepend
-mono_mlist_remove_item
-mono_mlist_set_data
-mono_mlist_set_next
-mono_module_file_get_object
-mono_module_get_object
-mono_monitor_enter
-mono_monitor_enter_v4
-mono_monitor_exit
-mono_monitor_try_enter
-mono_mprotect
-mono_native_getrootdir
-mono_native_thread_create
-mono_native_thread_id_equals
-mono_native_thread_id_get
-mono_native_thread_join
-mono_native_thread_set_name
-mono_object_castclass_mbyref
-mono_object_clone
-mono_object_describe
-mono_object_describe_fields
-mono_object_get_class
-mono_object_get_domain
-mono_object_get_size
-mono_object_get_virtual_method
-mono_object_hash
-mono_object_isinst
-mono_object_isinst_mbyref
-mono_object_new
-mono_object_new_alloc_specific
-mono_object_new_fast
-mono_object_new_from_token
-mono_object_new_specific
-mono_object_to_string
-mono_object_unbox
-mono_opcode_name
-mono_opcode_value
-mono_pagesize
-mono_param_get_objects
-mono_parse_default_optimizations
-mono_parse_env_options
-mono_parse_options_from
-mono_path_canonicalize
-mono_path_resolve_symlinks
-mono_pe_file_open
-mono_perfcounter_foreach
-mono_perfcounters_init
-mono_personality
-mono_pmip
-mono_poll
-mono_print_method_from_ip
-mono_print_thread_dump
-mono_print_thread_dump_from_ctx
-mono_print_unhandled_exception
-mono_profiler_call_context_free_buffer
-mono_profiler_call_context_get_argument
-mono_profiler_call_context_get_local
-mono_profiler_call_context_get_result
-mono_profiler_call_context_get_this
-mono_profiler_create
-mono_profiler_enable_allocations
-mono_profiler_enable_call_context_introspection
-mono_profiler_enable_sampling
-mono_profiler_get_coverage_data
-mono_profiler_get_sample_mode
-mono_profiler_install
-mono_profiler_install_gc
-mono_profiler_install_jit_end
-mono_profiler_install_thread
-mono_profiler_load
-mono_profiler_set_assembly_loaded_callback
-mono_profiler_set_assembly_loading_callback
-mono_profiler_set_assembly_unloaded_callback
-mono_profiler_set_assembly_unloading_callback
-mono_profiler_set_call_instrumentation_filter_callback
-mono_profiler_set_class_failed_callback
-mono_profiler_set_class_loaded_callback
-mono_profiler_set_class_loading_callback
-mono_profiler_set_context_loaded_callback
-mono_profiler_set_context_unloaded_callback
-mono_profiler_set_coverage_filter_callback
-mono_profiler_set_domain_loaded_callback
-mono_profiler_set_domain_loading_callback
-mono_profiler_set_domain_name_callback
-mono_profiler_set_domain_unloaded_callback
-mono_profiler_set_domain_unloading_callback
-mono_profiler_set_events
-mono_profiler_set_exception_clause_callback
-mono_profiler_set_exception_throw_callback
-mono_profiler_set_gc_allocation_callback
-mono_profiler_set_gc_event_callback
-mono_profiler_set_gc_finalized_callback
-mono_profiler_set_gc_finalized_object_callback
-mono_profiler_set_gc_finalizing_callback
-mono_profiler_set_gc_finalizing_object_callback
-mono_profiler_set_gc_handle_created_callback
-mono_profiler_set_gc_handle_deleted_callback
-mono_profiler_set_gc_moves_callback
-mono_profiler_set_gc_resize_callback
-mono_profiler_set_gc_roots_callback
-mono_profiler_set_image_failed_callback
-mono_profiler_set_image_loaded_callback
-mono_profiler_set_image_loading_callback
-mono_profiler_set_image_unloaded_callback
-mono_profiler_set_image_unloading_callback
-mono_profiler_set_iomap_report_callback
-mono_profiler_set_jit_begin_callback
-mono_profiler_set_jit_chunk_created_callback
-mono_profiler_set_jit_chunk_destroyed_callback
-mono_profiler_set_jit_code_buffer_callback
-mono_profiler_set_jit_done_callback
-mono_profiler_set_jit_failed_callback
-mono_profiler_set_method_begin_invoke_callback
-mono_profiler_set_method_end_invoke_callback
-mono_profiler_set_method_enter_callback
-mono_profiler_set_method_exception_leave_callback
-mono_profiler_set_method_free_callback
-mono_profiler_set_method_leave_callback
-mono_profiler_set_monitor_acquired_callback
-mono_profiler_set_monitor_contention_callback
-mono_profiler_set_monitor_failed_callback
-mono_profiler_set_runtime_initialized_callback
-mono_profiler_set_runtime_shutdown_begin_callback
-mono_profiler_set_runtime_shutdown_end_callback
-mono_profiler_set_sample_hit_callback
-mono_profiler_set_sample_mode
-mono_profiler_set_thread_name_callback
-mono_profiler_set_thread_started_callback
-mono_profiler_set_thread_stopped_callback
-mono_property_get_flags
-mono_property_get_get_method
-mono_property_get_name
-mono_property_get_object
-mono_property_get_parent
-mono_property_get_set_method
-mono_property_get_value
-mono_property_hash_destroy
-mono_property_hash_insert
-mono_property_hash_lookup
-mono_property_hash_new
-mono_property_hash_remove_object
-mono_property_set_value
-mono_ptr_class_get
-mono_raise_exception
-mono_reflection_assembly_get_assembly
-mono_reflection_free_type_info
-mono_reflection_get_custom_attrs
-mono_reflection_get_custom_attrs_blob
-mono_reflection_get_custom_attrs_by_type
-mono_reflection_get_custom_attrs_data
-mono_reflection_get_custom_attrs_info
-mono_reflection_get_token
-mono_reflection_get_type
-mono_reflection_parse_type
-mono_reflection_type_from_name
-mono_reflection_type_get_type
-mono_register_bundled_assemblies
-mono_register_config_for_assembly
-mono_register_machine_config
-mono_register_symfile_for_assembly
-mono_runtime_class_init
-mono_runtime_cleanup
-mono_runtime_delegate_invoke
-mono_runtime_exec_main
-mono_runtime_exec_managed_code
-mono_runtime_get_main_args
-mono_runtime_init
-mono_runtime_invoke
-mono_runtime_invoke_array
-mono_runtime_is_shutting_down
-mono_runtime_object_init
-mono_runtime_quit
-mono_runtime_resource_check_limit
-mono_runtime_resource_limit
-mono_runtime_resource_set_callback
-mono_runtime_run_main
-mono_runtime_set_main_args
-mono_runtime_set_shutting_down
-mono_security_core_clr_get_options
-mono_security_core_clr_require_elevated_permissions
-mono_security_core_clr_set_options
-mono_security_enable_core_clr
-mono_security_set_core_clr_platform_callback
-mono_set_allocator_vtable
-mono_set_assemblies_path
-mono_set_break_policy
-mono_set_config_dir
-mono_set_crash_chaining
-mono_set_defaults
-mono_set_dirs
-mono_set_is_debugger_attached
-mono_set_rootdir
-mono_set_signal_chaining
-mono_sha1_final
-mono_sha1_get_digest
-mono_sha1_get_digest_from_file
-mono_sha1_init
-mono_sha1_update
-mono_shared_area
-mono_shared_area_for_pid
-mono_shared_area_instances
-mono_shared_area_remove
-mono_shared_area_unload
-mono_signature_explicit_this
-mono_signature_full_name
-mono_signature_get_call_conv
-mono_signature_get_desc
-mono_signature_get_param_count
-mono_signature_get_params
-mono_signature_get_return_type
-mono_signature_hash
-mono_signature_is_instance
-mono_signature_param_is_out
-mono_signature_vararg_start
-mono_signbit_double
-mono_signbit_float
-mono_stack_walk
-mono_stack_walk_async_safe
-mono_stack_walk_no_il
-mono_store_remote_field
-mono_store_remote_field_new
-mono_string_chars
-mono_string_empty
-mono_string_empty_wrapper
-mono_string_equal
-mono_string_from_bstr
-mono_string_from_utf16
-mono_string_from_utf32
-mono_string_hash
-mono_string_intern
-mono_string_is_interned
-mono_string_length
-mono_string_new
-mono_string_new_len
-mono_string_new_size
-mono_string_new_utf16
-mono_string_new_utf32
-mono_string_new_wrapper
-mono_string_to_utf16
-mono_string_to_utf32
-mono_string_to_utf8
-mono_string_to_utf8_checked
-mono_stringify_assembly_name
-mono_table_info_get_rows
-mono_thread_attach
-mono_thread_cleanup
-mono_thread_create
-mono_thread_current
-mono_thread_detach
-mono_thread_detach_if_exiting
-mono_thread_exit
-mono_thread_get_main
-mono_thread_get_managed_id
-mono_thread_get_name_utf8
-mono_thread_get_undeniable_exception
-mono_thread_hazardous_queue_free
-mono_thread_hazardous_try_free
-mono_thread_hazardous_try_free_all
-mono_thread_info_detach
-mono_thread_info_get_small_id
-mono_thread_info_register_small_id
-mono_thread_info_yield
-mono_thread_init
-mono_thread_is_foreign
-mono_thread_manage
-mono_thread_new_init
-mono_thread_set_main
-mono_thread_set_manage_callback
-mono_thread_stop
-mono_threads_assert_gc_safe_region
-mono_threads_assert_gc_unsafe_region
-mono_threads_attach_coop
-mono_threads_attach_tools_thread
-mono_threads_detach_coop
-mono_threads_enter_gc_safe_region
-mono_threads_enter_gc_safe_region_unbalanced
-mono_threads_enter_gc_unsafe_region
-mono_threads_enter_gc_unsafe_region_unbalanced
-mono_threads_exit_gc_safe_region
-mono_threads_exit_gc_safe_region_unbalanced
-mono_threads_exit_gc_unsafe_region
-mono_threads_exit_gc_unsafe_region_unbalanced
-mono_threads_get_default_stacksize
-mono_threads_request_thread_dump
-mono_threads_set_default_stacksize
-mono_trace_set_level_string
-mono_trace_set_log_handler
-mono_trace_set_mask_string
-mono_trace_set_print_handler
-mono_trace_set_printerr_handler
-mono_tracev_inner
-mono_type_create_from_typespec
-mono_type_full_name
-mono_type_generic_inst_is_valuetype
-mono_type_get_array_type
-mono_type_get_class
-mono_type_get_desc
-mono_type_get_modifiers
-mono_type_get_name
-mono_type_get_object
-mono_type_get_ptr_type
-mono_type_get_signature
-mono_type_get_type
-mono_type_get_underlying_type
-mono_type_is_byref
-mono_type_is_pointer
-mono_type_is_primitive
-mono_type_is_reference
-mono_type_is_struct
-mono_type_is_valid_enum_basetype
-mono_type_is_void
-mono_type_size
-mono_type_stack_size
-mono_type_to_unmanaged
-mono_unhandled_exception
-mono_unicode_from_external
-mono_unicode_to_external
-mono_upgrade_remote_class_wrapper
-mono_utf8_from_external
-mono_utf8_validate_and_len
-mono_utf8_validate_and_len_with_bounds
-mono_valloc
-mono_valloc_aligned
-mono_valloc_granule
-mono_value_box
-mono_value_copy
-mono_value_copy_array
-mono_value_describe_fields
-mono_verify_corlib
-mono_vfree
-mono_vtable_get_static_field_data
-mono_win32_compat_CopyMemory
-mono_win32_compat_FillMemory
-mono_win32_compat_MoveMemory
-mono_win32_compat_ZeroMemory
index 5b77ed2c27501c4567552db9489985e20a5a6ec7..c67bad9f407c63166e4a540fa443655d00508800 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup Label="UserMacros">
     <!-- Change this to custom build tree location to enable out of source tree builds, example c:/mono-build/ -->
@@ -42,7 +42,6 @@
     <SGEN_DEFINES>HAVE_SGEN_GC;HAVE_MOVING_COLLECTOR;HAVE_WRITE_BARRIERS</SGEN_DEFINES>
     <GC_DEFINES>$(SGEN_DEFINES)</GC_DEFINES>
     <GC_LIB>libgcmonosgen.lib</GC_LIB>
-    <MONO_DEF>monosgen.def</MONO_DEF>
     <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>
   </PropertyGroup>
     <BOEHM_DEFINES>HAVE_BOEHM_GC</BOEHM_DEFINES>
     <GC_DEFINES>$(BOEHM_DEFINES)</GC_DEFINES>
     <GC_LIB>libgc.lib</GC_LIB>
-    <MONO_DEF>mono.def</MONO_DEF>
     <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>
   </PropertyGroup>
   <PropertyGroup Label="Static-Mono-Libraries">
-    <MONO_RUNTIME_LIBS>libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;$(GC_LIB)</MONO_RUNTIME_LIBS>
-    <MONO_STATIC_LIBMONO_LIB>libmono-static$(MONO_TARGET_SUFFIX).lib;$(MONO_RUNTIME_LIBS)</MONO_STATIC_LIBMONO_LIB>
+    <MONO_RUNTIME_LIBS>libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmini$(MONO_TARGET_SUFFIX).lib;$(GC_LIB)</MONO_RUNTIME_LIBS>
+    <MONO_STATIC_LIBMONO_LIB>libmono-static$(MONO_TARGET_SUFFIX).lib</MONO_STATIC_LIBMONO_LIB>
     <MONO_DYNAMIC_LIBMONO_LIB>mono-2.0$(MONO_TARGET_SUFFIX).lib</MONO_DYNAMIC_LIBMONO_LIB>
   </PropertyGroup>
   <PropertyGroup Label="Static-libmono-Library" Condition="$(MONO_USE_STATIC_LIBMONO)=='true'">
     <MONO_LIBMONO_LIB>$(MONO_STATIC_LIBMONO_LIB)</MONO_LIBMONO_LIB>
   </PropertyGroup>
   <PropertyGroup Label="Dynamic-libmono-Library" Condition="$(MONO_USE_STATIC_LIBMONO)!='true'">
-    <MONO_LIBMONO_LIB>$(MONO_DYNAMIC_LIBMONO_LIB)</MONO_LIBMONO_LIB>
+    <MONO_LIBMONO_LIB>eglib.lib;$(MONO_DYNAMIC_LIBMONO_LIB)</MONO_LIBMONO_LIB>
   </PropertyGroup>
   <PropertyGroup Label="MonoProfiler">
     <VTUNE_INCLUDE_DIR>$(ProgramFiles)/Intel/VTune Amplifier XE 2013/include</VTUNE_INCLUDE_DIR>
       <AdditionalDependencies>Mswsock.lib;ws2_32.lib;ole32.lib;oleaut32.lib;psapi.lib;version.lib;advapi32.lib;winmm.lib;kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <AdditionalLibraryDirectories>$(MONO_BUILD_DIR_PREFIX)$(Platform)/lib/$(Configuration)</AdditionalLibraryDirectories>
     </Link>
+    <Lib>
+      <AdditionalLibraryDirectories>$(MONO_BUILD_DIR_PREFIX)$(Platform)/lib/$(Configuration)</AdditionalLibraryDirectories>
+    </Lib>
   </ItemDefinitionGroup>
-</Project>
+</Project>
\ No newline at end of file
index 4a8ecd3326e2a094e6fad1b47285b8ff37476af3..ac103fb6ea69bd2a7810aac5a8a936fea817e644 100644 (file)
@@ -16,34 +16,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genmdesc", "genmdesc.vcxpro
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmono", "libmono.vcxproj", "{CB0D9E92-293C-439C-9AC7-C5F59B6E0771}"\r
-       ProjectSection(ProjectDependencies) = postProject\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3} = {EB56000B-C80B-4E8B-908D-D84D31B517D3}\r
-               {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739} = {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4} = {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149} = {B7098DFA-31E6-4006-8A15-1C9A4E925149}\r
-       EndProjectSection\r
-EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test-invoke", "test-invoke.vcxproj", "{C5639B3F-288A-4A4B-A4A5-C0D85834221D}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "teste", "teste.vcxproj", "{6FDE4E5E-57D0-432F-A987-6C226A7827E4}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mono", "mono.vcxproj", "{A0EDDCD9-940F-432C-A28F-7EF322437D79}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
@@ -55,28 +42,24 @@ EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "monodis", "monodis.vcxproj", "{37F50E5A-4818-46CF-81FE-4BB06DE5D42E}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pedump", "pedump.vcxproj", "{84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "monograph", "monograph.vcxproj", "{CA2A69D6-3B9D-45A5-8BF7-4E242E683122}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test-metadata", "test-metadata.vcxproj", "{C2EB666E-9146-4B7A-85F6-25F9EA313770}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
@@ -88,14 +71,12 @@ EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_eglib", "test_eglib.vcxproj", "{80A0620A-3478-4E1A-AA7C-0D2387B892AB}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtest", "libtest.vcxproj", "{5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
@@ -115,7 +96,6 @@ EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "profiler-vtune", "profiler-vtune.vcxproj", "{F51017F9-B7FB-4F87-B7B5-12799D965783}"\r
        ProjectSection(ProjectDependencies) = postProject\r
                {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
        EndProjectSection\r
 EndProject\r
@@ -147,7 +127,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build-all", "build-all.vcxp
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E} = {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4} = {6FDE4E5E-57D0-432F-A987-6C226A7827E4}\r
                {C2EB666E-9146-4B7A-85F6-25F9EA313770} = {C2EB666E-9146-4B7A-85F6-25F9EA313770}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739} = {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4} = {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122} = {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}\r
@@ -212,6 +191,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mono-nunit-test", "mono-nun
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmonodac", "libmonodac.vcxproj", "{DC50997D-8A0D-4EB6-849B-9D7FBC39CE53}"\r
 EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmini", "libmini.vcxproj", "{88D2EB79-592D-45F8-B849-AE021C1D983A}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmono-dynamic", "libmono-dynamic.vcxproj", "{675F4175-FFB1-480D-AD36-F397578844D4}"\r
+EndProject\r
 Global\r
        GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
                Debug|Win32 = Debug|Win32\r
@@ -228,14 +211,6 @@ Global
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release|Win32.Build.0 = Release|Win32\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release|x64.ActiveCfg = Release|x64\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release|x64.Build.0 = Release|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug|Win32.ActiveCfg = Debug|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug|Win32.Build.0 = Debug|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug|x64.ActiveCfg = Debug|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug|x64.Build.0 = Debug|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release|Win32.ActiveCfg = Release|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release|Win32.Build.0 = Release|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release|x64.ActiveCfg = Release|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release|x64.Build.0 = Release|x64\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Debug|Win32.Build.0 = Debug|Win32\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Debug|x64.ActiveCfg = Debug|x64\r
@@ -420,13 +395,28 @@ Global
                {DC50997D-8A0D-4EB6-849B-9D7FBC39CE53}.Release|Win32.ActiveCfg = Release|x64\r
                {DC50997D-8A0D-4EB6-849B-9D7FBC39CE53}.Release|x64.ActiveCfg = Release|x64\r
                {DC50997D-8A0D-4EB6-849B-9D7FBC39CE53}.Release|x64.Build.0 = Release|x64\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Debug|Win32.Build.0 = Debug|Win32\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Debug|x64.ActiveCfg = Debug|x64\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Debug|x64.Build.0 = Debug|x64\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Release|Win32.ActiveCfg = Release|Win32\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Release|Win32.Build.0 = Release|Win32\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Release|x64.ActiveCfg = Release|x64\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A}.Release|x64.Build.0 = Release|x64\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Debug|Win32.Build.0 = Debug|Win32\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Debug|x64.ActiveCfg = Debug|x64\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Debug|x64.Build.0 = Debug|x64\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Release|Win32.ActiveCfg = Release|Win32\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Release|Win32.Build.0 = Release|Win32\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Release|x64.ActiveCfg = Release|x64\r
+               {675F4175-FFB1-480D-AD36-F397578844D4}.Release|x64.Build.0 = Release|x64\r
        EndGlobalSection\r
        GlobalSection(SolutionProperties) = preSolution\r
                HideSolutionNode = FALSE\r
        EndGlobalSection\r
        GlobalSection(NestedProjects) = preSolution\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {DE3617B4-17A8-4E5F-A00F-BA43D956881F}\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D} = {5FE09AA5-C3C9-45EA-A323-36A11B653CEC}\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4} = {5FE09AA5-C3C9-45EA-A323-36A11B653CEC}\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79} = {DE3617B4-17A8-4E5F-A00F-BA43D956881F}\r
@@ -457,11 +447,13 @@ Global
                {7BECCFA0-28A0-4995-9856-558560F720E6} = {A0068765-334B-414C-8E21-8376CD2EC9F6}\r
                {0046B994-40A8-4C64-AC9D-429DC9177B54} = {A0068765-334B-414C-8E21-8376CD2EC9F6}\r
                {DC50997D-8A0D-4EB6-849B-9D7FBC39CE53} = {DE3617B4-17A8-4E5F-A00F-BA43D956881F}\r
+               {88D2EB79-592D-45F8-B849-AE021C1D983A} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
+               {675F4175-FFB1-480D-AD36-F397578844D4} = {DE3617B4-17A8-4E5F-A00F-BA43D956881F}\r
        EndGlobalSection\r
        GlobalSection(ExtensibilityGlobals) = postSolution\r
-               AMDCaPersistentConfig = Debug|Win32\r
-               AMDCaPersistentStartup = mono\r
                AMDCaProjectFile = C:\Users\Owner\Development\monogit\mono\msvc\CodeAnalyst\mono.caw\r
+               AMDCaPersistentStartup = mono\r
+               AMDCaPersistentConfig = Debug|Win32\r
        EndGlobalSection\r
        GlobalSection(DPCodeReviewSolutionGUID) = preSolution\r
                DPCodeReviewSolutionGUID = {00000000-0000-0000-0000-000000000000}\r
index f277f33258b4902a3d14f6249a026c24501ee912..0c3eba152b2f103c6e1cb4a9536d71333c4d90c6 100644 (file)
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-    <LinkIncremental>false</LinkIncremental>\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
-    <LinkIncremental>false</LinkIncremental>\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level3</WarningLevel>\r
     </ClCompile>\r
     <ProjectReference />\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level3</WarningLevel>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <ShowProgress>\r
       </ShowProgress>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_LIBGC_SOURCE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index 7f14c93115fca10fa728f62d78fb86f5afdaa9de..9f0bb69efb9528ed970e44f11e764277d6b398e2 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_RUNTIME_LIBS);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <StringPooling>true</StringPooling>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_RUNTIME_LIBS);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_RUNTIME_LIBS);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <ShowProgress>NotSet</ShowProgress>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <StringPooling>true</StringPooling>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_RUNTIME_LIBS);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClInclude Include="..\mono\dis\util.h" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgc.vcxproj">\r
-      <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgcmonosgen.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-static.vcxproj">\r
+      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0772}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index ce3658dd42cb5e0e5e8e514ac538c4dd5e076eca..022665893f8cc7978b55e2682690d005926f6477 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <AdditionalDependencies>eglib.lib;$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/monoposixhelper.targets b/msvc/monoposixhelper.targets
new file mode 100644 (file)
index 0000000..6d5d9c1
--- /dev/null
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <ClCompile Include="$(MonoSourceLocation)\support\adler32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\compress.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\crc32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\deflate.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\errno.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\fcntl.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\infback.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\inffast.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\inflate.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\inftrees.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\map.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\ioapi.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\iowin32.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\minizip.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\unzip.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\zip.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\signal.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\stdio.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\stdlib.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\string.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\sys-stat.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\trees.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\uncompr.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\zlib-helper.c" />
+    <ClCompile Include="$(MonoSourceLocation)\support\zutil.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(MonoSourceLocation)\support\inffast.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\crc32.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\deflate.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\inffixed.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\inflate.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\inftrees.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\map.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\crypt.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\ioapi.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\iowin32.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\unzip.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\zip.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\mph.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\trees.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\zconf.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\zlib.h" />
+    <ClInclude Include="$(MonoSourceLocation)\support\zutil.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="monoposixhelper.def" />
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/monoposixhelper.targets.filters b/msvc/monoposixhelper.targets.filters
new file mode 100644 (file)
index 0000000..e82ea14
--- /dev/null
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <ClCompile Include="$(MonoSourceLocation)\support\adler32.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\compress.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\crc32.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\deflate.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\errno.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\infback.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\inffast.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\inflate.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\inftrees.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\map.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\signal.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\stdio.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\stdlib.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\string.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\trees.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\uncompr.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\zlib-helper.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\zutil.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\iowin32.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\minizip.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\unzip.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\zip.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\minizip\ioapi.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\fcntl.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+    <ClCompile Include="$(MonoSourceLocation)\support\sys-stat.c">
+      <Filter>Source Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(MonoSourceLocation)\support\crc32.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\deflate.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\inffast.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\inffixed.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\inflate.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\inftrees.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\map.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\mph.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\trees.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\zconf.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\zutil.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\crypt.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\unzip.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\iowin32.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\zip.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\zlib.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+    <ClInclude Include="$(MonoSourceLocation)\support\minizip\ioapi.h">
+      <Filter>Header Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="monoposixhelper.def">
+      <Filter>Resource Files$(MonoPosixHelperFilterSubFolder)</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup Condition="'$(MonoPosixHelperFilterSubFolder)'!=''">
+    <Filter Include="Header Files$(MonoPosixHelperFilterSubFolder)">
+      <UniqueIdentifier>{BFBB15BB-C843-4A56-8909-B832B33FED9B}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Resource Files$(MonoPosixHelperFilterSubFolder)">
+      <UniqueIdentifier>{C024824E-DFC4-4A50-AA57-AA7F1B4B014E}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files$(MonoPosixHelperFilterSubFolder)">
+      <UniqueIdentifier>{E91A4E9A-3F86-4412-BBA5-8C2F3C243845}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+</Project>
\ No newline at end of file
index 8ea0b2ddbb4e44ac7e0513920b9921606f4aa7be..9d026fc835be228ac5ef7185e26d39eff0b08faf 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">MonoPosixHelper</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MonoPosixHelper</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">MonoPosixHelper</TargetName>\r
       <Optimization>Disabled</Optimization>\r
       <PreprocessorDefinitions>_DEBUG;__i386__;TARGET_X86;_WIN32_WINNT=0x0600;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;HAVE_CONFIG_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_DIR)/support;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
     <ProjectReference>\r
       <Optimization>Disabled</Optimization>\r
       <PreprocessorDefinitions>_DEBUG;__x86_64__;_WIN32_WINNT=0x0600;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;HAVE_CONFIG_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_DIR)/support;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <Link>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>NDEBUG;__i386__;TARGET_X86;i386;_WIN32_WINNT=0x0600;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;HAVE_CONFIG_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_DIR)/support;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
     <ProjectReference>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>NDEBUG;__x86_64__;_WIN32_WINNT=0x0600;WIN64;_WIN64;WIN32;_WIN32;__WIN32__;_WINDOWS;WINDOWS;HOST_WIN32;TARGET_WIN32;_CRT_SECURE_NO_DEPRECATE;HAVE_CONFIG_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(MONO_DIR)/support;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
-      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
   </ItemDefinitionGroup>\r
-  <ItemGroup>\r
-    <ClCompile Include="..\support\adler32.c" />\r
-    <ClCompile Include="..\support\compress.c" />\r
-    <ClCompile Include="..\support\crc32.c" />\r
-    <ClCompile Include="..\support\deflate.c" />\r
-    <ClCompile Include="..\support\errno.c" />\r
-    <ClCompile Include="..\support\fcntl.c" />\r
-    <ClCompile Include="..\support\infback.c" />\r
-    <ClCompile Include="..\support\inffast.c" />\r
-    <ClCompile Include="..\support\inflate.c" />\r
-    <ClCompile Include="..\support\inftrees.c" />\r
-    <ClCompile Include="..\support\map.c" />\r
-    <ClCompile Include="..\support\minizip\ioapi.c" />\r
-    <ClCompile Include="..\support\minizip\iowin32.c" />\r
-    <ClCompile Include="..\support\minizip\minizip.c" />\r
-    <ClCompile Include="..\support\minizip\unzip.c" />\r
-    <ClCompile Include="..\support\minizip\zip.c" />\r
-    <ClCompile Include="..\support\signal.c" />\r
-    <ClCompile Include="..\support\stdio.c" />\r
-    <ClCompile Include="..\support\stdlib.c" />\r
-    <ClCompile Include="..\support\string.c" />\r
-    <ClCompile Include="..\support\sys-stat.c" />\r
-    <ClCompile Include="..\support\trees.c" />\r
-    <ClCompile Include="..\support\uncompr.c" />\r
-    <ClCompile Include="..\support\zlib-helper.c" />\r
-    <ClCompile Include="..\support\zutil.c" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\support\inffast.h" />\r
-    <ClInclude Include="..\support\crc32.h" />\r
-    <ClInclude Include="..\support\deflate.h" />\r
-    <ClInclude Include="..\support\inffixed.h" />\r
-    <ClInclude Include="..\support\inflate.h" />\r
-    <ClInclude Include="..\support\inftrees.h" />\r
-    <ClInclude Include="..\support\map.h" />\r
-    <ClInclude Include="..\support\minizip\crypt.h" />\r
-    <ClInclude Include="..\support\minizip\ioapi.h" />\r
-    <ClInclude Include="..\support\minizip\iowin32.h" />\r
-    <ClInclude Include="..\support\minizip\unzip.h" />\r
-    <ClInclude Include="..\support\minizip\zip.h" />\r
-    <ClInclude Include="..\support\mph.h" />\r
-    <ClInclude Include="..\support\trees.h" />\r
-    <ClInclude Include="..\support\zconf.h" />\r
-    <ClInclude Include="..\support\zlib.h" />\r
-    <ClInclude Include="..\support\zutil.h" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="monoposixhelper.def" />\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
+  <Import Project="monoposixhelper.targets" />\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
index 9ca88289700e1c08316cc82c51967137fc1bd48b..9d1aeac6764113d3668fe6d24c6ce0f4c286c9eb 100644 (file)
@@ -1,135 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <ItemGroup>\r
-    <ClCompile Include="..\support\adler32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\compress.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\crc32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\deflate.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\errno.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\infback.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\inffast.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\inflate.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\inftrees.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\map.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\signal.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\stdio.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\stdlib.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\string.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\trees.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\uncompr.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\zlib-helper.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\zutil.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\minizip\iowin32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\minizip\minizip.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\minizip\unzip.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\minizip\zip.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\minizip\ioapi.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\fcntl.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\support\sys-stat.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ClInclude Include="..\support\crc32.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\deflate.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\inffast.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\inffixed.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\inflate.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\inftrees.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\map.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\mph.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\trees.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\zconf.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\zutil.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\minizip\crypt.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\minizip\unzip.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\minizip\iowin32.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\minizip\zip.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\zlib.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-    <ClInclude Include="..\support\minizip\ioapi.h">\r
-      <Filter>Header Files</Filter>\r
-    </ClInclude>\r
-  </ItemGroup>\r
+  <Import Project="monoposixhelper.targets.filters" />\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
       <UniqueIdentifier>{45dae598-72bc-4d0e-9cba-004f84c718c0}</UniqueIdentifier>\r
       <UniqueIdentifier>{2835d7d3-cd1c-4f3c-8783-d2413b0b1ae2}</UniqueIdentifier>\r
     </Filter>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="monoposixhelper.def">\r
-      <Filter>Resource Files</Filter>\r
-    </None>\r
-  </ItemGroup>\r
 </Project>
\ No newline at end of file
diff --git a/msvc/monosgen.def b/msvc/monosgen.def
deleted file mode 100644 (file)
index 5e64857..0000000
+++ /dev/null
@@ -1,987 +0,0 @@
-; file generated by create-windef.pl
-EXPORTS
-MonoFixupCorEE
-mono_add_internal_call
-mono_aot_register_module
-mono_array_addr_with_size
-mono_array_class_get
-mono_array_clone
-mono_array_element_size
-mono_array_length
-mono_array_new
-mono_array_new_full
-mono_array_new_specific
-mono_assemblies_cleanup
-mono_assemblies_init
-mono_assembly_addref
-mono_assembly_close
-mono_assembly_fill_assembly_name
-mono_assembly_foreach
-mono_assembly_get_assemblyref
-mono_assembly_get_image
-mono_assembly_get_main
-mono_assembly_get_name
-mono_assembly_get_object
-mono_assembly_getrootdir
-mono_assembly_invoke_load_hook
-mono_assembly_invoke_search_hook
-mono_assembly_load
-mono_assembly_load_from
-mono_assembly_load_from_full
-mono_assembly_load_full
-mono_assembly_load_module
-mono_assembly_load_module_checked
-mono_assembly_load_reference
-mono_assembly_load_references
-mono_assembly_load_with_partial_name
-mono_assembly_loaded
-mono_assembly_loaded_full
-mono_assembly_name_free
-mono_assembly_name_get_culture
-mono_assembly_name_get_name
-mono_assembly_name_get_pubkeytoken
-mono_assembly_name_get_version
-mono_assembly_name_new
-mono_assembly_names_equal
-mono_assembly_open
-mono_assembly_open_full
-mono_assembly_set_main
-mono_assembly_setrootdir
-mono_bitset_alloc_size
-mono_bitset_clear
-mono_bitset_clear_all
-mono_bitset_clone
-mono_bitset_copyto
-mono_bitset_count
-mono_bitset_equal
-mono_bitset_find_first
-mono_bitset_find_first_unset
-mono_bitset_find_last
-mono_bitset_find_start
-mono_bitset_foreach
-mono_bitset_free
-mono_bitset_intersection
-mono_bitset_intersection_2
-mono_bitset_invert
-mono_bitset_mem_new
-mono_bitset_new
-mono_bitset_set
-mono_bitset_set_all
-mono_bitset_size
-mono_bitset_sub
-mono_bitset_test
-mono_bitset_test_bulk
-mono_bitset_union
-mono_bounded_array_class_get
-mono_breakpoint_clean_code
-mono_check_corlib_version
-mono_class_array_element_size
-mono_class_data_size
-mono_class_describe_statics
-mono_class_enum_basetype
-mono_class_from_generic_parameter
-mono_class_from_mono_type
-mono_class_from_name
-mono_class_from_name_case
-mono_class_from_typeref
-mono_class_from_typeref_checked
-mono_class_get
-mono_class_get_byref_type
-mono_class_get_context
-mono_class_get_element_class
-mono_class_get_event_token
-mono_class_get_events
-mono_class_get_field
-mono_class_get_field_from_name
-mono_class_get_field_token
-mono_class_get_fields
-mono_class_get_flags
-mono_class_get_full
-mono_class_get_image
-mono_class_get_interfaces
-mono_class_get_method_from_name
-mono_class_get_method_from_name_flags
-mono_class_get_methods
-mono_class_get_name
-mono_class_get_namespace
-mono_class_get_nested_types
-mono_class_get_nesting_type
-mono_class_get_parent
-mono_class_get_properties
-mono_class_get_property_from_name
-mono_class_get_property_token
-mono_class_get_rank
-mono_class_get_type
-mono_class_get_type_token
-mono_class_implements_interface
-mono_class_inflate_generic_method
-mono_class_inflate_generic_type
-mono_class_init
-mono_class_instance_size
-mono_class_interface_offset
-mono_class_is_assignable_from
-mono_class_is_delegate
-mono_class_is_enum
-mono_class_is_subclass_of
-mono_class_is_valid_enum
-mono_class_is_valuetype
-mono_class_min_align
-mono_class_name_from_token
-mono_class_num_events
-mono_class_num_fields
-mono_class_num_methods
-mono_class_num_properties
-mono_class_value_size
-mono_class_vtable
-mono_cli_rva_image_map
-mono_code_manager_cleanup
-mono_code_manager_commit
-mono_code_manager_destroy
-mono_code_manager_init
-mono_code_manager_install_callbacks
-mono_code_manager_invalidate
-mono_code_manager_new
-mono_code_manager_new_dynamic
-mono_code_manager_reserve
-mono_code_manager_reserve_align
-mono_code_manager_set_read_only
-mono_code_manager_size
-mono_compile_method
-mono_conc_hashtable_destroy
-mono_conc_hashtable_foreach
-mono_conc_hashtable_foreach_steal
-mono_conc_hashtable_insert
-mono_conc_hashtable_lookup
-mono_conc_hashtable_new
-mono_conc_hashtable_new_full
-mono_conc_hashtable_remove
-mono_config_cleanup
-mono_config_for_assembly
-mono_config_get_cpu
-mono_config_get_os
-mono_config_get_wordsize
-mono_config_is_server_mode
-mono_config_parse
-mono_config_parse_memory
-mono_config_set_server_mode
-mono_config_string_for_assembly_file
-mono_context_get
-mono_context_get_desc
-mono_context_get_domain_id
-mono_context_get_id
-mono_context_init
-mono_context_set
-mono_counter_get_name
-mono_counter_get_section
-mono_counter_get_size
-mono_counter_get_type
-mono_counter_get_unit
-mono_counter_get_variance
-mono_counters_cleanup
-mono_counters_dump
-mono_counters_enable
-mono_counters_foreach
-mono_counters_init
-mono_counters_on_register
-mono_counters_register
-mono_counters_register_with_size
-mono_counters_sample
-mono_cpu_count
-mono_custom_attrs_construct
-mono_custom_attrs_free
-mono_custom_attrs_from_assembly
-mono_custom_attrs_from_class
-mono_custom_attrs_from_event
-mono_custom_attrs_from_field
-mono_custom_attrs_from_index
-mono_custom_attrs_from_method
-mono_custom_attrs_from_param
-mono_custom_attrs_from_property
-mono_custom_attrs_get_attr
-mono_custom_attrs_has_attr
-mono_debug_add_delegate_trampoline
-mono_debug_add_method
-mono_debug_cleanup
-mono_debug_close_image
-mono_debug_close_mono_symbol_file
-mono_debug_domain_create
-mono_debug_domain_unload
-mono_debug_enabled
-mono_debug_find_method
-mono_debug_free_locals
-mono_debug_free_method_jit_info
-mono_debug_free_source_location
-mono_debug_il_offset_from_address
-mono_debug_init
-mono_debug_lookup_locals
-mono_debug_lookup_method
-mono_debug_lookup_method_addresses
-mono_debug_lookup_source_location
-mono_debug_open_image_from_memory
-mono_debug_open_mono_symbols
-mono_debug_print_stack_frame
-mono_debug_print_vars
-mono_debug_remove_method
-mono_debug_symfile_free_location
-mono_debug_symfile_is_loaded
-mono_debug_symfile_lookup_locals
-mono_debug_symfile_lookup_location
-mono_debug_symfile_lookup_method
-mono_debugger_agent_parse_options
-mono_debugger_agent_register_transport
-mono_debugger_agent_transport_handshake
-mono_debugger_insert_breakpoint
-mono_debugger_method_has_breakpoint
-mono_debugger_run_finally
-mono_declsec_flags_from_assembly
-mono_declsec_flags_from_class
-mono_declsec_flags_from_method
-mono_declsec_get_assembly_action
-mono_declsec_get_class_action
-mono_declsec_get_demands
-mono_declsec_get_inheritdemands_class
-mono_declsec_get_inheritdemands_method
-mono_declsec_get_linkdemands
-mono_declsec_get_method_action
-mono_digest_get_public_token
-mono_disasm_code
-mono_disasm_code_one
-mono_dl_fallback_register
-mono_dl_fallback_unregister
-mono_dl_open
-mono_dllmap_insert
-mono_domain_assembly_open
-mono_domain_create
-mono_domain_create_appdomain
-mono_domain_finalize
-mono_domain_foreach
-mono_domain_free
-mono_domain_from_appdomain
-mono_domain_get
-mono_domain_get_by_id
-mono_domain_get_friendly_name
-mono_domain_get_id
-mono_domain_has_type_resolve
-mono_domain_is_unloading
-mono_domain_owns_vtable_slot
-mono_domain_set
-mono_domain_set_config
-mono_domain_set_internal
-mono_domain_try_type_resolve
-mono_domain_try_unload
-mono_domain_unload
-mono_environment_exitcode_get
-mono_environment_exitcode_set
-mono_error_cleanup
-mono_error_get_error_code
-mono_error_get_message
-mono_error_init
-mono_error_init_flags
-mono_error_ok
-mono_escape_uri_string
-mono_event_get_add_method
-mono_event_get_flags
-mono_event_get_name
-mono_event_get_object
-mono_event_get_parent
-mono_event_get_raise_method
-mono_event_get_remove_method
-mono_exception_from_name
-mono_exception_from_name_domain
-mono_exception_from_name_msg
-mono_exception_from_name_two_strings
-mono_exception_from_token
-mono_exception_from_token_two_strings
-mono_exception_walk_trace
-mono_field_from_token
-mono_field_full_name
-mono_field_get_data
-mono_field_get_flags
-mono_field_get_name
-mono_field_get_object
-mono_field_get_offset
-mono_field_get_parent
-mono_field_get_type
-mono_field_get_value
-mono_field_get_value_object
-mono_field_set_value
-mono_field_static_get_value
-mono_field_static_set_value
-mono_file_map
-mono_file_map_close
-mono_file_map_fd
-mono_file_map_open
-mono_file_map_size
-mono_file_unmap
-mono_free
-mono_free_bstr
-mono_free_method
-mono_free_verify_list
-mono_g_hash_table_destroy
-mono_g_hash_table_find
-mono_g_hash_table_foreach
-mono_g_hash_table_foreach_remove
-mono_g_hash_table_insert
-mono_g_hash_table_lookup
-mono_g_hash_table_lookup_extended
-mono_g_hash_table_new_type
-mono_g_hash_table_print_stats
-mono_g_hash_table_remove
-mono_g_hash_table_replace
-mono_g_hash_table_size
-mono_gc_collect
-mono_gc_collection_count
-mono_gc_finalize_notify
-mono_gc_get_generation
-mono_gc_get_heap_size
-mono_gc_get_used_size
-mono_gc_invoke_finalizers
-mono_gc_max_generation
-mono_gc_pending_finalizers
-mono_gc_reference_queue_add
-mono_gc_reference_queue_free
-mono_gc_reference_queue_new
-mono_gc_register_bridge_callbacks
-mono_gc_register_finalizer_callbacks
-mono_gc_register_root
-mono_gc_toggleref_add
-mono_gc_toggleref_register_callback
-mono_gc_wait_for_bridge_processing
-mono_gc_walk_heap
-mono_gc_wbarrier_arrayref_copy
-mono_gc_wbarrier_generic_nostore
-mono_gc_wbarrier_generic_store
-mono_gc_wbarrier_generic_store_atomic
-mono_gc_wbarrier_object_copy
-mono_gc_wbarrier_set_arrayref
-mono_gc_wbarrier_set_field
-mono_gc_wbarrier_value_copy
-mono_gchandle_free
-mono_gchandle_get_target
-mono_gchandle_new
-mono_gchandle_new_weakref
-mono_get_array_class
-mono_get_boolean_class
-mono_get_byte_class
-mono_get_char_class
-mono_get_config_dir
-mono_get_corlib
-mono_get_dbnull_object
-mono_get_delegate_begin_invoke
-mono_get_delegate_end_invoke
-mono_get_delegate_invoke
-mono_get_double_class
-mono_get_enum_class
-mono_get_exception_appdomain_unloaded
-mono_get_exception_argument
-mono_get_exception_argument_null
-mono_get_exception_argument_out_of_range
-mono_get_exception_arithmetic
-mono_get_exception_array_type_mismatch
-mono_get_exception_bad_image_format
-mono_get_exception_bad_image_format2
-mono_get_exception_cannot_unload_appdomain
-mono_get_exception_class
-mono_get_exception_divide_by_zero
-mono_get_exception_execution_engine
-mono_get_exception_field_access
-mono_get_exception_file_not_found
-mono_get_exception_file_not_found2
-mono_get_exception_index_out_of_range
-mono_get_exception_invalid_cast
-mono_get_exception_invalid_operation
-mono_get_exception_io
-mono_get_exception_method_access
-mono_get_exception_missing_field
-mono_get_exception_missing_method
-mono_get_exception_not_implemented
-mono_get_exception_not_supported
-mono_get_exception_null_reference
-mono_get_exception_out_of_memory
-mono_get_exception_overflow
-mono_get_exception_reflection_type_load
-mono_get_exception_runtime_wrapped
-mono_get_exception_security
-mono_get_exception_serialization
-mono_get_exception_stack_overflow
-mono_get_exception_synchronization_lock
-mono_get_exception_thread_abort
-mono_get_exception_thread_interrupted
-mono_get_exception_thread_state
-mono_get_exception_type_initialization
-mono_get_exception_type_load
-mono_get_inflated_method
-mono_get_int16_class
-mono_get_int32_class
-mono_get_int64_class
-mono_get_intptr_class
-mono_get_machine_config
-mono_get_method
-mono_get_method_constrained
-mono_get_method_full
-mono_get_object_class
-mono_get_root_domain
-mono_get_runtime_build_info
-mono_get_sbyte_class
-mono_get_single_class
-mono_get_string_class
-mono_get_thread_class
-mono_get_uint16_class
-mono_get_uint32_class
-mono_get_uint64_class
-mono_get_uintptr_class
-mono_get_void_class
-mono_guid_to_string
-mono_guid_to_string_minimal
-mono_hazard_pointer_get
-mono_image_add_to_name_cache
-mono_image_addref
-mono_image_close
-mono_image_ensure_section
-mono_image_ensure_section_idx
-mono_image_fixup_vtable
-mono_image_get_assembly
-mono_image_get_entry_point
-mono_image_get_filename
-mono_image_get_guid
-mono_image_get_name
-mono_image_get_public_key
-mono_image_get_resource
-mono_image_get_strong_name
-mono_image_get_table_info
-mono_image_get_table_rows
-mono_image_has_authenticode_entry
-mono_image_init
-mono_image_init_name_cache
-mono_image_is_dynamic
-mono_image_load_file_for_image
-mono_image_load_module
-mono_image_loaded
-mono_image_loaded_by_guid
-mono_image_loaded_by_guid_full
-mono_image_loaded_full
-mono_image_lookup_resource
-mono_image_open
-mono_image_open_from_data
-mono_image_open_from_data_full
-mono_image_open_from_data_with_name
-mono_image_open_full
-mono_image_rva_map
-mono_image_strerror
-mono_image_strong_name_position
-mono_images_cleanup
-mono_images_init
-mono_init
-mono_init_from_assembly
-mono_init_version
-mono_install_assembly_load_hook
-mono_install_assembly_postload_refonly_search_hook
-mono_install_assembly_postload_search_hook
-mono_install_assembly_preload_hook
-mono_install_assembly_refonly_preload_hook
-mono_install_assembly_refonly_search_hook
-mono_install_assembly_search_hook
-mono_install_ftnptr_eh_callback
-mono_install_load_aot_data_hook
-mono_install_runtime_cleanup
-mono_install_unhandled_exception_hook
-mono_is_debugger_attached
-mono_jit_cleanup
-mono_jit_exec
-mono_jit_info_get_code_size
-mono_jit_info_get_code_start
-mono_jit_info_get_method
-mono_jit_info_table_find
-mono_jit_init
-mono_jit_init_version
-mono_jit_parse_options
-mono_jit_set_aot_mode
-mono_jit_set_aot_only
-mono_jit_set_domain
-mono_jit_set_trace_options
-mono_jit_thread_attach
-mono_ldstr
-mono_ldtoken
-mono_lls_find
-mono_lls_get_hazardous_pointer_with_mask
-mono_lls_init
-mono_lls_insert
-mono_lls_remove
-mono_load_remote_field
-mono_load_remote_field_new
-mono_loader_register_module
-mono_lock_free_alloc
-mono_lock_free_allocator_check_consistency
-mono_lock_free_allocator_init_allocator
-mono_lock_free_allocator_init_size_class
-mono_lock_free_free
-mono_lock_free_queue_dequeue
-mono_lock_free_queue_enqueue
-mono_lock_free_queue_init
-mono_lock_free_queue_node_init
-mono_lock_free_queue_node_unpoison
-mono_locks_dump
-mono_lookup_icall_symbol
-mono_lookup_internal_call
-mono_lookup_pinvoke_call
-mono_main
-mono_marshal_string_to_utf16
-mono_md5_final
-mono_md5_get_digest
-mono_md5_get_digest_from_file
-mono_md5_init
-mono_md5_update
-mono_mem_account_register_counters
-mono_mem_account_type_name
-mono_mempool_alloc
-mono_mempool_alloc0
-mono_mempool_contains_addr
-mono_mempool_destroy
-mono_mempool_get_allocated
-mono_mempool_invalidate
-mono_mempool_new
-mono_mempool_new_size
-mono_mempool_stats
-mono_mempool_strdup
-mono_metadata_blob_heap
-mono_metadata_cleanup
-mono_metadata_compute_size
-mono_metadata_custom_attrs_from_index
-mono_metadata_declsec_from_index
-mono_metadata_decode_blob_size
-mono_metadata_decode_row
-mono_metadata_decode_row_col
-mono_metadata_decode_signed_value
-mono_metadata_decode_table_row
-mono_metadata_decode_table_row_col
-mono_metadata_decode_value
-mono_metadata_encode_value
-mono_metadata_events_from_typedef
-mono_metadata_field_info
-mono_metadata_field_info_with_mempool
-mono_metadata_free_array
-mono_metadata_free_inflated_signature
-mono_metadata_free_marshal_spec
-mono_metadata_free_method_signature
-mono_metadata_free_mh
-mono_metadata_free_type
-mono_metadata_generic_class_is_valuetype
-mono_metadata_get_constant_index
-mono_metadata_get_generic_param_row
-mono_metadata_get_inflated_signature
-mono_metadata_get_marshal_info
-mono_metadata_guid_heap
-mono_metadata_implmap_from_method
-mono_metadata_init
-mono_metadata_interfaces_from_typedef
-mono_metadata_load_generic_param_constraints_checked
-mono_metadata_load_generic_params
-mono_metadata_locate
-mono_metadata_locate_token
-mono_metadata_methods_from_event
-mono_metadata_methods_from_property
-mono_metadata_nested_in_typedef
-mono_metadata_nesting_typedef
-mono_metadata_packing_from_typedef
-mono_metadata_parse_array
-mono_metadata_parse_custom_mod
-mono_metadata_parse_field_type
-mono_metadata_parse_marshal_spec
-mono_metadata_parse_method_signature
-mono_metadata_parse_method_signature_full
-mono_metadata_parse_mh
-mono_metadata_parse_mh_full
-mono_metadata_parse_param
-mono_metadata_parse_signature
-mono_metadata_parse_type
-mono_metadata_parse_typedef_or_ref
-mono_metadata_properties_from_typedef
-mono_metadata_signature_alloc
-mono_metadata_signature_dup
-mono_metadata_signature_equal
-mono_metadata_string_heap
-mono_metadata_token_from_dor
-mono_metadata_translate_token_index
-mono_metadata_type_equal
-mono_metadata_type_hash
-mono_metadata_typedef_from_field
-mono_metadata_typedef_from_method
-mono_metadata_user_string
-mono_method_body_get_object
-mono_method_can_access_field
-mono_method_can_access_method
-mono_method_desc_free
-mono_method_desc_from_method
-mono_method_desc_full_match
-mono_method_desc_match
-mono_method_desc_new
-mono_method_desc_search_in_class
-mono_method_desc_search_in_image
-mono_method_full_name
-mono_method_get_class
-mono_method_get_context
-mono_method_get_flags
-mono_method_get_generic_container
-mono_method_get_header
-mono_method_get_header_checked
-mono_method_get_index
-mono_method_get_last_managed
-mono_method_get_marshal_info
-mono_method_get_name
-mono_method_get_object
-mono_method_get_param_names
-mono_method_get_param_token
-mono_method_get_signature
-mono_method_get_signature_full
-mono_method_get_token
-mono_method_get_unmanaged_thunk
-mono_method_has_marshal_info
-mono_method_header_get_clauses
-mono_method_header_get_code
-mono_method_header_get_locals
-mono_method_header_get_num_clauses
-mono_method_print_code
-mono_method_signature
-mono_method_signature_checked
-mono_method_verify
-mono_mlist_alloc
-mono_mlist_append
-mono_mlist_get_data
-mono_mlist_last
-mono_mlist_length
-mono_mlist_next
-mono_mlist_prepend
-mono_mlist_remove_item
-mono_mlist_set_data
-mono_mlist_set_next
-mono_module_file_get_object
-mono_module_get_object
-mono_monitor_enter
-mono_monitor_enter_v4
-mono_monitor_exit
-mono_monitor_try_enter
-mono_mprotect
-mono_native_getrootdir
-mono_native_thread_create
-mono_native_thread_id_equals
-mono_native_thread_id_get
-mono_native_thread_join
-mono_native_thread_set_name
-mono_object_castclass_mbyref
-mono_object_clone
-mono_object_describe
-mono_object_describe_fields
-mono_object_get_class
-mono_object_get_domain
-mono_object_get_size
-mono_object_get_virtual_method
-mono_object_hash
-mono_object_isinst
-mono_object_isinst_mbyref
-mono_object_new
-mono_object_new_alloc_specific
-mono_object_new_fast
-mono_object_new_from_token
-mono_object_new_specific
-mono_object_to_string
-mono_object_unbox
-mono_opcode_name
-mono_opcode_value
-mono_pagesize
-mono_param_get_objects
-mono_parse_default_optimizations
-mono_parse_env_options
-mono_parse_options_from
-mono_path_canonicalize
-mono_path_resolve_symlinks
-mono_pe_file_open
-mono_perfcounter_foreach
-mono_perfcounters_init
-mono_personality
-mono_pmip
-mono_poll
-mono_print_method_from_ip
-mono_print_thread_dump
-mono_print_thread_dump_from_ctx
-mono_print_unhandled_exception
-mono_profiler_call_context_free_buffer
-mono_profiler_call_context_get_argument
-mono_profiler_call_context_get_local
-mono_profiler_call_context_get_result
-mono_profiler_call_context_get_this
-mono_profiler_create
-mono_profiler_enable_allocations
-mono_profiler_enable_call_context_introspection
-mono_profiler_enable_sampling
-mono_profiler_get_coverage_data
-mono_profiler_get_sample_mode
-mono_profiler_install
-mono_profiler_install_gc
-mono_profiler_install_jit_end
-mono_profiler_install_thread
-mono_profiler_load
-mono_profiler_set_assembly_loaded_callback
-mono_profiler_set_assembly_loading_callback
-mono_profiler_set_assembly_unloaded_callback
-mono_profiler_set_assembly_unloading_callback
-mono_profiler_set_call_instrumentation_filter_callback
-mono_profiler_set_class_failed_callback
-mono_profiler_set_class_loaded_callback
-mono_profiler_set_class_loading_callback
-mono_profiler_set_context_loaded_callback
-mono_profiler_set_context_unloaded_callback
-mono_profiler_set_coverage_filter_callback
-mono_profiler_set_domain_loaded_callback
-mono_profiler_set_domain_loading_callback
-mono_profiler_set_domain_name_callback
-mono_profiler_set_domain_unloaded_callback
-mono_profiler_set_domain_unloading_callback
-mono_profiler_set_events
-mono_profiler_set_exception_clause_callback
-mono_profiler_set_exception_throw_callback
-mono_profiler_set_gc_allocation_callback
-mono_profiler_set_gc_event_callback
-mono_profiler_set_gc_finalized_callback
-mono_profiler_set_gc_finalized_object_callback
-mono_profiler_set_gc_finalizing_callback
-mono_profiler_set_gc_finalizing_object_callback
-mono_profiler_set_gc_handle_created_callback
-mono_profiler_set_gc_handle_deleted_callback
-mono_profiler_set_gc_moves_callback
-mono_profiler_set_gc_resize_callback
-mono_profiler_set_gc_roots_callback
-mono_profiler_set_image_failed_callback
-mono_profiler_set_image_loaded_callback
-mono_profiler_set_image_loading_callback
-mono_profiler_set_image_unloaded_callback
-mono_profiler_set_image_unloading_callback
-mono_profiler_set_iomap_report_callback
-mono_profiler_set_jit_begin_callback
-mono_profiler_set_jit_chunk_created_callback
-mono_profiler_set_jit_chunk_destroyed_callback
-mono_profiler_set_jit_code_buffer_callback
-mono_profiler_set_jit_done_callback
-mono_profiler_set_jit_failed_callback
-mono_profiler_set_method_begin_invoke_callback
-mono_profiler_set_method_end_invoke_callback
-mono_profiler_set_method_enter_callback
-mono_profiler_set_method_exception_leave_callback
-mono_profiler_set_method_free_callback
-mono_profiler_set_method_leave_callback
-mono_profiler_set_monitor_acquired_callback
-mono_profiler_set_monitor_contention_callback
-mono_profiler_set_monitor_failed_callback
-mono_profiler_set_runtime_initialized_callback
-mono_profiler_set_runtime_shutdown_begin_callback
-mono_profiler_set_runtime_shutdown_end_callback
-mono_profiler_set_sample_hit_callback
-mono_profiler_set_sample_mode
-mono_profiler_set_thread_name_callback
-mono_profiler_set_thread_started_callback
-mono_profiler_set_thread_stopped_callback
-mono_property_get_flags
-mono_property_get_get_method
-mono_property_get_name
-mono_property_get_object
-mono_property_get_parent
-mono_property_get_set_method
-mono_property_get_value
-mono_property_hash_destroy
-mono_property_hash_insert
-mono_property_hash_lookup
-mono_property_hash_new
-mono_property_hash_remove_object
-mono_property_set_value
-mono_ptr_class_get
-mono_raise_exception
-mono_reflection_assembly_get_assembly
-mono_reflection_free_type_info
-mono_reflection_get_custom_attrs
-mono_reflection_get_custom_attrs_blob
-mono_reflection_get_custom_attrs_by_type
-mono_reflection_get_custom_attrs_data
-mono_reflection_get_custom_attrs_info
-mono_reflection_get_token
-mono_reflection_get_type
-mono_reflection_parse_type
-mono_reflection_type_from_name
-mono_reflection_type_get_type
-mono_register_bundled_assemblies
-mono_register_config_for_assembly
-mono_register_machine_config
-mono_register_symfile_for_assembly
-mono_runtime_class_init
-mono_runtime_cleanup
-mono_runtime_delegate_invoke
-mono_runtime_exec_main
-mono_runtime_exec_managed_code
-mono_runtime_get_main_args
-mono_runtime_init
-mono_runtime_invoke
-mono_runtime_invoke_array
-mono_runtime_is_shutting_down
-mono_runtime_object_init
-mono_runtime_quit
-mono_runtime_resource_check_limit
-mono_runtime_resource_limit
-mono_runtime_resource_set_callback
-mono_runtime_run_main
-mono_runtime_set_main_args
-mono_runtime_set_shutting_down
-mono_security_core_clr_get_options
-mono_security_core_clr_require_elevated_permissions
-mono_security_core_clr_set_options
-mono_security_enable_core_clr
-mono_security_set_core_clr_platform_callback
-mono_set_allocator_vtable
-mono_set_assemblies_path
-mono_set_break_policy
-mono_set_config_dir
-mono_set_crash_chaining
-mono_set_defaults
-mono_set_dirs
-mono_set_is_debugger_attached
-mono_set_rootdir
-mono_set_signal_chaining
-mono_sha1_final
-mono_sha1_get_digest
-mono_sha1_get_digest_from_file
-mono_sha1_init
-mono_sha1_update
-mono_shared_area
-mono_shared_area_for_pid
-mono_shared_area_instances
-mono_shared_area_remove
-mono_shared_area_unload
-mono_signature_explicit_this
-mono_signature_full_name
-mono_signature_get_call_conv
-mono_signature_get_desc
-mono_signature_get_param_count
-mono_signature_get_params
-mono_signature_get_return_type
-mono_signature_hash
-mono_signature_is_instance
-mono_signature_param_is_out
-mono_signature_vararg_start
-mono_signbit_double
-mono_signbit_float
-mono_stack_walk
-mono_stack_walk_async_safe
-mono_stack_walk_no_il
-mono_store_remote_field
-mono_store_remote_field_new
-mono_string_chars
-mono_string_empty
-mono_string_empty_wrapper
-mono_string_equal
-mono_string_from_bstr
-mono_string_from_utf16
-mono_string_from_utf32
-mono_string_hash
-mono_string_intern
-mono_string_is_interned
-mono_string_length
-mono_string_new
-mono_string_new_len
-mono_string_new_size
-mono_string_new_utf16
-mono_string_new_utf32
-mono_string_new_wrapper
-mono_string_to_utf16
-mono_string_to_utf32
-mono_string_to_utf8
-mono_string_to_utf8_checked
-mono_stringify_assembly_name
-mono_table_info_get_rows
-mono_thread_attach
-mono_thread_cleanup
-mono_thread_create
-mono_thread_current
-mono_thread_detach
-mono_thread_detach_if_exiting
-mono_thread_exit
-mono_thread_get_main
-mono_thread_get_managed_id
-mono_thread_get_name_utf8
-mono_thread_get_undeniable_exception
-mono_thread_hazardous_queue_free
-mono_thread_hazardous_try_free
-mono_thread_hazardous_try_free_all
-mono_thread_info_detach
-mono_thread_info_get_small_id
-mono_thread_info_register_small_id
-mono_thread_info_yield
-mono_thread_init
-mono_thread_is_foreign
-mono_thread_manage
-mono_thread_new_init
-mono_thread_set_main
-mono_thread_set_manage_callback
-mono_thread_stop
-mono_threads_assert_gc_safe_region
-mono_threads_assert_gc_unsafe_region
-mono_threads_attach_coop
-mono_threads_attach_tools_thread
-mono_threads_detach_coop
-mono_threads_enter_gc_safe_region
-mono_threads_enter_gc_safe_region_unbalanced
-mono_threads_enter_gc_unsafe_region
-mono_threads_enter_gc_unsafe_region_unbalanced
-mono_threads_exit_gc_safe_region
-mono_threads_exit_gc_safe_region_unbalanced
-mono_threads_exit_gc_unsafe_region
-mono_threads_exit_gc_unsafe_region_unbalanced
-mono_threads_get_default_stacksize
-mono_threads_request_thread_dump
-mono_threads_set_default_stacksize
-mono_trace_set_level_string
-mono_trace_set_log_handler
-mono_trace_set_mask_string
-mono_trace_set_print_handler
-mono_trace_set_printerr_handler
-mono_tracev_inner
-mono_type_create_from_typespec
-mono_type_full_name
-mono_type_generic_inst_is_valuetype
-mono_type_get_array_type
-mono_type_get_class
-mono_type_get_desc
-mono_type_get_modifiers
-mono_type_get_name
-mono_type_get_object
-mono_type_get_ptr_type
-mono_type_get_signature
-mono_type_get_type
-mono_type_get_underlying_type
-mono_type_is_byref
-mono_type_is_pointer
-mono_type_is_primitive
-mono_type_is_reference
-mono_type_is_struct
-mono_type_is_valid_enum_basetype
-mono_type_is_void
-mono_type_size
-mono_type_stack_size
-mono_type_to_unmanaged
-mono_unhandled_exception
-mono_unicode_from_external
-mono_unicode_to_external
-mono_upgrade_remote_class_wrapper
-mono_utf8_from_external
-mono_utf8_validate_and_len
-mono_utf8_validate_and_len_with_bounds
-mono_valloc
-mono_valloc_aligned
-mono_valloc_granule
-mono_value_box
-mono_value_copy
-mono_value_copy_array
-mono_value_describe_fields
-mono_verify_corlib
-mono_vfree
-mono_vtable_get_static_field_data
-mono_win32_compat_CopyMemory
-mono_win32_compat_FillMemory
-mono_win32_compat_MoveMemory
-mono_win32_compat_ZeroMemory
index fded8b5ffe6fd80e8ce98e63f991baabc2e5c38b..d491a5bd266435b47caddac0fc6f91175e8c2131 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;GC_NOT_DLL;GC_GCJ_SUPPORT;GC_WIN32_THREADS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4018;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;_DEBUG;_CONSOLE;_WINDOWS;__WIN32__;HOST_WIN32;TARGET_WIN32;__i386__;TARGET_X86;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4018;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_STATIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
-    <ClCompile Include="..\mono\metadata\appdomain.c" />\r
-    <ClCompile Include="..\mono\metadata\assembly.c" />\r
-    <ClCompile Include="..\mono\metadata\boehm-gc.c" />\r
-    <ClCompile Include="..\mono\metadata\class.c" />\r
-    <ClCompile Include="..\mono\metadata\console-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\domain.c" />\r
-    <ClCompile Include="..\mono\metadata\environment.c" />\r
-    <ClCompile Include="..\mono\metadata\w32file-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\w32file.c" />\r
-    <ClCompile Include="..\mono\metadata\w32error-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\filewatcher.c" />\r
-    <ClCompile Include="..\mono\metadata\gc.c" />\r
-    <ClCompile Include="..\mono\metadata\icall-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\icall.c" />\r
-    <ClCompile Include="..\mono\metadata\image.c" />\r
-    <ClCompile Include="..\mono\metadata\loader.c" />\r
-    <ClCompile Include="..\mono\metadata\locales.c" />\r
-    <ClCompile Include="..\mono\metadata\marshal-windows.c" />\r
-    <ClCompile Include="..\mono\metadata\marshal.c" />\r
-    <ClCompile Include="..\mono\metadata\metadata.c" />\r
-    <ClCompile Include="..\mono\metadata\monitor.c" />\r
-    <ClCompile Include="..\mono\metadata\mono-config.c" />\r
-    <ClCompile Include="..\mono\utils\mono-dl.c" />\r
-    <ClCompile Include="..\mono\metadata\object.c" />\r
-    <ClCompile Include="..\mono\metadata\w32process.c" />\r
-    <ClCompile Include="..\mono\metadata\w32process-win32.c" />\r
-    <ClCompile Include="..\mono\metadata\profiler.c" />\r
-    <ClCompile Include="..\mono\metadata\rand.c" />\r
-    <ClCompile Include="..\mono\metadata\reflection.c" />\r
-    <ClCompile Include="..\mono\metadata\security-manager.c" />\r
-    <ClCompile Include="..\mono\metadata\w32socket.c" />\r
-    <ClCompile Include="..\mono\metadata\string-icalls.c" />\r
-    <ClCompile Include="..\mono\metadata\sysmath.c" />\r
-    <ClCompile Include="..\mono\metadata\threads.c" />\r
     <ClCompile Include="..\tools\pedump\pedump.c" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgc.vcxproj">\r
-      <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgcmonosgen.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-static.vcxproj">\r
+      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0772}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index 5b01ceb1a56351c4e3e9c3904203ecd8f42654d4..5503d0afa8cf033bf6d724a0f2b34a8f7bde78af 100644 (file)
@@ -1,111 +1,9 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup>\r
-    <ClCompile Include="..\mono\metadata\appdomain.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\assembly.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\boehm-gc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\class.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\console-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\domain.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\environment.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32file.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\filewatcher.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\gc.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\icall.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\image.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\loader.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\locales.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\marshal.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\metadata.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\monitor.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\mono-config.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\utils\mono-dl.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\object.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32process.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32process-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\profiler.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\rand.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\reflection.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\security-manager.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32socket.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\string-icalls.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\sysmath.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\threads.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
     <ClCompile Include="..\tools\pedump\pedump.c">\r
       <Filter>Source Files</Filter>\r
     </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\marshal-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\icall-windows.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32file-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
-    <ClCompile Include="..\mono\metadata\w32error-win32.c">\r
-      <Filter>Source Files</Filter>\r
-    </ClCompile>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Filter Include="Header Files">\r
index 73ace6bdc745252f4ad5e7e95453ee1d26a31d55..c16a2c304961e809ff40de32b6cc9a2193c71fa7 100644 (file)
@@ -77,8 +77,6 @@
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">mono-profiler-vtune$(MONO_TARGET_SUFFIX)</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-profiler-vtune$(MONO_TARGET_SUFFIX)</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-profiler-vtune$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MaxSpeed</Optimization>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);$(VTUNE_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
-      <AdditionalDependencies>$(MONO_LIBMONO_LIB);$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
     <ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <ClCompile>\r
-      <Optimization>MaxSpeed</Optimization>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);$(VTUNE_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <Link>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
-      <AdditionalDependencies>$(MONO_LIBMONO_LIB);$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
     <ProjectReference>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);$(VTUNE_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>$(MONO_LIBMONO_LIB);$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
     </Link>\r
     <ProjectReference>\r
       <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_LIBGC_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);$(VTUNE_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>$(MONO_LIBMONO_LIB);$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>$(MONO_LIBMONO_LIB);jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Windows</SubSystem>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
     </Link>\r
     <ProjectReference>\r
     <None Include="mono-profiler-vtune.def" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgc.vcxproj">\r
-      <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libgcmonosgen.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
index f258fb673c65cf75f2bcee1ed5179608c7baaa2a..b753a04e32fc5d6a5350eaa11e45b7d270bcf954 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
+      <SubSystem>Console</SubSystem>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <SubSystem>Console</SubSystem>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <SubSystem>Console</SubSystem>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClCompile Include="..\samples\embed\test-invoke.c" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index 810f82f82fa93894eddc640d2de9388582f9c53b..6b6c771d3dd0828ae636c824e595272c93faf574 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
     <ClCompile Include="..\samples\embed\test-metadata.c" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index 826b9b62633eb7d630f1af39741e32e3714afd49..7ee098d0174ac30498dcc2ba35928e20a5ed7d58 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR)%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBTEST_EGLIB_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <TreatWarningAsError>false</TreatWarningAsError>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <OptimizeReferences>false</OptimizeReferences>\r
-      <EnableCOMDATFolding>false</EnableCOMDATFolding>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR)%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EGLIB_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <TreatWarningAsError>false</TreatWarningAsError>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
     </Link>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR)%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBTEST_EGLIB_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <TreatWarningAsError>false</TreatWarningAsError>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <OptimizeReferences>false</OptimizeReferences>\r
-      <EnableCOMDATFolding>false</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR)%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EGLIB_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
-      <TreatWarningAsError>false</TreatWarningAsError>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
     </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
index 5fac6d8ac2349d1007bca1c36a2efdf3b8259c31..12be4cfb64fe297bafef26ffd99ae24a43c52b59 100644 (file)
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
+      <Optimization>Disabled</Optimization>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)</ObjectFileName>\r
-      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
+      <Optimization>Disabled</Optimization>\r
+      <MinimalRebuild>true</MinimalRebuild>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     <Link>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <StringPooling>true</StringPooling>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
       <AdditionalDependencies>$(MONO_DYNAMIC_LIBMONO_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
     <ClCompile Include="..\samples\embed\teste.c" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <ProjectReference Include="eglib.vcxproj">\r
-      <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmono.vcxproj">\r
-      <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
+    <ProjectReference Include="libmono-dynamic.vcxproj">\r
+      <Project>{675f4175-ffb1-480d-ad36-f397578844d4}</Project>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
index 9b504614ac0ddbb600f3f989782fae4e8b7acfc5..3ad4c05c8008d4f72cccf410e22233ea2e7dd7a0 100755 (executable)
@@ -100,7 +100,7 @@ class MonoReleaseProfile(DarwinProfile):
         self.env.set('PANGO_SYSCONFDIR', '%{staged_prefix}/etc')
         self.env.set('PANGO_LIBDIR', '%{staged_prefix}/lib')
         # self.env.set ('MONO_PATH', '%{staged_prefix}/lib/mono/4.0')
-        self.debug_info = ['gtk+', 'cairo',
+        self.debug_info = ['gtk+', 'cairo', 'glib',
                            'pango', 'mono', 'llvm', 'libgdiplus']
         self.cache_host = None
 
@@ -396,4 +396,4 @@ class MonoReleaseProfile(DarwinProfile):
 
         subprocess.call(['bash', '-c', path])
 
-MonoReleaseProfile()
\ No newline at end of file
+MonoReleaseProfile()
index 8f127d7c414caa748fc8ed8349ce65d253645230..5d23ed09d2c7b4e5d8be99dcc111471d9a0d3ff4 100644 (file)
@@ -6,7 +6,7 @@ class MonoExtensionsPackage(Package):
     def __init__(self):
         Package.__init__(self, 'mono-extensions', None,
                          sources=['git@github.com:xamarin/mono-extensions.git'],
-                         revision='07ad37d63e0e9dcf7c879a72bc14c5d6c794f7b6'
+                         revision='3cc5e2e1870b35f15b1540f835a370d2b011bacd'
                          )
         self.source_dir_name = 'mono-extensions'
 
index f600c3ace39acb3db11090fee9c33d3e3de325c8..6fdb428d7dd4b000bf49e05c09c28d3b2a54cfae 100755 (executable)
@@ -3,10 +3,11 @@
 # This script is meant to be executed on all "slave" machines that run coverage collection.
 
 COV_DIR=coverage
-COV_INFO="$COV_DIR/$JOB_NAME.info"
+COV_NAME="$(echo $JOB_NAME | sed 's#/#-#g').info"
+COV_INFO="$COV_DIR/$COV_NAME"
 
 # Build Mono and collect coverage on the test suite.
-CI_TAGS=collect-coverage,monolite scripts/ci/run-jenkins.sh
+CI_TAGS="collect-coverage,monolite,$CI_TAGS" scripts/ci/run-jenkins.sh
 
 # Place the coverage info file into the coverage directory.
 # Multiple such files can be assembled to create a unified coverage report that spans multiple architectures and operating systems.
@@ -14,7 +15,7 @@ mkdir "$COV_DIR"
 scripts/ci/run-step.sh --label=coverage-lcov --timeout=20m lcov --no-external -c -d mono -d support -d tools -o "$COV_INFO"
 
 # Generate HTML coverage report in the lcov directory at the root of the project.
-scripts/ci/run-step.sh --label=coverage-genhtml --timeout=20m genhtml "$COV_INFO" -o lcov
+scripts/ci/run-step.sh --label=coverage-genhtml --timeout=20m genhtml -f -s "$COV_INFO" -o lcov
 
 # Make the paths relative so that they could be assembled from different Jenkins workspaces.
 sed -Eie "s#^SF:$WORKSPACE/?#SF:#" "$COV_INFO"
index bdecfae3efb974b15ed2b08a787f2b04716aa4ab..ca0cca115eb2ac8fd889b4583b32d02727074133 100755 (executable)
@@ -10,23 +10,25 @@ make_timeout=300m
 if [[ $CI_TAGS == *'collect-coverage'* ]]; then
     # Collect coverage for further use by lcov and similar tools.
     # Coverage must be collected with -O0 and debug information.
-    export CFLAGS="-ggdb3 --coverage -O0"
-    # Collect coverage on all optimizations
-    export MONO_ENV_OPTIONS="$MONO_ENV_OPTIONS -O=all"
-elif [[ ${CI_TAGS} == *'clang-sanitizer'* ]]; then
+    export CFLAGS="$CFLAGS -ggdb3 --coverage -O0"
+fi
+
+if [[ ${CI_TAGS} == *'clang-sanitizer'* ]]; then
        export CC="clang"
        export CXX="clang++"
-       export CFLAGS="-g -O1 -fsanitize=thread -fsanitize-blacklist=${MONO_REPO_ROOT}/scripts/ci/clang-thread-sanitizer-blacklist -mllvm -tsan-instrument-atomics=false"
+       export CFLAGS="$CFLAGS -g -O1 -fsanitize=thread -fsanitize-blacklist=${MONO_REPO_ROOT}/scripts/ci/clang-thread-sanitizer-blacklist -mllvm -tsan-instrument-atomics=false"
        export LDFLAGS="-fsanitize=thread"
        # TSAN_OPTIONS are used by programs that were compiled with Clang's ThreadSanitizer
        # see https://github.com/google/sanitizers/wiki/ThreadSanitizerFlags for more details
        export TSAN_OPTIONS="history_size=7:exitcode=0:force_seq_cst_atomics=1"
        make_timeout=30m
-elif [[ ${label} == w* ]]; then
+fi
+
+if [[ ${label} == w* ]]; then
     # Passing -ggdb3 on Cygwin breaks linking against libmonosgen-x.y.dll
-    export CFLAGS="-g -O2"
+    export CFLAGS="$CFLAGS -g -O2"
 else
-    export CFLAGS="-ggdb3 -O2"
+    export CFLAGS="$CFLAGS -ggdb3 -O2"
 fi
 
 if [[ $CI_TAGS == *'retry-flaky-tests'* ]]; then
@@ -108,6 +110,8 @@ ${TESTCMD} --label=make --timeout=${make_timeout} --fatal make ${make_parallelis
 if [[ ${CI_TAGS} == *'checked-coop'* ]]; then export MONO_CHECK_MODE=gc,thread; fi
 if [[ ${CI_TAGS} == *'checked-all'* ]]; then export MONO_CHECK_MODE=all; fi
 
+export MONO_ENV_OPTIONS="$MONO_ENV_OPTIONS $MONO_TEST_ENV_OPTIONS"
+
 if [[ ${CI_TAGS} == *'acceptance-tests'* ]];
     then
        $(dirname "${BASH_SOURCE[0]}")/run-test-acceptance-tests.sh
index 900a58f8104d724335b33e5cbdebb0490a64c79b..1fd324e399f1a2b684b81ab99425096f9f3b181c 100644 (file)
@@ -22,8 +22,8 @@
 #include <corecrt_io.h>
 #endif
 
+#include "mph.h" /* Don't remove or move after map.h! Works around issues with Android SDK unified headers */
 #include "map.h"
-#include "mph.h"
 
 G_BEGIN_DECLS
 
index b8a16a8b4bfb77384f2f9e38c75790ada32a9e22..2fc2284d63e8663df356a6da0826edb9e6063e0c 100644 (file)
 #ifndef _COMPLEX_H
 #define        _COMPLEX_H
 
+#include <config.h>
 #include <sys/cdefs.h>
 
+#if HOST_ANDROID && !defined(__pure2)
+/* NDK unified headers don't define __pure2 */
+#define __pure2 __attribute__((__const__))
+#endif
+
 #ifdef __GNUC__
 #if __STDC_VERSION__ < 199901
 #define        _Complex        __complex__
index b33cf60271a90b8a34c6e2893181d356379b0684..ddb615e15cdefe0ec8aab74cbbc89b8b74411d28 100644 (file)
 #define        _MATH_PRIVATE_H_
 
 #include <sys/types.h>
+
+#if HAVE_MACHINE_ENDIAN_H
 #include <machine/endian.h>
+#elif HAVE_SYS_ENDIAN_H && HOST_ANDROID
+/* Android unified headers don't have machine/endian.h */
+#include <sys/endian.h>
+#endif
 
 /*
  * The original fdlibm code used statements like:
index 8d455889d7ca4c30ea10c8a6e7c2471afcec7179..e15fa76b7edb0a35774956c4e1070f10e366fd35 100644 (file)
@@ -9,6 +9,7 @@
 #include <dirent.h>
 #include <string.h>
 #include <glib.h>
+#include "mph.h" /* Don't remove or move after map.h! Works around issues with Android SDK unified headers */
 #include "map.h"
 
 int wifexited (int status)
index e5992e5e71f03357080123ffb7a460016db8c488..2fbae6a27cddd04bcbc592ac70a1a501256ce27e 100644 (file)
 #include <errno.h>              /* for ERANGE */
 #include <glib.h>               /* for g* types, etc. */
 
+#ifdef HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
+
 #ifdef HAVE_STDINT_H
 #include <stdint.h>             /* for SIZE_MAX */
 #endif
 
+#ifdef ANDROID_UNIFIED_HEADERS
+#ifdef HAVE_STDIO_H
+#include <stdio.h>
+#endif
+
+#undef st_atime_nsec
+#undef st_mtime_nsec
+#undef st_ctime_nsec
+
+#ifndef L_cuserid
+#define L_cuserid       9       /* size for cuserid(); UT_NAMESIZE + 1 */
+#endif
+
+/* NDK unified headers will define fpos_t to be 64-bit if large files support is
+ * enabled (which is the case with Mono) so we need to make sure the offsets here
+ * are actually 32-bit for Android APIs before API24 which did NOT have the 64-bit
+ * versions.
+ */
+#if !defined(fgetpos) && __ANDROID_API__ < 24
+int fgetpos(FILE*, fpos_t*);
+#endif
+
+#if !defined(fsetpos) && __ANDROID_API__ < 24
+int fsetpos(FILE*, const fpos_t*);
+#endif
+
+#ifdef HAVE_PWD_H
+#include <pwd.h>
+#endif
+/* Unified headers define 'pw_gecos' to be an alias for 'pw_passwd` on 32-bit Android which
+ * results in two fields named 'pw_passwd' in map.h's 'struct passwd'
+ */
+#if !defined(__LP64__) && defined(pw_gecos)
+#undef pw_gecos
+#undef HAVE_STRUCT_PASSWD_PW_GECOS
+#endif
+
+#endif
+
 #if __APPLE__ || __BSD__ || __FreeBSD__ || __OpenBSD__
 #define MPH_ON_BSD
 #endif
index 6e3b68a208e9bc2340facb98262023033f9a2527..0e73af22bf9dac7825528da3a77a4f7e34ae4746 100644 (file)
@@ -13,8 +13,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 
+#include "mph.h" /* Don't remove or move after map.h! Works around issues with Android SDK unified headers */
 #include "map.h"
-#include "mph.h"
 
 G_BEGIN_DECLS
 
index 143148f8ca3c0e345657eb62bd406252a157f935..ad74ef2ad02f4ec8e35e55ae0ed8a86ae1860e98 100644 (file)
@@ -31,6 +31,7 @@
 #include <sys/mman.h>
 #include <errno.h>
 
+#include "mono/utils/mono-compiler.h"
 #include "map.h"
 #include "mph.h"
 
index 7b6797acb04160a9b17fdc038389dfaece9dae5a..794341b58999b7bb363e97daa99633d53675b661 100644 (file)
@@ -12,6 +12,7 @@
 #include <sys/types.h>
 #include <errno.h>
 
+#include "mono/utils/mono-compiler.h"
 #include "map.h"
 #include "mph.h"
 
index 075563b0cf4d87681cce80a5126290ede1b8a97f..d6abce4a1facdfafdad71bd2f6022d217bfc8db0 100644 (file)
@@ -19,8 +19,8 @@
 #include <fcntl.h>
 #include <errno.h>
 
+#include "mph.h" /* Don't remove or move after map.h! Works around issues with Android SDK unified headers */
 #include "map.h"
-#include "mph.h"
 
 G_BEGIN_DECLS
 
index e03152a773d95d4f12fe1fc7ad78b240b1cb8f60..128baaa03b34c76cfc22dfdd02f732ad8bcb55d9 100644 (file)
@@ -33,6 +33,8 @@
 #include <unistd.h>     /* for pathconf */
 #endif /* def HAVE_GETFSSTAT */
 
+#include "mono/utils/mono-compiler.h"
+
 G_BEGIN_DECLS
 
 #ifdef HAVE_SYS_STATVFS_H
@@ -129,9 +131,11 @@ Mono_Posix_Syscall_fstatvfs (gint32 fd, struct Mono_Posix_Statvfs *buf)
  * BSD-compatible definitions.
  *
  * Linux also provides these, but are deprecated in favor of (f)statvfs.
+ * Android NDK unified headers define HAVE_FSTATFS but also HAVE_SYS_STATVFS_H
+ * which makes these duplicates of the functions defined above
  */
 
-#if (defined (HAVE_STATFS) || defined (HAVE_FSTATFS)) && !defined (HAVE_STATVFS)
+#if (defined (HAVE_STATFS) || defined (HAVE_FSTATFS)) && !defined (HAVE_STATVFS) && !defined(ANDROID_UNIFIED_HEADERS)
 int
 Mono_Posix_ToStatvfs (void *_from, struct Mono_Posix_Statvfs *to)
 {
@@ -197,7 +201,7 @@ set_fnamemax (int fd, struct Mono_Posix_Statvfs *buf)
 }
 #endif /* (def HAVE_STATFS || def HAVE_FSTATFS) && !def HAVE_STATVFS */
 
-#if !defined (HAVE_STATVFS) && defined (HAVE_STATFS)
+#if !defined (HAVE_STATVFS) && defined (HAVE_STATFS) && (!defined(ANDROID_UNIFIED_HEADERS) || __ANDROID_API__ >= 19)
 gint32
 Mono_Posix_Syscall_statvfs (const char *path, struct Mono_Posix_Statvfs *buf)
 {
@@ -218,7 +222,7 @@ Mono_Posix_Syscall_statvfs (const char *path, struct Mono_Posix_Statvfs *buf)
 }
 #endif /* !def HAVE_STATVFS && def HAVE_STATFS */
 
-#if !defined (HAVE_STATVFS) && defined (HAVE_STATFS)
+#if !defined (HAVE_STATVFS) && defined (HAVE_STATFS) && (!defined(ANDROID_UNIFIED_HEADERS) || __ANDROID_API__ >= 19)
 gint32
 Mono_Posix_Syscall_fstatvfs (gint32 fd, struct Mono_Posix_Statvfs *buf)
 {
index 0f560e28d00afcb0eaefd31c415b2ca018bdfc29..145de5192eb07e34b7893c457b926ee8508b1383 100644 (file)
@@ -21,8 +21,8 @@
 #include <limits.h>
 #include <string.h>     /* for swab(3) on Mac OS X */
 
+#include "mph.h" /* Don't remove or move after map.h! Works around issues with Android SDK unified headers */
 #include "map.h"
-#include "mph.h"
 
 G_BEGIN_DECLS